我最近在 HP Envy m7-j020dx 上安装了 Ubuntu 14.04。目前我遇到的唯一问题是似乎根本无法检测到内置 SD 卡读卡器。我曾尝试使用 Google 寻找解决方案,但几乎找不到如何解决此问题的方法,而且我尝试过的解决方案均无效。不存在外部问题,因为 Windows 8 中一切运行正常。
有趣的事实:在 14.04 Live CD 上可以检测到 SD 卡,但在其他地方则不能。
插入和不插入 SD 卡时,df -h
结果如下:
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 154G 35G 112G 24% /
none 4,0K 0 4,0K 0% /sys/fs/cgroup
udev 3,9G 4,0K 3,9G 1% /dev
tmpfs 792M 1,4M 791M 1% /run
none 5,0M 0 5,0M 0% /run/lock
none 3,9G 28M 3,9G 1% /run/shm
none 100M 32K 100M 1% /run/user
/dev/sda2 256M 102M 155M 40% /boot/efi
/home/ramzes/.Private 154G 35G 112G 24% /home/ramzes
无效的方法:
- 将 SD 卡插入读卡器后重新启动
sudo modprobe rts5139
sudo modprobe rts5229
(严重错误:未找到模块)- 这
- 这这让我在接下来的 4 个小时里一直在修复分区类型
- 谷歌首页上讨论这个话题的任何内容
一些信息
- 核心:
Linux envy 3.13.0-30-generic #55-Ubuntu SMP Fri Jul 4 21:40:53 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
lspci -v
带卡输出:http://pastebin.com/VEHik10j- 相关位(可能):03:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5227 PCI Express Card Reader (rev 01) Subsystem: Hewlett-Packard Company Device 1965 Flags: fast devsel, IRQ 19 Memory at b1000000 (32-bit, non-prefetchable) [size=4K] Capabilities: [40] Power Management version 3 Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [70] Express Endpoint, MSI 00 Capabilities: [100] Advanced Error Reporting Capabilities: [140] Device Serial Number 00-00-00-01-00-4c-e0-00 Capabilities: [150] Latency Tolerance Reporting Capabilities: [158] L1 PM Substates
dmesg
输出:http://pastebin.com/daVuzg2g
答案1
我的天,我终于让它工作了。
好的,这就是我所做的。
从最后一行lspci
可以清楚看出我需要 RTS5227 驱动程序。但是,我在网上找不到这个驱动程序。
相反,我采用了 RTS5229 驱动程序来自 Realtek 网站并执行以下操作。
我上传了这些文件,以便作为 RTS5227 驱动程序供有需要的人使用。
下载链接已过期,因此源代码已被放入 GitHub 仓库,其中包含这些更改以及一些其他更改,以使其在 20.04 内核 5.4.0 上运行。
对于那些不信任该链接或想手动执行此操作的人,我做了以下事情:
进入rtsx.c
文件并从中删除以下代码片段:
__devinit
__devexit
__devexit_p
.proc_info = proc_info
通过在行前添加 // 来注释掉第 266 行。
然后,在 中rtsx.h
,更改
#define CR_DRIVER_NAME "rts5229"
为
#define CR_DRIVER_NAME "rts5227"
。
然后,在 Makefile 中,更改TARGET_MODULE := rts5229
为TARGET_MODULE := rts5227
。
完成这些之后,您应该能够正常安装驱动程序,如下所示:
make
sudo make install
sudo depmod
sudo modprobe rts5227
现在您应该可以在 nautilus 和启动器(在 Ubuntu 上)中看到 SD 插槽。
希望对您有所帮助,感谢大家的支持!!!
答案2
正如我今天所报道的Ubuntu 14.04 Realtek Semiconductor Co., Ltd. RTS5227 PCI Express 读卡器无法正常工作:
# modprobe -r rtsx_pci
# modprobe rtsx_pci
使用 3.9 以上的内核就可以了。需要调查一下为什么它会被禁用。