lkml.org 
[lkml]   [2012]   [Feb]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: mmc sdhci mmcblk0: error -110 sending status command, retrying
    From
    On Tue, Feb 7, 2012 at 11:38 AM, Chris Ball <cjb@laptop.org> wrote:
    > Hi, adding linux-mmc@ to the thread,
    >
    > On Mon, Feb 06 2012, Jeff Chua wrote:
    >> The SD slot on the Lenovo X220 is doesn't seems to work on
    >> Linux-3.3.0-rc2. I haven't use SD for a while, so don't know which
    >> linux version will work on the X220.
    >>
    >>
    >> # cat .config
    >> CONFIG_MMC=m
    >> CONFIG_MMC_DEBUG=y
    >> CONFIG_MMC_CLKGATE=y
    >> CONFIG_MMC_BLOCK=m
    >> CONFIG_MMC_BLOCK_MINORS=8
    >> CONFIG_MMC_BLOCK_BOUNCE=y
    >> CONFIG_MMC_SDHCI=m
    >> CONFIG_MMC_SDHCI_PCI=m
    >> CONFIG_MMC_RICOH_MMC=y
    >>
    >>
    >> # lspcpi -v
    >>
    >> 0d:00.0 System peripheral: Ricoh Co Ltd Device e823 (rev 04) (prog-if 01)
    >>         Subsystem: Lenovo Device 21da
    >>         Flags: bus master, fast devsel, latency 0, IRQ 16
    >>         Memory at f1500000 (32-bit, non-prefetchable) [size=256]
    >>         Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
    >>         Capabilities: [78] Power Management version 3
    >>         Capabilities: [80] Express Endpoint, MSI 00
    >>         Kernel driver in use: sdhci-pci
    >>         Kernel modules: sdhci-pci
    >>
    >>
    >> # dmesg
    >> sdhci: Secure Digital Host Controller Interface driver
    >> sdhci: Copyright(c) Pierre Ossman
    >> sdhci-pci 0000:0d:00.0: SDHCI controller found [1180:e823] (rev 4)
    >> sdhci-pci 0000:0d:00.0: found 1 slot(s)
    >> sdhci [sdhci_add_host()]: mmc0: Auto-CMD23 unavailable
    >> sdhci: =========== REGISTER DUMP (mmc0)===========
    >> sdhci: Sys addr: 0x00000000 | Version:  0x00000502
    >> sdhci: Blk size: 0x00000000 | Blk cnt:  0x00000000
    >> sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
    >> sdhci: Present:  0x01f70000 | Host ctl: 0x00000000
    >> sdhci: Power:    0x00000000 | Blk gap:  0x00000000
    >> sdhci: Wake-up:  0x00000000 | Clock:    0x00000000
    >> sdhci: Timeout:  0x00000000 | Int stat: 0x00000000
    >> sdhci: Int enab: 0x00ff0003 | Sig enab: 0x00ff0003
    >> sdhci: AC12 err: 0x00000000 | Slot int: 0x00000000
    >> sdhci: Caps:     0x21e832b2 | Caps_1:   0x00008073
    >> sdhci: Cmd:      0x00000000 | Max curr: 0x00000040
    >> sdhci: Host ctl2: 0x00000000
    >> sdhci: ===========================================
    >>
    >> mmc0: req done (CMD18): 0: 00000900 00000000 00000000 00000000
    >> mmc0:     0 bytes transferred: -84
    >> mmc0:     (CMD12): -110: 00000000 00000000 00000000 00000000
    >> mmc0: starting CMD13 arg b3680000 flags 00000195
    >> sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00018000
    >> mmc0: req done (CMD13): -110: 00000000 00000000 00000000 00000000
    >> mmcblk0: error -110 sending status command, retrying
    >> mmc0: starting CMD13 arg b3680000 flags 00000195
    >> sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00018000
    >> mmc0: req done (CMD13): -110: 00000000 00000000 00000000 00000000
    >> mmcblk0: error -110 sending status command, retrying
    >> mmc0: starting CMD13 arg b3680000 flags 00000195
    >> sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00000001
    >> mmc0: req done (CMD13): 0: 00800b00 00000000 00000000 00000000
    >> mmc0: starting CMD12 arg 00000000 flags 0000049d
    >> sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00000003
    >> mmc0: req done (CMD12): 0: 00000b00 00000000 00000000 00000000
    >> mmcblk0: error -110 sending stop command, original cmd response 0x900,
    >> card status 0x800b00
    >> mmcblk0: error -84 transferring data, sector 0, nr 32, cmd response
    >> 0x900, card status 0xb00
    >> mmcblk0: retrying using single block read
    >> mmc0: starting CMD17 arg 00000000 flags 000000b5
    >> mmc0:     blksz 512 blocks 1 flags 00000200 tsac 100 ms nsac 0
    >> sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00000001
    >> sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00000002
    >> mmc0: req done (CMD17): 0: 00000900 00000000 00000000 00000000
    >> mmc0:     512 bytes transferred: 0
    >> mmc0: starting CMD17 arg 00000001 flags 000000b5
    >> mmc0:     blksz 512 blocks 1 flags 00000200 tsac 100 ms nsac 0
    >> sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00000001
    >> sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00000002
    >>
    >>
    >> Any help will be very much appreciated.
    >
    > Could you try another SD card to confirm that it's the controller?
    > If it is, a bisect (at least between kernel versions) is probably
    > a good idea.

    I've tried another SD but still facing the same problem on the SD
    slot. The same SD works when plugged in a USB card reader on the X220.

    I'll try to bisect later, but don't know which version would work for
    X220. The X201s has a SD slot, but it's actually a USB card reader and
    that works, so I will have to find a working version before I can
    bisect.

    Jeff
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2012-02-07 05:39    [W:0.031 / U:32.024 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site