This patch series is primarily ACPI objects support for SATA/PATA.
It applies to 2.6.16-rc4.
ACPI objects for SATA/PATA add support for the _GTF, _SDD,
_GTM, and _STM ACPI methods. ACPI methods are used to:
PATA: get and set channel timings and modes and taskfiles
SATA: get and set drive data and taskfiles
Taskfile operations are not limited. Examples that I have
seen are (not limited to):
- power management:
. enable or disable drive-initiated power management
- performance:
. enable drive cache; set transfer mode (PIO/DMA)
- security
. lock the disk access password
There is also an addition here to send a Standby Immediate
command to SATA/PATA drives during shutdown. This should be
done (at least for some drives) to cause a safe and orderly
shutdown of the drive heads (i.e., protect data).
Caveat: Some people are reporting good results from these
patches. Unfortunately I have problems with them myself.
My test platforms usually suspend successfully but they
don't resume successfully. Oh, and there may be a BUG
during sleep-shutdown processing where a sleep happens
while a spinlock is held.
These patches definitely need some time in -mm, but be
prepared to revert them or to use
libata.noacpi=1
to disable them. Also, please use
libata.printk=0xff
to enable full debug messages.
If you want to test this without using -mm, you can either
apply the patch series (13 patches) or one rolled-up
(combined) patch. The combined patch is available at:
http://www.xenotime.net/linux/SATA/2.6.16-rc4/libata-rollup-2616-rc4.patch
Still TBD: more calls to ata_acpi_push_timing(), e.g.,
during resume, to set PATA hard drive timing and mode.
And fix the BUG above.
---
~Randy
Randy Dunlap <[email protected]> wrote:
>
> This patch series is primarily ACPI objects support for SATA/PATA.
> It applies to 2.6.16-rc4.
I tried to get these on top of Jeff's current devel tree but gave up at
ata-acpi-pata-methods when things got really sticky.
So you're rather between a rock and a hard place here. Perhaps it would be
better for you to continue development on top of Jeff's devel tree, and to
distribute a copy of git-libata-all.patch along with your patches to your
testers.
Of course, that puts them on the bleeding edge when all they want to do is
to get their power management working, so that's not really suitable
either.
On Wed, 22 Feb 2006, Andrew Morton wrote:
> Randy Dunlap <[email protected]> wrote:
> >
> > This patch series is primarily ACPI objects support for SATA/PATA.
> > It applies to 2.6.16-rc4.
>
> I tried to get these on top of Jeff's current devel tree but gave up at
> ata-acpi-pata-methods when things got really sticky.
>
> So you're rather between a rock and a hard place here. Perhaps it would be
> better for you to continue development on top of Jeff's devel tree, and to
> distribute a copy of git-libata-all.patch along with your patches to your
> testers.
>
> Of course, that puts them on the bleeding edge when all they want to do is
> to get their power management working, so that's not really suitable
> either.
OK, I'll think about how to attack that...
Thanks for the info. I didn't think about you using git-libata*.
My bad.
--
~Randy