Realtek Card Reader not working (kernel driver)

Bug #1735099 reported by Zibri Soft
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Triaged
High
Unassigned

Bug Description

This is the situation if I use the normal 4.13 kernel driver

[ 1899.245301] mmc0: cannot verify signal voltage switch
[ 1899.377540] mmc0: new ultra high speed SDR104 SDXC card at address e624
[ 1899.401829] mmcblk0: mmc0:e624 AGGCE 59.5 GiB
[ 1899.404700] mmcblk0: p1
[ 1899.620084] mmcblk0: error -110 sending status command, retrying
[ 1899.620231] mmcblk0: error -22 sending status command, retrying
[ 1899.620419] mmcblk0: error -22 sending status command, aborting
[ 1899.905535] mmc0: cannot verify signal voltage switch
[ 1900.136253] mmcblk0: error -22 sending status command, retrying
[ 1900.136396] mmcblk0: error -22 sending status command, retrying
[ 1900.240070] mmcblk0: error -110 sending status command, aborting
[ 1900.240084] print_req_error: I/O error, dev mmcblk0, sector 8

but it works perfectly if I use the patched driver on kernel 4.4-4.7
this one https://github.com/Zibri/Realtek-rts5229-for-4.4-kernel

the problem is that I can't compile it on 4.13 and anyway this affects a lot of systems using 5229/5227

many laptops use this.

any solution??

Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1735099

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
Revision history for this message
Zibri Soft (zibri-) wrote :

Nevermind, I successfully compiled the module on 4.13 kernel...
But can I ask what is wrong in the main kernel module?
Can someone fix it?

Revision history for this message
Zibri Soft (zibri-) wrote :
Zibri Soft (zibri-)
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
tags: added: kernel-bug
Changed in linux (Ubuntu):
importance: Undecided → High
status: Confirmed → Incomplete
tags: added: kernel-da-key
Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Would it be possible for you to test the latest upstream kernel? Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Please test the latest v4.15 kernel[0].

If this bug is fixed in the mainline kernel, please add the following tag 'kernel-fixed-upstream'.

If the mainline kernel does not fix this bug, please add the tag: 'kernel-bug-exists-upstream'.

Once testing of the upstream kernel is complete, please mark this bug as "Confirmed".

Thanks in advance.

[0] http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.15-rc1/

Revision history for this message
Zibri Soft (zibri-) wrote :

[ 206.772216] mmc0: cannot verify signal voltage switch
[ 206.905871] mmc0: new ultra high speed SDR104 SDXC card at address e624
[ 206.922669] mmcblk0: mmc0:e624 AGGCE 59.5 GiB
[ 206.925214] mmcblk0: p1
[ 207.035917] mmcblk0: error -110 sending stop command, original cmd response 0x0, card status 0x800b00
[ 207.144193] mmcblk0: error -110 sending stop command, original cmd response 0x0, card status 0x800b00
[ 207.248391] mmcblk0: error -22 sending status command, retrying
[ 207.248501] mmcblk0: error -22 sending status command, retrying
[ 207.352460] mmcblk0: error -110 sending status command, aborting
[ 207.638463] mmc0: cannot verify signal voltage switch
[ 207.873795] mmcblk0: error -22 sending status command, retrying
[ 207.873882] mmcblk0: error -22 sending status command, retrying
[ 207.977983] mmcblk0: error -110 sending status command, aborting
[ 207.977994] print_req_error: I/O error, dev mmcblk0, sector 24
[ 208.186497] mmcblk0: error -110 sending status command, retrying
[ 208.188696] mmc0: tuning execution failed: -22
[ 208.188703] mmcblk0: error -22 sending status command, retrying
[ 208.290773] mmcblk0: error -110 sending status command, aborting
[ 208.290786] print_req_error: I/O error, dev mmcblk0, sector 24
[ 208.290794] Buffer I/O error on dev mmcblk0, logical block 3, async page read
[ 208.543367] mmcblk0: error -110 sending status command, retrying
[ 208.545617] mmc0: tuning execution failed: -22
[ 208.545624] mmcblk0: error -22 sending status command, retrying
[ 208.647564] mmcblk0: error -110 sending status command, aborting
[ 208.647576] print_req_error: I/O error, dev mmcblk0, sector 124735360
[ 208.856057] mmcblk0: error -110 sending status command, retrying
[ 208.858352] mmc0: tuning execution failed: -22
[ 208.858359] mmcblk0: error -22 sending status command, retrying
root@zibrixnb:/home/zibri# uname -a
Linux zibrixnb 4.15.0-041500rc1-generic #201711262030 SMP Mon Nov 27 01:32:09 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
root@zibrixnb:/home/zibri#

