[Dell XPS 11] Card reader RTS5249 doesn't work because failed to enable MSI

Bug #1366841 reported by Jared Dominguez on 2014-09-08
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Medium
Unassigned
Trusty
High
Adam Lee
Utopic
Medium
Unassigned

Bug Description

This patch has been submitted upstream and is queued up for inclusion in mfd-next:

https://git.kernel.org/cgit/linux/kernel/git/lee/mfd.git/commit/?h=for-mfd-next&id=eb61b3276e099d937fcdae2c67aec4766bba2dc3

Adam: backporting "034cd97ebda4062eb4402a6cf963ccd262caa86a PCI/MSI: Remove pci_enable_msi_block()" from mainline/master works too.

Please include this patch in Trusty and Utopic. (Adam: Utopic doesn't have this issue.)

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 1366841

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Changed in linux (Ubuntu):
importance: Undecided → Medium
tags: added: trusty utopic
Changed in linux (Ubuntu):
status: Confirmed → Triaged
Tim Gardner (timg-tpi) on 2014-09-08
Changed in linux (Ubuntu Trusty):
assignee: nobody → Daniel Jared Dominguez (jared-dominguez)
status: New → In Progress
Changed in linux (Ubuntu Utopic):
assignee: nobody → Daniel Jared Dominguez (jared-dominguez)
status: Triaged → In Progress
Changed in linux (Ubuntu Trusty):
importance: Undecided → Medium

https://bugs.launchpad.net/hwe-next/trusty/+bug/1359052 looks like the same issue as this, which was fixed by another solution from vendor, I'm contacting vendor for advice.

That's just a workaround that manually forces MSI to be disabled. If you look at the lspci output in that other bug report, you see that MSI is also disabled for the card reader in that system:
02:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. Device 5249 (rev 01)
[snip]
 Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+

The workaround just bypasses the same erroneous line of code in the driver. The patch mentioned in this bug report is a more correct and general fix.

Adam Lee (adam8157) wrote :

Vendor comments the solution this bug mentioned:

"The solution in Launchpad is just a workaround, not a fix. We have submitted our patch recently, and please apply our patch to fix this problem.

Our patch set:
https://<email address hidden>/msg723994.html"

So we need to backport the final solution and revert the workaround(if merged)

Sorry, I didn't notice that the other bug says that it stops working *after* suspend. The issue here is that the device *never* works before this patch. The patch I link to is required in order for the card reader to work at all on the XPS 11. So, the patch I link to in this bug description is still necessary. The patches for LP 723994 do not fix this bug.

Changed in linux (Ubuntu Trusty):
assignee: Daniel Jared Dominguez (jared-dominguez) → nobody
Changed in linux (Ubuntu Utopic):
assignee: Daniel Jared Dominguez (jared-dominguez) → nobody
Adam Lee (adam8157) wrote :

Thanks to "034cd97ebda4062eb4402a6cf963ccd262caa86a PCI/MSI: Remove pci_enable_msi_block()", this patch is not necessary for Utopic

Changed in linux (Ubuntu Utopic):
status: In Progress → Invalid
Changed in linux (Ubuntu Trusty):
assignee: nobody → Adam Lee (adam8157)
Adam Lee (adam8157) wrote :

so, for trusty, backporting "eb61b3276e099d937fcdae2c67aec4766bba2dc3 mfd: rtsx_pcr: Fix MSI enable error handling" or "034cd97ebda4062eb4402a6cf963ccd262caa86a PCI/MSI: Remove pci_enable_msi_block()" will fix this issue.

summary: - mfd: rtsx_pcr: Fix MSI enable error handling
+ [Dell XPS 11] Card reader RTS5249 doesn't work because failed to enable
+ MSI
Adam Lee (adam8157) wrote :

please ignore #2 #3 and #4, not the same issue as #1359052.

Adam Lee (adam8157) on 2014-09-15
description: updated
Changed in linux (Ubuntu Trusty):
importance: Medium → High
Adam Lee (adam8157) wrote :

decide to wait "eb61b3276e099d937fcdae2c67aec4766bba2dc3 mfd: rtsx_pcr: Fix MSI enable error handling" merged in mainline, it's simple and reasonable for SRU's policy

Adam Lee (adam8157) wrote :

Mainline:

commit 5152970538a5e16c03bbcb9f1c780489a795ed40
Author: Chris Ball <email address hidden>
Date: Thu Sep 4 17:11:53 2014 +0100

    mfd: rtsx_pcr: Fix MSI enable error handling

    pci_enable_msi() can return failure with both positive and negative
    integers -- it returns 0 for success -- but is only tested here for
    "if (ret < 0)". This causes us to try to use MSI on the RTS5249 SD
    reader in the Dell XPS 11 when enabling MSI failed, causing:

    [ 1.737110] rtsx_pci: probe of 0000:05:00.0 failed with error -110

patch has been submitted to kernel-team@

Tim Gardner (timg-tpi) on 2014-10-22
Changed in linux (Ubuntu Trusty):
status: In Progress → Fix Committed
Brad Figg (brad-figg) 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-trusty' to 'verification-done-trusty'.

If verification is not done by 5 working days 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-trusty
Adam Lee (adam8157) wrote :

@Daniel, could you please take a test as #12? thanks.

tags: added: verification-done-trusty
removed: verification-needed-trusty
Launchpad Janitor (janitor) wrote :
Download full text (22.1 KiB)

This bug was fixed in the package linux - 3.13.0-40.69

---------------
linux (3.13.0-40.69) trusty; urgency=low

  [ Luis Henriques ]

  * Release Tracking Bug
    - re-used previous tracking bug

  [ Upstream Kernel Changes ]

  * regmap: fix kernel hang on regmap_bulk_write with zero val_count.

linux (3.13.0-40.68) trusty; urgency=low

  [ Brad Figg ]

  * Release Tracking Bug
    - LP: #1388943
  * SAUCE: DEP8 test to run our regression tests
    - LP: #1385330
  * SAUCE: The very first thing we should do when testing is make sure we
    are testing the correct kernel
    - LP: #1385330

  [ dann frazier ]

  * [Config] Disable CONFIG_IPMI_SI_PROBE_DEFAULTS on armhf and arm64
    - LP: #1388952

  [ Duc Dang ]

  * SAUCE: (no-up) [PCIE] APM X-Gene: Remove debug messages in MSI
    interrupt handler path.
    - LP: #1382244
  * SAUCE: (no-up) PCI: X-Gene: Fix max payload size and phantom function
    configuration
    - LP: #1386261

  [ McAulay, Alistair ]

  * SAUCE: drm/i915: Rework GPU reset sequence to match driver load & thaw
    - LP: #1384469

  [ Timo Aaltonen ]

  * SAUCE: i915_bdw: Fix cherry-pick typo
    - LP: #1384469

  [ Upstream Kernel Changes ]

  * Revert "mac80211: disable uAPSD if all ACs are under ACM"
    - LP: #1381234
  * Revert "iwlwifi: dvm: don't enable CTS to self"
    - LP: #1381234
  * Revert "lzo: properly check for overruns"
    - LP: #1387886
  * drm/i915: provide interface for audio driver to query cdclk
    - LP: #1381168
  * regulatory: add NUL to alpha2
    - LP: #1381234
  * percpu: fix pcpu_alloc_pages() failure path
    - LP: #1381234
  * percpu: perform tlb flush after pcpu_map_pages() failure
    - LP: #1381234
  * cgroup: reject cgroup names with '\n'
    - LP: #1381234
  * vfs: add d_is_dir()
    - LP: #1381234
  * CIFS: Fix directory rename error
    - LP: #1381234
  * usb: phy: twl4030-usb: Fix lost interrupts after ID pin goes down
    - LP: #1381234
  * rtlwifi: rtl8192cu: Add new ID
    - LP: #1381234
  * CIFS: Fix wrong restart readdir for SMB1
    - LP: #1381234
  * CIFS: Fix wrong filename length for SMB2
    - LP: #1381234
  * ahci: Add Device IDs for Intel 9 Series PCH
    - LP: #1381234
  * ata_piix: Add Device IDs for Intel 9 Series PCH
    - LP: #1381234
  * USB: zte_ev: fix removed PIDs
    - LP: #1381234
  * USB: ftdi_sio: add support for NOVITUS Bono E thermal printer
    - LP: #1381234
  * USB: sierra: avoid CDC class functions on "68A3" devices
    - LP: #1381234
  * USB: sierra: add 1199:68AA device ID
    - LP: #1381234
  * iommu/arm-smmu: fix programming of SMMU_CBn_TCR for stage 1
    - LP: #1381234
  * iommu/arm-smmu: remove pgtable_page_{c,d}tor()
    - LP: #1381234
  * usb: gadget: fusb300_udc.h: Fix typo in include guard
    - LP: #1381234
  * usb: phy: tegra: Avoid use of sizeof(void)
    - LP: #1381234
  * arm64: use irq_set_affinity with force=false when migrating irqs
    - LP: #1381234
  * block: Fix dev_t minor allocation lifetime
    - LP: #1381234
  * usb: dwc3: core: fix order of PM runtime calls
    - LP: #1381234
  * usb: dwc3: core: fix ordering for PHY suspend
    - LP: #1381234
  * usb: dwc3: omap: fix ordering for runtime pm calls
    - LP: #1381234
  * ...

Changed in linux (Ubuntu Trusty):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers