Jeff, I don't know if you're still the maintainer of these drivers but you're listed as the original author of the code in the 2.6 kernel which I'm working on modifying. I have to write a driver which I can expose access to the various HBA and Port registers for an AHCI class HBA. In addition, this driver must act as a pass through driver for my clients to be able to execute ATA commands. I'd like for it to be a true pass through driver and not have to run through the kernel's schedules and such, but that's another discussion. My question for you is simply, how are these various drivers supposed to work together? On the VM which I'm doing my development, I see the following from lsmod: # lsmod ... ahci 41208 2 pata_acpi 3701 0 ata_generic 3837 0 ata_piix 24409 1 ... This at least shows me that none of these modules depend upon one another for functionality. However, to some level, they must be interrelated. Thanks for any light you can shed on this for me. Andy ��.n��������+%������w��{.n�����{��'^�)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