Mark Lord wrote:
I tried merging Linus's one-liner in front of alt4_v2,
and the screen came back right away (instead of stalling 30seconds),
and then the alt4_v2 code killed the interface as before. :)
Jeff Garzik wrote:
Here's alt4 v3. Having the host_stat == 0x1 was suspicious.
After digging through the hardware manual, it might be a good idea to
configure BMDMA registers properly, in case that was done by BIOS but
not by D3->D0 silicon reset values.
I'll try that. But does it make sense that Linus's one-liner
would also work, if this was really the problem? (dunno, just asking)
<shrug> ata_piix is probably going through its emulated-PATA sequence,
so I was just trying different things.
One core problem with all of libata suspend/resume is that
* we boot from a configuration set up by BIOS
* but going D3->D0, we simply get silicon defaults
Randy Dunlap's ACPI patches will probably help a bit.
The ACPI patches have indeed been working here for over a year now,
on all kernels up to 2.6.15 --> not needed for 2.6.16.
Long term they are definitely needed, if only for the case where a drive
password has been set in BIOS. Otherwise when you resume, you won't be
able to talk to your disk. Additionally the preferences (such drive
acoustic settings) aren't reprogrammed, but that is of lesser importance.
On laptops, the ACPI tables sometimes also hold special vendor-specific
taskfiles to work around device-specific or drive-firmware-specific
problems.
Jeff
-
: 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