Bug 227944

Summary: Lenovo N100 3000 5-in-1 memory card reader don't working
Product: [openSUSE] openSUSE 10.2 Reporter: Petr Novák <su.petr>
Component: KernelAssignee: Oliver Neukum <oneukum>
Status: RESOLVED NORESPONSE QA Contact: E-mail List <qa-bugs>
Severity: Major    
Priority: P5 - None CC: lmb, su.petr
Version: Final   
Target Milestone: ---   
Hardware: i686   
OS: Other   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: tree /sys/block > block.txt
Dmesg debug - acpi and mmc
Ubuntu > SuSE merged config
SuSE kernel dmesg
Whole process repeated again with all reports
dmesg -s 64000

Description Petr Novák 2006-12-12 16:22:21 UTC
Lenovo N100 3000 5-in-1 memory card reader don't working:

lsmod | grep -i mmc
mmc_block              12040  0 
mmc_core               28672  2 mmc_block,sdhci

dmesg | grep -i mmc
PCI: Using MMCONFIG
sr0: scsi3-mmc drive: 62x/62x writer dvd-ram cd/rw xa/form2 cdda tray
mmc0: SDHCI at 0xb0300400 irq 225 DMA

dmesg | grep -i sdhci
sdhci: Secure Digital Host Controller Interface driver, 0.12
sdhci: Copyright(c) Pierre Ossman
sdhci: SDHCI controller found at 0000:05:06.1 [1180:0822] (rev 19)
mmc0: SDHCI at 0xb0300400 irq 225 DMA

cat /proc/devices
Character devices:
  1 mem
  2 pty
  3 ttyp
  4 /dev/vc/0
  4 tty
  4 ttyS
  5 /dev/tty
  5 /dev/console
  5 /dev/ptmx
  7 vcs
 10 misc
 13 input
 14 sound
 21 sg
 29 fb
116 alsa
128 ptm
136 pts
171 ieee1394
180 usb
189 usb_device
216 rfcomm
226 drm
254 pcmcia

Block devices:
  1 ramdisk
  7 loop
  8 sd
  9 md
 11 sr
 65 sd
 66 sd
 67 sd
 68 sd
 69 sd
 70 sd
 71 sd
128 sd
129 sd
130 sd
131 sd
132 sd
133 sd
134 sd
135 sd
252 mmc
253 device-mapper
254 mdp
mknod /dev/mmc b 252 0
mknod /dev/mmc0 b 252 1
mount /dev/mmc /mnt
mount /dev/mmc0 /mnt

lspci
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 02)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller IDE (rev 02)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)
03:00.0 Network controller: Broadcom Corporation BCM4310 UART (rev 01)
05:01.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
05:04.0 CardBus bridge: ENE Technology Inc CB1410 Cardbus Controller (rev 01)
05:06.0 FireWire (IEEE 1394): Ricoh Co Ltd Unknown device 0832
05:06.1 Generic system peripheral [Class 0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 19)
05:06.2 System peripheral: Ricoh Co Ltd Unknown device 0843 (rev 01)
05:06.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 0a)
05:06.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev 05)

lspci -n
00:00.0 Class 0600: 8086:27a0 (rev 03)
00:02.0 Class 0300: 8086:27a2 (rev 03)
00:02.1 Class 0380: 8086:27a6 (rev 03)
00:1b.0 Class 0403: 8086:27d8 (rev 02)
00:1c.0 Class 0604: 8086:27d0 (rev 02)
00:1c.1 Class 0604: 8086:27d2 (rev 02)
00:1d.0 Class 0c03: 8086:27c8 (rev 02)
00:1d.1 Class 0c03: 8086:27c9 (rev 02)
00:1d.2 Class 0c03: 8086:27ca (rev 02)
00:1d.3 Class 0c03: 8086:27cb (rev 02)
00:1d.7 Class 0c03: 8086:27cc (rev 02)
00:1e.0 Class 0604: 8086:2448 (rev e2)
00:1f.0 Class 0601: 8086:27b9 (rev 02)
00:1f.2 Class 0101: 8086:27c4 (rev 02)
00:1f.3 Class 0c05: 8086:27da (rev 02)
03:00.0 Class 0280: 14e4:4312 (rev 01)
05:01.0 Class 0200: 10ec:8139 (rev 10)
05:04.0 Class 0607: 1524:1410 (rev 01)
05:06.0 Class 0c00: 1180:0832
05:06.1 Class 0805: 1180:0822 (rev 19)
05:06.2 Class 0880: 1180:0843 (rev 01)
05:06.3 Class 0880: 1180:0592 (rev 0a)
05:06.4 Class 0880: 1180:0852 (rev 05)

