A new System 76 Lemur laptop has a Realtek 5287 PCIe cardreader.
It reads some SD cards but not all. Not to say which it reads or not. System 76 says they are aware of the problem, but don't know how to solve it. I searched and came along many possible options, but none seem to work.
System 76 had a similar problem some years ago with another Realtek cardreader, which they posted to Launchpad: https://bugs.launchpad.net/ubuntu/+source/udisks/+bug/971876
But that problem has been resolved in the meantime.
Apparently Ubuntu 16.04.1 can't read and/or see all cards, which is a bit weird. It sees for example a SanDisk Ultra 40MB/s 32GB card, some cheap 2GB sd-cards, but none of my 16GB cards (which are from different brands, one SanDisk 16GB Extreme Pro, one Integral Ultima Pro. Both 16GB cards give an error), dmesg shows (first a 16GB one and then 32GB which mounts properly):
[ 5861.429822] mmc0: cannot verify signal voltage switch
[ 5864.998521] mmc0: tuning execution failed
[ 5864.998532] mmc0: error -22 whilst initialising SD card
[ 5873.953821] mmc0: cannot verify signal voltage switch
[ 5874.083407] mmc0: new ultra high speed SDR50 SDHC card at address aaaa
[ 5874.083697] mmcblk0: mmc0:aaaa SL32G 29.7 GiB
[ 5874.102882] mmcblk0: p1
[ 5874.286794] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[ 5891.088486] mmc0: card aaaa removed
The unproper unmounting of the volume has nothing to do with Ubuntu and did not have any effect on the readability from the card.
I tried blacklisting the
rtsx_pci_ms,rtsx_pci_sdmmc
modules. Made no difference. Some cards would mount, some not, with same error messages.
Found some similar problems on Askubuntu:
Ubuntu 16.04 does not detect sd card reader
SD card not working :[ 249.480884] mmc0: error -5 whilst initialising SD card
For sure lsmod:
Module Size Used by
binfmt_misc 20480 1
mmc_block 36864 0
ctr 16384 1
ccm 20480 1
pci_stub 16384 1
vboxpci 24576 0
vboxnetadp 28672 0
vboxnetflt 28672 0
vboxdrv 454656 3 vboxnetadp,vboxnetflt,vboxpci
rfcomm 69632 0
ec_sys 16384 1
bnep 20480 2
arc4 16384 2
nls_iso8859_1 16384 1
drbg 32768 1
ansi_cprng 16384 0
snd_hda_codec_hdmi 53248 1
dm_crypt 28672 1
snd_hda_codec_realtek 86016 1
snd_hda_codec_generic 77824 1 snd_hda_codec_realtek
x86_pkg_temp_thermal 16384 0
coretemp 16384 0
snd_hda_intel 40960 5
kvm_intel 172032 0
snd_hda_codec 135168 4 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_intel
kvm 540672 1 kvm_intel
snd_hda_core 73728 5 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel
snd_hwdep 16384 1 snd_hda_codec
snd_pcm 106496 5 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_hda_core
irqbypass 16384 1 kvm
snd_seq_midi 16384 0
crct10dif_pclmul 16384 0
snd_seq_midi_event 16384 1 snd_seq_midi
crc32_pclmul 16384 0
ghash_clmulni_intel 16384 0
snd_rawmidi 32768 1 snd_seq_midi
iwlmvm 311296 0
aesni_intel 167936 16769
mac80211 737280 1 iwlmvm
aes_x86_64 20480 1 aesni_intel
lrw 16384 1 aesni_intel
gf128mul 16384 1 lrw
uvcvideo 90112 0
snd_seq 69632 2 snd_seq_midi_event,snd_seq_midi
glue_helper 16384 1 aesni_intel
ablk_helper 16384 1 aesni_intel
videobuf2_vmalloc 16384 1 uvcvideo
cryptd 20480 8386 ghash_clmulni_intel,aesni_intel,ablk_helper
videobuf2_memops 16384 1 videobuf2_vmalloc
videobuf2_v4l2 28672 1 uvcvideo
snd_seq_device 16384 3 snd_seq,snd_rawmidi,snd_seq_midi
videobuf2_core 36864 2 uvcvideo,videobuf2_v4l2
snd_timer 32768 2 snd_pcm,snd_seq
v4l2_common 16384 1 videobuf2_v4l2
videodev 176128 4 uvcvideo,v4l2_common,videobuf2_core,videobuf2_v4l2
iwlwifi 200704 1 iwlmvm
media 24576 2 uvcvideo,videodev
input_leds 16384 0
joydev 20480 0
serio_raw 16384 0
snd 81920 20 snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_seq_device
cfg80211 565248 3 iwlwifi,mac80211,iwlmvm
rtsx_pci_ms 20480 0
soundcore 16384 1 snd
memstick 20480 1 rtsx_pci_ms
btusb 45056 0
btrtl 16384 1 btusb
shpchp 36864 0
mei_me 36864 0
mei 98304 1 mei_me
hci_uart 77824 0
btbcm 16384 2 btusb,hci_uart
btqca 16384 1 hci_uart
btintel 16384 2 btusb,hci_uart
bluetooth 520192 31 bnep,btbcm,btqca,btrtl,btusb,hci_uart,rfcomm,btintel
intel_lpss_acpi 16384 0
intel_lpss 16384 1 intel_lpss_acpi
acpi_pad 20480 0
mac_hid 16384 0
parport_pc 32768 0
ppdev 20480 0
lp 20480 0
parport 49152 3 lp,ppdev,parport_pc
autofs4 40960 2
btrfs 987136 0
xor 24576 1 btrfs
hid_generic 16384 0
usbhid 49152 0
raid6_pq 102400 1 btrfs
dm_mirror 24576 0
dm_region_hash 24576 1 dm_mirror
dm_log 20480 2 dm_region_hash,dm_mirror
rtsx_pci_sdmmc 24576 0
i915_bpo 1302528 6
intel_ips 20480 1 i915_bpo
i2c_algo_bit 16384 1 i915_bpo
drm_kms_helper 155648 1 i915_bpo
psmouse 131072 0
syscopyarea 16384 1 drm_kms_helper
sysfillrect 16384 1 drm_kms_helper
sysimgblt 16384 1 drm_kms_helper
fb_sys_fops 16384 1 drm_kms_helper
r8169 81920 0
nvme 65536 4
drm 364544 7 i915_bpo,drm_kms_helper
mii 16384 1 r8169
rtsx_pci 53248 2 rtsx_pci_ms,rtsx_pci_sdmmc
ahci 36864 0
libahci 32768 1 ahci
wmi 20480 0
pinctrl_sunrisepoint 28672 0
i2c_hid 20480 0
video 40960 1 i915_bpo
pinctrl_intel 20480 1 pinctrl_sunrisepoint
hid 118784 3 i2c_hid,hid_generic,usbhid
fjes 28672 0
Anyone any ideas on how to fix this? Thanks a lot in advance!
Edit: I received one possible solution for certain cards by System 76:
sudo apt install exfat-utils
Which unfortunately does not work for all card types, mainly not for ultra/elite/extreme cards (like mine). But maybe a solution for some.