Tejun Heo wrote:
Mark Lord wrote:
Heh. Okay, apparently it now needs a .pmp_hardreset function,
which was never there before. So I've now added one that does this:
Ah... right. That's something changed while changing libata EH to favor
hardreset over softreset. With the change, resuming link on PMP fan out
ports became hardreset's responsibility, which BTW is necessary anyway
for certain PMPs (marvell ones). So, one way or another, you need
pmp_hardreset.
mv_pmp_select(link->ap, sata_srst_pmp(link));
return sata_std_hardreset(link, class, deadline);
And it seems to be working now with that function supplied, at least
for port-0.
Anything else new that it should have? I'll scan through libata-pmp.c
and see.
The hardreset thing was the only behavior change if I didn't screw up.
It wasn't supposed to cause any actual behavior change tho as all PMP
supporting PMPs are supposed to have SCR access on fan-out ports and
thus the capability to hardreset them.
Time to clean out the debug cruft and test a few things a bit more.
Great. :-)
..
Yeah, I'm happy now. :)
It seems very rock solid, actually, at least on the one PM I have that works.
The Fed-Ex guy is due tomorrow with a fresh Marvell PM for me,
but I might send some stuff out for #upstream in the interim.
Still gotta reboot/retest with a 60x1 chipset first, though.
--
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