lsusb
Bus 002 Device 001: ID 0000:0000  
Bus 004 Device 001: ID 0000:0000  
Bus 001 Device 003: ID 0a5c:2101 Broadcom Corp. 
Bus 001 Device 001: ID 0000:0000  
Bus 005 Device 006: ID 0ea0:2168 Ours Technology, Inc. Transcend JetFlash 2.0 / Astone USB Drive
Bus 005 Device 003: ID 0c45:624f Microdia 
Bus 005 Device 001: ID 0000:0000  
Bus 003 Device 002: ID 08ff:2580 AuthenTec, Inc. 
Bus 003 Device 001: ID 0000:0000
Comment 1 Petr Novák 2006-12-12 16:29:22 UTC
I forgot:
mount /dev/mmc /mnt
mount: /dev/mmc is not a valid block device.

mount /dev/mmc0 /mnt
mount: /dev/mmc0 is not a valid block device.

PS: On openSUSE 10.2 GM freshly installed.
Comment 2 Greg Kroah-Hartman 2006-12-14 19:01:45 UTC
What is the output of 'tree /sys/block' with a card plugged into the device?
Comment 3 Lars Marowsky-Bree 2007-01-09 17:45:31 UTC
Petr, please provide the needed information, else we cannot help you.
Comment 4 Lars Marowsky-Bree 2007-01-23 12:13:10 UTC
Information not provided for >1 month. Please reopen with the requested information if the problem persists.
Comment 5 Petr Novák 2007-01-29 22:43:21 UTC
Created attachment 116009 [details]
tree /sys/block > block.txt

Sorry, for the long delay. I did not notice, that this bug was reopen. No progression from that time, but I attached asked info.
Comment 6 Petr Novák 2007-01-29 22:47:35 UTC
I reopened this issue with needed info (https://bugzilla.novell.com/attachment.cgi?id=116009&action=view).
Comment 8 Petr Novák 2007-04-15 02:32:06 UTC
Was my reports usefull? Still does not work in fresh openSUSE 10.3 Alpha 3. Has this bug some activity progress?
Comment 9 Lars Marowsky-Bree 2007-04-18 11:37:12 UTC
Please do not change the assignee randomly. I have absolutely no idea about USB ;-)
Comment 10 Oliver Neukum 2007-04-18 14:54:11 UTC
What makes you think we are talking USB? The readers show up on lspci. Neither do I have any idea about MMC readers. What kind of card is this? 
Comment 11 Petr Novák 2007-04-20 00:44:52 UTC
It is the:
05:04.0 CardBus bridge: ENE Technology Inc CB1410 Cardbus Controller (rev 01)
05:06.0 FireWire (IEEE 1394): Ricoh Co Ltd Unknown device 0832
05:06.1 Generic system peripheral [Class 0805]: Ricoh Co Ltd R5C822
SD/SDIO/MMC/MS/MSPro Host Adapter (rev 19)
05:06.2 System peripheral: Ricoh Co Ltd Unknown device 0843 (rev 01)
05:06.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter
(rev 0a)
05:06.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev 05)

I tried:
MMC card from Nokia 6230 and MSPRO Duo card from SonyEricsson P990i. Booth without success.

Lars: Excuse for that mistake.
Comment 12 Oliver Neukum 2007-04-20 08:05:12 UTC
Please recompile your kernel with "MMC debugging" and provide dmesg.
Comment 13 Petr Novák 2007-04-21 21:08:42 UTC
Created attachment 133019 [details]
Dmesg debug - acpi and mmc
Comment 14 Petr Novák 2007-04-21 21:18:41 UTC
Hello,
I attached dmesg output with acpi and mmc enabled kernel. Excuse for Ubuntu kernel, but if I recompile this kernel (http://ftp.opensuse.org/pub/opensuse/repositories/Kernel:/HEAD/openSUSE_Factory/i586/kernel-source-2.6.21_rc7_git4-14.1.i586.rpm) my notebook Lenovo 3000 N100 did not boot. I tried a lot of tests with different SuSE kernels and initrd.imgs, but anything did not boot (during the boot I only saw first row: Uncompressing OK, booting linux... and this blank and black screen had shown forever without any progress). Ubuntu (initrd.img) or Frugalware (without initrd.img) customly by me recompiled kernels booting good.
Comment 15 Petr Novák 2007-04-22 02:02:46 UTC
Created attachment 133020 [details]
Ubuntu > SuSE merged config
Comment 16 Petr Novák 2007-04-22 02:03:23 UTC
Created attachment 133021 [details]
SuSE kernel dmesg
Comment 17 Petr Novák 2007-04-22 02:06:52 UTC
I do not know where is the magic switch in config for notebooks booting, but if I used config from Ubuntu on SuSE kernel, compiled SuSE factory kernel was booted well (initrd.imgs have same config). OK, new reports are above.
Comment 18 Oliver Neukum 2007-04-23 07:49:13 UTC
Did you do #16 with a card inserted into the slot?
Comment 19 Petr Novák 2007-04-23 12:05:36 UTC
Yes, every reports were made with inserted card into the slot before booting the OS. Do You know now, what is wrong in my dmesg (e.g. general interrupt delivery
problem)? Thank You very much for helping. PS: Have You got some advice to #17?
Comment 20 Oliver Neukum 2007-05-02 08:52:25 UTC
According to your dmesg it works. Can you check the device node's major:minor?
Comment 21 Petr Novák 2007-05-11 14:42:06 UTC
Hello Oliver,
as I understood well, i checked the correct number at /proc/devices (number 252 from the line of MMC).

mknod /dev/mmc b 252 0
mknod /dev/mmc0 b 252 1

mount /dev/mmc /mnt
mount: /dev/mmc is not a valid block device.

mount /dev/mmc0 /mnt
mount: /dev/mmc0 is not a valid block device.

Same as at the beginning :'(.
Comment 22 Oliver Neukum 2007-05-23 20:47:15 UTC
Could you provide /proc/interrupts before and after you try to mount?
Comment 23 Petr Novák 2007-05-26 18:54:46 UTC
Hello Oliver, I repeated the whole process and recorded it with script command. Please, look at attachement mmc_bug.txt.
Comment 24 Petr Novák 2007-05-26 18:56:03 UTC
Created attachment 142431 [details]
Whole process repeated again with all reports
Comment 25 Petr Novák 2007-05-27 11:16:06 UTC
I sent another useful report. I recompiled kernel with mmc and acpi debug option. And so compiled mmc and acpi into kernel natively (not as loadable module). There is dnesg -s 64000. All behavior is same, dmesg do not know anything about removing , inserting mmc card. Interrupts do not change during removing, inserting mmc card. And so no new devices found in /dev beginning with letter m against previous large script report.
Comment 26 Petr Novák 2007-05-27 11:16:41 UTC
Created attachment 142436 [details]
dmesg -s 64000
Comment 27 Oliver Neukum 2007-07-03 08:30:24 UTC
In this case something major is wrong with the hardware. I can only guess. Could you try with acpi=off
Comment 28 Petr Novák 2007-08-08 09:18:21 UTC
Yes, I tried it also without success.
Comment 29 Oliver Neukum 2007-08-13 13:40:39 UTC
Could you try pci=routeirq on the kernel command line?
Comment 30 Oliver Neukum 2007-09-21 08:24:43 UTC
5 weeks without response