I'm trying to get port multiplier working on Marvell 6121 esata port.--
So far, I've found lkml discussion on how AHCI doesn't seem to support it [1] and verified that it's still the case.
sata_mv doesn't support it either - I only see the 1st drive in the multiplier
There used to be an official Asus driver called mv_thor [2] for really old versions (2.6.20-something) and someone maintained it until 2.6.27 [3].
The good news is I tried it on 2.6.27 (Fedora 10) and it works!
Questions:
Can someone who knows how the AHCI driver works take a look at the mv_thor code and figure out why PMP doesn't work in AHCI driver? Most likely it's just some quirk to get the chip initialized...
And since the answer to the previous is most likely "we're too busy, look at it yourself" the followup question is
Is there an easy way of recompiling/trying the AHCI module without having to recompile the entire kernel/rebooting?
Thanks!
[1] http://marc.info/?t=121747549500001&r=1&w=1
[2] http://en.wikipedia.org/wiki/List_of_Marvell_Technology_Group_chipsets#Linux_SATA_driver
[3] http://forums.gentoo.org/viewtopic-p-5213724.html#5213724