Bug 34832
Summary: | Marvell 88SE9120 IDE-Part not working | ||
---|---|---|---|
Product: | IO/Storage | Reporter: | teddy19 (teddy19.teddy) |
Component: | Serial ATA | Assignee: | Jeff Garzik (jgarzik) |
Status: | RESOLVED PATCH_ALREADY_AVAILABLE | ||
Severity: | normal | CC: | akpm, cheer6, israel.lugo, richy.od.ua |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 2.6.38-9.43 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: |
Patches pata_marvell.c
Patches pata_marvell.c Version2 |
Description
teddy19
2011-05-10 15:23:23 UTC
I am experiencing the same thing on my Gentoo system, using kernel 2.6.37. Same motherboard. I'll sum up here what I posted in the linked Ubuntu bug, for convenience: The 88SE9120 is being driven by the ahci driver, but this doesn't know how to access the PATA port. The pata_marvell driver would seem to be the logical choice, and ahci is supposed to refuse itself when it detects a Marvell device (cf. http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.38.y.git;a=commit;h=5b66c829bf5c65663b2f68ee6b42f6e834cd39cd ). However: 1) The ahci driver is looking for PCI_VENDOR_ID_MARVELL (0x11ab), but the 88SE9120 identifies itself with a vendor ID of 0x1b4b instead. 2) The pata_marvell driver seems to only be able to handle 88SE61xx controllers. Looking at the comments in the code, there seem to be some operations which are only known to work in specific models and I'm not sure whether it would handle the 88SE9120 correctly. I believe the fix would be to either teach the ahci driver to drive the PATA port, or to add the new 0x1b4b vendor ID to its blacklist and test/improve the pata_marvell driver? I'm not sure if that means that the 88SE9120's SATA ports will be driven in legacy IDE mode, though, which would definitely be suboptimal. Just noticed this bug is marked as a regression... Was that for a particular reason? (i.e., did an older kernel work for you?) I don't believe it to be a regression, more like unsupported hardware. (In reply to comment #2) > Just noticed this bug is marked as a regression... Was that for a particular > reason? (i.e., did an older kernel work for you?) I don't believe it to be a > regression, more like unsupported hardware. Sorry, thats wrong... Can I change it somehow to "no"?! There's no edit-button. Created attachment 60962 [details]
Patches pata_marvell.c
This isn't really the most optimal solution... The patch just hacks pata_marvell to claim it can handle this particular controller. It would be nice to improve the driver; looking at its comments there seem to be a few gray areas where things are more or less "it looks like this works, most of the time". The same story for me with 2.6.39 kernel on Archlinux. Same motherboard. BTW, why is it assigned to Jeff? I found an old issue with pata_marvell here: https://bugzilla.kernel.org/show_bug.cgi?id=10425 and it was assigned to Alan. teddy19, does this patch work for you? Created attachment 64782 [details]
Patches pata_marvell.c Version2
Hey, it works fine for me and all the others on launchpad: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/777325 The diff-mechanism did not work at first but it is now... Just Patch your /drivers/ata/pata_marvell.c The patch will be included in the 3.0 Kernel: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f920fe1cb74191a780d88937f36994231a8faba1 |