|| ||Tejun Heo <firstname.lastname@example.org>|
|| ||email@example.com, firstname.lastname@example.org, email@example.com|
|| ||[PATCHSET] libata: new reset mechanism, take#2|
|| ||Tue, 24 Jan 2006 17:05:21 +0900|
This is the second take of new reset mechanism patchset and against
upstream-2.6.17 + eh-misc-updates patchset + three ahci update patches
I've sent yesterday.
The goals of new reset mechanism are.
* Do not allow individual reset methods manipulate libata internal
data structures (e.g. disable port) to give more control to higher
driving logic (e.g. to allow retries).
* Goes hand-in-hand with above. Make low level operations easily
shareable with other uses (probe and EH).
* Minimize code duplications but yet allow flexibility if needed.
Major difference from the first take is that core layer doesn't
directly drive resets anymore. It just calls ->probe_reset and the
rest is upto the low level driver. However, as reset driving logic is
identical for most drivers, helper routines are supplied such that low
level drivers only have to implement supported reset operations.
Jeff, I think the above change hopefully resolves your concern about
fixed driving logic. The other issue was regarding how reset itself
should be performed - resets are event-driven in nature and should be
implemented accordingly as a qc protocol. I still disagree and don't
really see how it can be done. My rationales are in the following two
messages. Can you please share your thoughts in deeper detail?
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to firstname.lastname@example.org
More majordomo info at http://vger.kernel.org/majordomo-info.html