Jeff Garzik wrote:
Tejun Heo wrote:
Jeff Garzik wrote:
Tejun Heo wrote:
tested. I implemented AHCI PM support half-way but then realized I
don't have any AHCI controller which supports PM (I have ICH7R). Is
there any AHCI controller which reports PM support?
You can always use SCR-based PM support...
Can you elaborate a bit?
Sections A.1 and 6.1 of the PM spec. You set the PMP field of the
SControl register. This has obvious parallelism limitations, which is
why "hardware context switching support" aka native PM support is
greatly preferred.
That cmd-switching PM support is what AHCI SPM bit indicates. As of
v1.1, AHCI doesn't define FIS-switching PM support yet.
Supports Port Multiplier (SPM): Indicates whether the HBA can support a
Port Multiplier. When set, a Port Multiplier using command-based
switching is supported. When cleared to ‘0’, a Port Multiplier is not
supported, and a Port Multiplier may not be attached to this HBA.
And. the SControl section says...
19:16 RO 0h Port Multiplier Port (PMP): This field is not used by AHCI.
Which is understandable considering AHCI doesn't construct FISes itself.
I don't think PM requires more hardware support than being capable for
setting PMP in the FISes, which AHCI certainly can (standing down on
collision for SDB notify aside). I can give it a shot but it clearly
violates the spec, and even if it works, we would need to print big fat
warning message while attaching PM.
--
tejun
-
: 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