still present in latest kernel.

tags: added: kernel-bug-exists-upstream
Revision history for this message
Zibri Soft (zibri-) wrote :

And I also confirm that with my patched driver it works.

https://github.com/Zibri/Realtek-rts5229-linux-driver

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Thank you for providing a patch, and making Ubuntu better.

Can you provide some information on the status of the patch with regards to getting it merged upstream? Has it been sent upstream, what sort of feedback has it received, is it getting applied to a subsystem maintainer's tree, etc?

People affected by this bug are probably wondering why the kernel team doesn't just apply the patch and fix it. The reason is that the kernel team is reluctant (not opposed) to apply any patch to a stable kernel that is not from upstream. Applying patches that don't come from upstream add greatly to the support of the kernel as other upstream patches may touch the same area as the non-upstream patch and may prevent them from applying cleanly.

To submit your patch, send your patch with the detailed description/changelog and your Signoff (ending with Signed-off-by: your name <email>), to the emails listed from ./scripts/get_maintainer.pl drivers/SUBSYSTEM-DETAILS (the get_maintainer.pl is from the kernel sources). Once you have sent the patch upstream and it's accepted, please drop a note here so that we can cherry-pick/include the patch into Ubuntu kernel.

Changed in linux (Ubuntu):
status: Confirmed → Triaged
Revision history for this message
TJ (tj) wrote :

The linked github repository doesn't break out whatever the fix is to the rtsx_pci driver is. Therefore it is all but impossible to figure out what was changed.

Another user reported this today with 5.0.0-27-generic where 64GB cards are readable but 256GB cards are not. It isn't clear if the power-signalling errors are critical or incidental:

Sep 15 11:55:59 kubuntu-laptop kernel: mmc0: cannot verify signal voltage switch
Sep 15 11:56:00 kubuntu-laptop kernel: mmc0: new ultra high speed SDR104 SDXC card at address 0001
Sep 15 11:56:00 kubuntu-laptop kernel: mmcblk0: mmc0:0001 GC2QT 59.6 GiB
Sep 15 11:56:00 kubuntu-laptop kernel: mmcblk0: p1
Sep 15 11:57:06 kubuntu-laptop kernel: mmc0: card 0001 removed
Sep 15 11:57:14 kubuntu-laptop kernel: mmc0: cannot verify signal voltage switch
Sep 15 11:57:14 kubuntu-laptop kernel: mmc0: tuning execution failed: -22
Sep 15 11:57:14 kubuntu-laptop kernel: mmc0: error -22 whilst initialising SD card
Sep 15 11:57:15 kubuntu-laptop kernel: mmc0: error -110 whilst initialising SD card
Sep 15 11:57:17 kubuntu-laptop kernel: mmc0: cannot verify signal voltage switch
Sep 15 11:57:17 kubuntu-laptop kernel: mmc0: tuning execution failed: -22
Sep 15 11:57:17 kubuntu-laptop kernel: mmc0: error -22 whilst initialising SD card
Sep 15 11:58:08 kubuntu-laptop kernel: mmc0: cannot verify signal voltage switch
Sep 15 11:58:08 kubuntu-laptop kernel: mmc0: new ultra high speed SDR104 SDXC card at address 0001
Sep 15 11:58:08 kubuntu-laptop kernel: mmcblk0: mmc0:0001 GC2QT 59.6 GiB
Sep 15 11:58:08 kubuntu-laptop kernel: mmcblk0: p1
Sep 15 11:58:46 kubuntu-laptop kernel: mmc0: card 0001 removed

Revision history for this message
Austin (austinagronick) wrote :

Just wanted to update, I am the user TJ is referring to. The issue was resolved after running "sudo update-initramfs -u" after the commands in the readme of the linked github repository as detailed here: http://baby-panda.github.io/linux/RTS5229_driver/

The new driver installation be verified by running "lspci -v"

Revision history for this message
TJ (tj) wrote :

Austin, thanks for confirming that repository solves the issue for you. I'll try to make a diff of the original commit to that repository against the Linux mainline driver at the same date, maybe we can be lucky and it'll make the required change clear so we can test it in Ubuntu and then get it into mainline kernel.

Please keep a watch on this report for updates.

Revision history for this message
TJ (tj) wrote :

Just to be clear the device Austin is dealing with is:

01:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5227 PCI Express Card Reader [10ec:5227] (rev 01)
 Subsystem: Hewlett-Packard Company RTS5227 PCI Express Card Reader [103c:804e]
 Kernel driver in use: rtsx_pci
 Kernel modules: rtsx_pci

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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