Alan Cox wrote:
I wouldn't rule out the possibility of a bug. The code in pata_via looks
a bit fishy, it reports a 40-wire cable if either the GTM data wasn't
present or valid, or if it reports a mode of UDMA2 or less. In the
former case it seems like ATA_CABLE_PATA_UNK would be the safer choice
since we really don't know, and we should then use drive-side detection,
rather than assuming a 40-wire cable by default..
Drive side detection doesn't work for many VIA boards, the neccessary
components are not included.
Ugh, seems they messed this stuff up as bad as NVIDIA did..
About the only other check I can think to try is to see if the BIOS
programmed modes > UDMA2 for either device. That has its own problems
(suspend-resume/hotplug/non-bios devices) which is why we currently don't
do it.
Well, that's pretty much the same thing that GTM does (it generally just
reads the configured mode out of the controller registers). So it really
wouldn't be much worse than what we're doing now.
Thing is somehow the GTM detection isn't working now and it apparently
was in 2.6.27.1. I'm not seeing any patches to pata_via or libata-acpi
that seem like they would affect this offhand. Grozdan, would you be
able to try git bisect to try to figure out what changed the behavior?
CCing Tejun in case he has any ideas..
--
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