ノートブックに内蔵されたカードリーダーにSDカードを挿入しましたが、システムはそれを認識しません。アダプタを含む2枚のmicro-SDカードと1枚のSDカードを試してみましたが、どちらもWindowsで正常に動作します。つまり、カードリーダーやSDカードに関する問題を排除できます。外部SDカードリーダーを介してUSB経由でSDカードにアクセスできるため、LinuxではSDにアクセスできません。
カーネルバージョン6.7.9-200.fc39x86_64がインストールされているFedora Linux 39ワークステーションを実行しているHP Pavilionゲーム用ノートブック(dk1xxx)があります。私のラップトップは私のカードリーダーを認識します。
tygoe@fedora:~$ lspci --nnvv
...
08:00.0 Unassigned class [ff00]: Alcor Micro AU6625 PCI-E Flash card reader controller [1aea:6625]
Subsystem: Hewlett-Packard Company Device [103c:8742]
Control: I/O- Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 18
Region 0: Memory at a5300000 (64-bit, non-prefetchable) [disabled] [size=4K]
Capabilities: <access denied>
Kernel driver in use: alcor_pci
Kernel modules: alcor_pci
...
起動時にlsusb
SDカードが認識されず、またはlsblk
に見つかりませんsudo fdisk -l
。
tygoe@fedora:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 600M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 464.2G 0 part /home
/
zram0 252:0 0 8G 0 disk [SWAP]
nvme0n1 259:0 0 476.9G 0 disk
├─nvme0n1p1 259:1 0 100M 0 part
├─nvme0n1p2 259:2 0 16M 0 part
├─nvme0n1p3 259:3 0 475.7G 0 part
├─nvme0n1p4 259:4 0 582M 0 part
└─nvme0n1p5 259:5 0 530M 0 part
tygoe@fedora:~$ sudo fdisk -l
Disk /dev/sda: 465.76 GiB, 500107862016 bytes, 976773168 sectors
...
Disk /dev/nvme0n1: 476.94 GiB, 512110190592 bytes, 1000215216 sectors
...
Disk /dev/zram0: 8 GiB, 8589934592 bytes, 2097152 sectors
...
接続後はファイルがなく、mmcblkデバイス/media
も/dev
ありません。
確認中にdmesg
エラーが表示されます。まず、SDカードの初期化に失敗し、約10秒ごとに「ハードウェア割り込みの待ち時間が超過しました」というメッセージが表示されます。このプローブ:
[ 4446.354315] mmc0: error -110 whilst initialising SD card
[ 4456.593240] alcor_sdmmc alcor_sdmmc.0: Timeout waiting for hardware interrupt.
[ 4466.833227] alcor_sdmmc alcor_sdmmc.0: Timeout waiting for hardware interrupt.
[ 4477.074294] alcor_sdmmc alcor_sdmmc.0: Timeout waiting for hardware interrupt.
[ 4487.313135] alcor_sdmmc alcor_sdmmc.0: Timeout waiting for hardware interrupt.
[ 4497.553234] alcor_sdmmc alcor_sdmmc.0: Timeout waiting for hardware interrupt.
[ 4507.793392] alcor_sdmmc alcor_sdmmc.0: Timeout waiting for hardware interrupt.
[ 4518.033422] alcor_sdmmc alcor_sdmmc.0: Timeout waiting for hardware interrupt.
[ 4528.273424] alcor_sdmmc alcor_sdmmc.0: Timeout waiting for hardware interrupt.
後ろにスクロールすると、次の内容が表示されます。 (これと関係があるかどうかはわかりませんが、そうかもしれません。)
[ 1141.382030] alcor_sdmmc alcor_sdmmc.0: Timeout waiting for hardware interrupt.
[ 1181.255355] pcieport 0000:00:1d.6: AER: Corrected error message received from 0000:00:1d.6
[ 1181.255368] pcieport 0000:00:1d.6: PCIe Bus Error: severity=Corrected, type=Data Link Layer, (Transmitter ID)
[ 1181.255370] pcieport 0000:00:1d.6: device [8086:06b6] error status/mask=00001000/00002000
[ 1181.255371] pcieport 0000:00:1d.6: [12] Timeout
[ 1232.518117] alcor_sdmmc alcor_sdmmc.0: Timeout waiting for hardware interrupt.
誰でも私を助けることができますか?これ(カーネルに含まれる)ドライバのソースコードです(誰かがこれで何かをすることができる場合)。