Thread (37 messages) 37 messages, 7 authors, 2008-02-26

Re: What's needed for PMP support?

From: Mark Lord <hidden>
Date: 2008-02-22 02:04:46

Tejun Heo wrote:
Mark Lord wrote:
quoted
Mark Lord wrote:
quoted
Tejun Heo wrote:
quoted
quoted
The following things are needed for a LLD to support PMP.
..
quoted
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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help