Mark Lord wrote:
The MV specific part is retry-if-offline w/ lower link speed, right?
You can do that just as well by looping outside of
sata_link_hardreset().
..
Yes, the code already has a loop "outside of sata_link_hardreset()"
for the speed errata handling. So nothing new there.
And the rest of that routine is a line-by-line clone of
ata_std_hardreset().
This is smaller than what other drivers have cloned for these routines,
and a lot better than the old code from sata_mv that it replaces.
The comment in my patch above is just a reminder that someday we could
go back in and address those things. In *all* LLDs, not just sata_mv.
I guess I'd better stop adding such comments in the future.. :)
Still think it needs any changes ?
The modularize patchset is not in libata-dev#upstream yet. Please take
a look at the following.
http://git.kernel.org/?p=linux/kernel/git/tj/libata-dev.git;a=blob;f=drivers/ata/libata-core.c;h=7646523899c0bac8b06d2d0bfcde428e4583e04d;hb=731e61759c56d564322d56b9ff6f393fda1fbec4#l3533
I meant that you wouldn't need to copy the post-reset stuff and just
could loop around new sata_link_hardreset() after the patchset. I
thought about breaking sata_link_hardreset() into two such that the
post-reset part can be used separately but couldn't find any in-tree
driver which would need such function.
--
tejun
--
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