[Natty] Marvell 88SE9120 IDE-Port not working

Bug #777325 reported by pmelix on 2011-05-04
56
This bug affects 7 people
Affects Status Importance Assigned to Milestone
Linux
Fix Released
Medium
linux (Ubuntu)
Wishlist
Unassigned
Natty
Medium
Leann Ogasawara

Bug Description

== Natty SRU Justification ==
Impact: Enable support for Marvell IDE PATA controllers found on Asus P8P67LE motherboard.

Fix: Upstream commit f920fe1cb74191a780d88937f36994231a8faba1

Testcase: Boot kernel without the patch, confirm controller is unsupported. Boot kernel with patch, confirm controller is supported.

==========

Tested with following Kernels:
2.6.38-9.43 - (Mainline)
2.6.38-02063804
2.6.38-8.42
2.6.35-28.50 (maverick)
Daily-Mainline-Kernel will not boot, so no information on that.

The SATA-Ports on the Chip are working fine (tested with HDD), CDROM-Devices (2) on the IDE-Part are not working but recognised in the UEFI-Setup and one can boot from them.
Found some Information here: "http://comments.gmane.org/gmane.linux.kernel/1068354" but did not succeed in changing values and recompiling.

ProblemType: Bug
DistroRelease: Ubuntu 11.04
Package: linux-image-2.6.38-9-generic 2.6.38-9.43
ProcVersionSignature: Ubuntu 2.6.38-9.43-generic 2.6.38.4
Uname: Linux 2.6.38-9-generic x86_64
NonfreeKernelModules: nvidia
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.23.
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: patrickm 1664 F.... pulseaudio
CRDA: Error: command ['iw', 'reg', 'get'] failed with exit code 1: nl80211 not found.
Card0.Amixer.info:
 Card hw:0 'PCH'/'HDA Intel PCH at 0xfb400000 irq 55'
   Mixer name : 'Realtek ALC892'
   Components : 'HDA:10ec0892,1043841b,00100302'
   Controls : 32
   Simple ctrls : 18
Card1.Amixer.info:
 Card hw:1 'CNF7166'/'Chicony Electronics Co., Ltd. CNF7166 at usb-0000:00:1d.0-1.2.2, high speed'
   Mixer name : 'USB Mixer'
   Components : 'USB04f2:b10a'
   Controls : 2
   Simple ctrls : 1
CurrentDmesg:
 [ 77.409999] vboxdrv: fAsync=0 offMin=0x162 offMax=0xce4
 [ 77.410202] vboxdrv: TSC mode is 'synchronous', kernel timer mode is 'normal'.
 [ 77.410204] vboxdrv: Successfully loaded version 4.0.6 (interface 0x00180000).
 [ 83.875234] eth0: no IPv6 routers present
Date: Wed May 4 20:22:36 2011
HibernationDevice: RESUME=UUID=ba2c1de0-2792-45f2-9860-56003dd17739
IwConfig:
 lo no wireless extensions.

 eth0 no wireless extensions.

 vboxnet0 no wireless extensions.
MachineType: System manufacturer System Product Name
ProcEnviron:
 LANGUAGE=de_DE:en
 LANG=de_DE.UTF-8
 SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-2.6.38-9-generic root=/dev/mapper/ubuntu-root ro noplymouth video=uvesafb:mode_option=1200x1024
RelatedPackageVersions:
 linux-restricted-modules-2.6.38-9-generic N/A
 linux-backports-modules-2.6.38-9-generic N/A
 linux-firmware 1.52
RfKill:

SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 02/11/2011
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 1003
dmi.board.asset.tag: To be filled by O.E.M.
dmi.board.name: P8P67 LE
dmi.board.vendor: ASUSTeK Computer INC.
dmi.board.version: Rev X.0X
dmi.chassis.asset.tag: Asset-1234567890
dmi.chassis.type: 3
dmi.chassis.vendor: Chassis Manufacture
dmi.chassis.version: Chassis Version
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr1003:bd02/11/2011:svnSystemmanufacturer:pnSystemProductName:pvrSystemVersion:rvnASUSTeKComputerINC.:rnP8P67LE:rvrRevX.0X:cvnChassisManufacture:ct3:cvrChassisVersion:
dmi.product.name: System Product Name
dmi.product.version: System Version
dmi.sys.vendor: System manufacturer

