Hi Feng,
I am looking into edk2/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AhciMode.c
line 2190:
---------
MaxPortNumber = (UINT8) ((Capability & 0x1F) + 1);
---------
I got MaxPortNumber =4
and lines 2205-06
----------------
for (Port = 0; Port < MaxPortNumber; Port ++) {
if ((PortImplementBitMap & (BIT0 << Port)) != 0) {
----------------
So these calculations will be for ports 0,1,2,3
But from datasheet "IntelĀ® 6 Series Chipset and IntelĀ® C200 Series Chipset"
as well as from real hardware I see ports 0,1,4,5
------
8. SATA ports 2 and 3 are disabled.
------
pages 51 and 594.
It means that in my case ports 4,5 will be ignored.
So my proposition is to change AhciMode.c line2190 as
MaxPortNumber = 6;
Because real port number determined by PortImplementBitMap.
Sergey.
------------------------------------------------------------------------------
LogMeIn Central: Instant, anywhere, Remote PC access and management.
Stay in control, update software, and manage PCs from one command center
Diagnose problems and improve visibility into emerging IT issues
Automate, monitor and manage. Do more in less time with Central
http://p.sf.net/sfu/logmein12331_d2d
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel