硬件信息

硬件信息

硬件信息

  • 笔记本电脑型号:Sony Vaio Pro 13
  • 有问题的硬件:内置 Realtek Semiconductor Co., Ltd. RTS5209 PCI Express 读卡器

问题描述

问题是,如果我将 SD 卡插入读卡器启动,我的 Gentoo 会正确加载内核模块并检测到 SD 卡,根据 dmesg 输出将其分配给 /dev/mmcblk0,XFCE 还会在桌面上显示 SD 图标,因此我可以毫无问题地安装它。

但如果我在读卡器中没有任何 SD 卡的情况下启动,并在启动后插入 SD 卡,则不会发生任何情况。没有检测到 SD 卡,dmesg 没有显示任何内容。

由于SystemRescueCD(也是基于Gentoo)按预期正确工作(在未插入SD卡的情况下启动,启动后插入SD卡,SystemResuceCD可以正确检测到它并将其分配给/dev/mmcblock0。所以我想我一定错过了一些配置我的Gentoo。

我尝试过什么

我尝试比较两种配置的 lsmod 输出,发现如果我在插入 SD 卡的情况下启动,将加载以下附加内核模块。

rtsx_pci_sdmmc         13679  0
rtsx_pci_ms             7218  0
mmc_core               91689  2 mmc_block,rtsx_pci_sdmmc
memstick                6896  1 rtsx_pci_ms
rtsx_pci               31487  2 rtsx_pci_ms,rtsx_pci_sdmmc 

当我使用 SystemRescueCD 时,我将 SD 卡插入读卡器后也确认了这些模块已加载。

我也尝试在我的 Gentoo 系统上手动加载这些模块,但是加载它们后没有任何反应,dmesg 中没有新的打印输出,仍然没有检测到 SD 卡。

lspci输出

00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 09)
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 09)
00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 09)
00:14.0 USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
00:16.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04)
00:1b.0 Audio device: Intel Corporation 8 Series HD Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 3 (rev e4)
00:1c.3 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 4 (rev e4)
00:1c.4 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 6 (rev e4)
00:1d.0 USB controller: Intel Corporation 8 Series USB EHCI #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation 8 Series LPC Controller (rev 04)
00:1f.3 SMBus: Intel Corporation 8 Series SMBus Controller (rev 04)
01:00.0 Network controller: Intel Corporation Wireless 7260 (rev 6b)
02:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5209 PCI Express Card Reader (rev 01)
03:00.0 SATA controller: Samsung Electronics Co Ltd XP941 PCIe SSD (rev 01) 

内核配置

  1. MMC/SD/SDIO 卡支持内的所有内容(MMC 调试/MMC 主机时钟门控/MMC 主机测试驱动程序除外)均编译为内核模块。
  2. CONFIG_MEMSTICK=m
  3. CONFIG_MEMSTICK_REALTEK_PCI=m

我完全陷入困境,不知道下一步应该采取什么措施来解决这个问题,我现在应该检查哪里?

答案1

弄清楚我应该启用以下内核配置:

CONFIG_HOTPLUG_PCIE=y
CONFIG_HOTPLUG_PCI=y
CONFIG_HOTPLUG_PCI_ACPI=y

根据我的旧配置添加这三个配置后,一切都按预期工作。

相关内容