On Wed, 29 Apr 2015 21:38:41 +0000 "Andy Falanga (afalanga)" <afalanga@xxxxxxxxxx> wrote: > 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 Think Jeff is mostly off doing wonderous things with Bitcoin. > 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. Then you probably need to make the existing kernel drivers skip whatever specific device you are driving directly (I assume for things like validation ?) > 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 ata_generic is a bus mastering driver for PCI IDE class devices. In your case its been loaded for some reason but is not being used pata_acpi is a driver for ACPI described generic interfaces, and again is not being used ata_piix is a driver specifically for Intel PIIX/ICH interfaces in legacy mode and does seem to be getting used, so presumably your virtual machine has at least one legacy mode PIIX or ICH emulated on it ahci is a driver for controllers that are AHCI class, or match a few identifiers for AHCI controllers not declaring themselves AHCI class (eg those that try and hide from Windows AHCI drivers so proprietary raid products can be used with them on Windows) So I think you'd need to a) modify ahci to ignore your specific device in its probe method b) write a simple driver so you can poke the ports and do any needed DMA Alan -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html