Tejun Heo wrote:
Mark Lord wrote:
Mark Lord wrote:
Tejun Heo wrote:
The following things are needed for a LLD to support PMP.
..
I think that's about it. Feel free to ask if something isn't clear.
..
I think we need better semantics around sata_scr_{read,write}(),
or more specifically
These need to be moved into ata_port_operations
so that LLDs can wrap them to properly manage
the host controller's global link->pmp value.
..
Heck, if .dev_select() took a *device* instead of a *port*
as it's parameter, then I could probably manage it fine in there.
Heh... I never thought a PMP aware controller would use TF SRST, so what
you want to do is set pmp value in the register and calling
ata_std_softreset(), right? I think the correct thing to do is to
separate out SRST sequence proper from ata_std_softreset() into, say,
ata_sff_SRST() and build custom softreset around it. After all, the
problem here is the reset sequence not the SCR access.
..
Actually, I believe the problem *is* the (pmp) SCR access.
The same issue will return again when trying to support hotplug, for example.
Any SCR access will steal the active pmp on such hosts.
I think we really do need to snoop those, somehow.
Cheers
-
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