pmelix (pmelix) wrote :
Brad Figg (brad-figg) on 2011-05-04
Changed in linux (Ubuntu):
status: New → Confirmed
Israel G. Lugo (ilugo) wrote :

I have the same problem on my Gentoo system, using kernel 2.6.37. For searching reference, this is an Asus P8P67-LE motherboard, with a Marvell 88SE9120 SATA 6 Gb/s + PATA controller. I've researched this by looking at the driver sources and the Linux kernel changelogs.

The problem here is that the 88SE9120 is being (correctly) driven by the AHCI driver, which unfortunately doesn't know how to access the PATA port on the device. You can verify that the ahci driver is being used by looking at the output of lspci -k, or at the lspci.txt file which has been attached to this bug.

There is a pata_marvell driver, which can handle both the SATA and PATA ports (I'm not sure but it may drive the SATA ports in slightly slower legacy IDE mode). The ahci driver is designed to back down to the pata_marvell driver if it detects a Marvell controller -- see this commit: http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.38.y.git;a=commit;h=5b66c829bf5c65663b2f68ee6b42f6e834cd39cd

The problem is two fold:
1. First, the ahci driver is detecting the Marvell controller using the old vendor ID of 0x11ab (which is what PCI_VENDOR_ID_MARVELL is defined to). The 88SE9120 identifies itself with vendor ID 0x1b4b (again, as can be seen in the attached lspci.txt). Therefore, the ahci driver does not know it is a Marvell controller and doesn't yield control to the pata_marvell driver.

2. The pata_marvell driver itself is only meant to handle the 88SE61xx chipsets. Even then there are some features which only work in specific models; the driver seems to be somewhat incomplete. I'm not sure whether it will correctly drive other controllers. I can try patching the driver on my system to recognize the 88SE9120 and see if it will work correctly...

The fix here would be to either teach the ahci driver to drive the PATA port, or to teach it to back off the controller altogether and let the pata_marvell do the work (make it look for the new 0x1b4b vendor ID as well). As for pata_marvell, it needs to be tested. It may be necessary to patch it so that it recognizes the 88SE9120 controller as its own, and it may need some teaching to handle it correctly (haven't tested yet).

I suggest the Ubuntu kernel team could contact the Linux kernel folks to get their take on this...

pmelix (pmelix) wrote :

Should I repost on the Hernel Bug Tracker and link this Bug-Report or should somebody of the team do so?

Changed in linux:
importance: Unknown → Medium
status: Unknown → Confirmed
Sergii Tkachenko (richy-od-ua) wrote :

I have the same problem.
Asus P8P67-LE + Marvell Technology Group Ltd. Device 88se91a1xx (1b4b:91a4).
I can see PATA hdd drive in bios and windows7, but not in Ubuntu (2.6.38-8-generic).

If necessary, I can provide any information that you might be interested in.

Jose Hiram Soltren (jsoltren) wrote :

I'm able to reproduce this issue on my P8P67-LE based machine as well. A fix would be most welcome.

pmelix (pmelix) wrote :

Looks like we will not have a solution until one of the Kernel Hackers buys one of those...:( Sadly. You could repost on the Kernel-Bug-Tracker, so they will recieve another Mail, but i allready gave up on this matter
Sorry....

Emile Joubert (pawnstar) wrote :

Paweł Drewniak contributed a pata_marvell patch to the kernel list for this issue. I've been using it for about a week and it works ok for me. I don't see a noticeable performance penalty to the SATA disks with the patch in place.

https://lkml.org/lkml/2011/5/18/193

pmelix (pmelix) wrote :

Awesome...
Can you perhaps give a Link or explain how to apply this Patch?

pmelix (pmelix) wrote :

Works fine for me!

pmelix (pmelix) wrote :

Patch:

pmelix (pmelix) on 2011-06-08
Changed in linux (Ubuntu):
status: Confirmed → Fix Committed
pmelix (pmelix) on 2011-06-08
tags: added: kernel-bug needs-packaging verification-needed
removed: amd64
Brian Murray (brian-murray) wrote :

*** This is an automated message ***

This bug is tagged needs-packaging which identifies it as a request for a new package in Ubuntu. As a part of the managing needs-packaging bug reports specification, https://wiki.ubuntu.com/QATeam/Specs/NeedsPackagingBugs, all needs-packaging bug reports have Wishlist importance. Subsequently, I'm setting this bug's status to Wishlist.

summary: - Marvell 88SE9120 IDE-Part not working
+ [needs-packaging] Marvell 88SE9120 IDE-Part not working
Changed in linux (Ubuntu):
importance: Undecided → Wishlist
Changed in linux:
status: Confirmed → Fix Released

Paweł Drewniak updated his patch to v2 (minor cosmetic change) https://lkml.org/lkml/2011/6/14/231

pmelix (pmelix) wrote :
pmelix (pmelix) on 2011-06-25
tags: added: patch-accepted-upstream
removed: apport-bug natty needs-packaging verification-needed
Silviu C. (silviucc) wrote :

So will we get the fix backported to the natty kernel or are we on our own ? :)

The patch noted in comment #14 is already included and available in the latest 3.0.0-7.8 Oneiric kernel. As a result, I'm marking this actively developed linux task Fix Released. This patch does look like a candidate for SRU against Natty. I'll open and approve the Natty nomination and see about getting you a test kernel. Thanks.

Changed in linux (Ubuntu):
status: Fix Committed → Fix Released
summary: - [needs-packaging] Marvell 88SE9120 IDE-Part not working
+ [Natty] Marvell 88SE9120 IDE-Part not working

Hi teddy19,

Since you are the original bug reporter, could you please try the following Natty test kernel which has the patch from comment #14 applied. Please let me know your results. Thanks.

http://people.canonical.com/~ogasawara/lp777325/

Changed in linux (Ubuntu Natty):
assignee: nobody → Leann Ogasawara (leannogasawara)
importance: Undecided → Medium
status: New → In Progress
pmelix (pmelix) wrote :

Awesome:) Thanks for your work! It works perfectly!

Silviu C. (silviucc) wrote :

This also affects Lucid. Will there be a fix ?

Thanks teddy19, I'll get the patch sent to the Ubuntu kernel team mailing list for SRU against Natty. Once it gets officially applied there will likely be one more call for testing against the official Natty kernel that gets uploaded to natty-proposed. You'll want to test and give your feedback when the call for testing gets posted to this bug else they'll drop the patch.

Silviu, I've built a Lucid test kernel with the patch applied. Please test and let me know your results. I can then get it submitted for Lucid SRU. Thanks.

http://people.canonical.com/~ogasawara/lp777325/lucid/

Silviu C. (silviucc) wrote :

Downloaded the deb files , ran a "sudo dpkg -i *.deb" and rebooted. It seems the modules for the proprietary nvidia drivers were not rebuilt during the install :/

Luckily I also have a back-ported kernel from natty and I'm running that.

Silviu C. (silviucc) wrote :

Ok, fixed the trouble with the nvidia driver but still no go for the DVD drive. Get some weird errors on dmesg (attached)

description: updated
Changed in linux (Ubuntu Natty):
status: In Progress → Fix Committed
Herton R. Krzesinski (herton) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-natty' to 'verification-done-natty'.

If verification is not done by one week from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-natty
pmelix (pmelix) wrote :

Works fine for me! Thanks a lot!

tags: added: verification-done-natty
removed: verification-needed-natty
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 2.6.38-11.50

---------------
linux (2.6.38-11.50) natty-proposed; urgency=low

  [Herton R. Krzesinski]

  * Release Tracking Bug
    - LP: #848246

  [ Upstream Kernel Changes ]

  * Revert "eCryptfs: Handle failed metadata read in lookup"
  * Revert "KVM: fix kvmclock regression due to missing clock update"
  * Revert "ath9k: use split rx buffers to get rid of order-1 skb
    allocations"

linux (2.6.38-11.49) natty-proposed; urgency=low

  [Herton R. Krzesinski]

  * Release Tracking Bug
    - LP: #836903

  [ Adam Jackson ]

  * SAUCE: drm/i915/pch: Fix integer math bugs in panel fitting
    - LP: #753994

  [ Keng-Yu Lin ]

  * SAUCE: Input: ALPS - Enable Intellimouse mode for Lenovo Zhaoyang E47
    - LP: #632884, #803005

  [ Stefan Bader ]

  * [Config] Force perf to use libiberty for demangling
    - LP: #783660

  [ Tim Gardner ]

  * [Config] Add enic/fnic to udebs
    - LP: #801610

  [ Upstream Kernel Changes ]

  * eeepc-wmi: add keys found on EeePC 1215T
    - LP: #812644
  * eCryptfs: Handle failed metadata read in lookup
    - LP: #509180
  * pagemap: close races with suid execve, CVE-2011-1020
    - LP: #813026
    - CVE-2011-1020
  * report errors in /proc/*/*map* sanely, CVE-2011-1020
    - LP: #813026
    - CVE-2011-1020
  * close race in /proc/*/environ, CVE-2011-1020
    - LP: #813026
    - CVE-2011-1020
  * auxv: require the target to be tracable (or yourself), CVE-2011-1020
    - LP: #813026
    - CVE-2011-1020
  * deal with races in /proc/*/{syscall, stack, personality}, CVE-2011-1020
    - LP: #813026
    - CVE-2011-1020
  * vmscan: fix a livelock in kswapd
    - LP: #813797
  * mmc: Add PCI fixup quirks for Ricoh 1180:e823 reader
    - LP: #773524
  * mmc: Added quirks for Ricoh 1180:e823 lower base clock frequency
    - LP: #773524
  * rose: Add length checks to CALL_REQUEST parsing, CVE-2011-1493
    - LP: #816550
    - CVE-2011-1493
  * pata_marvell: Add support for 88SE91A0, 88SE91A4
    - LP: #777325
  * GFS2: make sure fallocate bytes is a multiple of blksize, CVE-2011-2689
    - LP: #819572
    - CVE-2011-2689
  * Bluetooth: l2cap and rfcomm: fix 1 byte infoleak to userspace.
    - LP: #819569
    - CVE-2011-2492
  * drm/nv50-nvc0: work around an evo channel hang that some people see
    - LP: #583760
  * KVM: fix kvmclock regression due to missing clock update
    - LP: #795717
  * Add mount option to check uid of device being mounted = expect uid,
    CVE-2011-1833
    - LP: #732628
    - CVE-2011-1833
  * proc: fix oops on invalid /proc/<pid>/maps access, CVE-2011-1020
    - LP: #813026
    - CVE-2011-1020
  * ipv6: make fragment identifications less predictable, CVE-2011-2699
    - LP: #827685
    - CVE-2011-2699
  * ath9k: use split rx buffers to get rid of order-1 skb allocations
    - LP: #728835
  * perf: Fix software event overflow, CVE-2011-2918
    - LP: #834121
    - CVE-2011-2918
 -- Herton Ronaldo Krzesinski <email address hidden> Mon, 12 Sep 2011 17:23:38 -0300

Changed in linux (Ubuntu Natty):
status: Fix Committed → Fix Released
Silviu C. (silviucc) wrote :

Hello,

this bug is still not fixed in Lucid. Have to use backported natty or oneiric kernels.

summary: - [Natty] Marvell 88SE9120 IDE-Part not working
+ [Natty] Marvell 88SE9120 IDE-Port not working
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.