Hi, Quick synopsis of the background, I have need to communicate with drives which won't get the standard handles: e.g. /dev/sdN. This is mainly due to wiped FW, etc. I need to be able to issue the ATA Download command. In order to accomplish this, I've modified the standard ahci driver to allow me access to AHCI ports with an Upper Layer driver I've written. The idea is to pass ATA commands directly to the lower layer driver without marching through the kernel. I've tested this with a VM using and ICH8 AHCI controller and a real system with a Z87 chipset and in both cases I can execute the Download command (and Identify or whatever). However, I've got a Xeon mobo (model x8dtl-i with an Intel ICH10R) which, for some reason, doesn't execute the commands correctly. This is configured for AHCI mode and not RAID. I'm following the AHCI spec, 1.3.1, for propagating command information into the Command Table List and Command Header. As mentioned, this code works both in a VM with and ICH8 controller and a Z87 MoBo. However, on this Xeon system something isn't being communicated to the HBA correctly. For example, when I issue an Identify to a working drive, the protocol analyzer shows that the HBA and the drive move 212 bytes of data. What would account for this? Incidentally, using hdparm to execute an Identify on a working drive to the sg handle, does work. Any pointers or ideas are welcome. Andy��.n��������+%������w��{.n�����{��'^�)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