Re: [PATCH] libata: fix broken Kconfig setup

Jeff Garzik
2005-10-17T17:16:53Z

Jesse Barnes wrote:
> So sometimes the legacy IDE driver will lock up when it tries to drive
> both ports in a combined configuration? In that case, can't we just

-sometimes- When it tries to drive the SATA port, it locks up. My best
guess is that this is due to the fact that SATA emulates IDE shadow
registers in silicon, and the IDE driver does something weird that
confused the silicon's IDE emulation logic.

Under SATA, the IDE shadow registers are nothing but a buffer. Writing
to the Command or Control registers causes this buffer to be batched
into a SATA frame (a "FIS"), and sent to the device.

> disable the legacy IDE driver for these chips and force the use of the
> libata version?

More than a little ugly: The piix driver already excludes the SATA
device (unless CONFIG_BLK_DEV_IDE_SATA is defined), so the driver that
picks up the IDE is the non-PCI "generic IDE" legacy driver.

You would need to add code somewhere in a non-PCI driver to specifically
exclude a few PCI devices.

Removing the quirk means users/distros would simply have to know to
disable CONFIG_IDE completely. Doable, but also guaranteed to generate
bug reports.

Jeff