
私はカードリーダーが内蔵されたラップトップを持っています。ここ 1 年ほど、ハードウェアよりもソフトウェアに関係していると思われる奇妙な問題に対処してきました。
私はデュアルブートでウィンドウズ7そしてウブントゥ 14.04、両方とも 64 ビットです。Windows では、SD カードは問題なく動作します。動作はやや遅いですが、常にエラーなく完了します。
Ubuntu では突然停止し、dmesg
ターミナルに入力すると次のメッセージが表示されます。
[12535.092927] mmcblk0: mmc0:b368 SD 1.88 GiB
[12535.096167] mmcblk0: p1
[12653.904243] mmc0: Timeout waiting for hardware interrupt.
[12653.904974] mmcblk0: error -110 transferring data, sector 158279, nr 1024, cmd response 0x900, card status 0xc00
[12663.930682] mmc0: Timeout waiting for hardware interrupt.
[12663.930823] end_request: I/O error, dev mmcblk0, sector 158279
[12663.930838] end_request: I/O error, dev mmcblk0, sector 158287
[12663.930845] end_request: I/O error, dev mmcblk0, sector 158295
[12663.930852] end_request: I/O error, dev mmcblk0, sector 158303
[12663.930858] end_request: I/O error, dev mmcblk0, sector 158311
[12663.930864] end_request: I/O error, dev mmcblk0, sector 158319
[12663.930871] end_request: I/O error, dev mmcblk0, sector 158327
[12663.930877] end_request: I/O error, dev mmcblk0, sector 158335
[12663.930883] end_request: I/O error, dev mmcblk0, sector 158343
[12663.930889] end_request: I/O error, dev mmcblk0, sector 158351
[12673.957122] mmc0: Timeout waiting for hardware interrupt.
[12674.002269] mmcblk0: error -110 transferring data, sector 159303, nr 1024, cmd response 0x900, card status 0xc00
これは、どれでもSDカードのどれでもストレージサイズはどれでも特に大きなファイルや大量のファイルの場合、転送に時間がかかります。Ubuntu パネルの SD カード アイコンを右クリックし、Safely remove
SD を取り出す前にクリックし、エラーがないように SD を再フォーマットしましたが、それでも問題が発生します。USB フラッシュ ドライブは SD カードと同じ形式 (FAT32) でフォーマットされており、すべて正常に動作します。Windows ではカードの読み取り/書き込みが問題なくできるのに、Ubuntu ではできないのはなぜですか?
出力lspci
(カードリーダーのみ):
02:00.0 Ethernet controller: Broadcom Corporation NetLink BCM57785 Gigabit Ethernet PCIe (rev 10)
02:00.1 SD Host controller: Broadcom Corporation BCM57765/57785 SDXC/MMC Card Reader (rev 10)
02:00.2 System peripheral: Broadcom Corporation BCM57765/57785 MS Card Reader (rev 10)
02:00.3 System peripheral: Broadcom Corporation BCM57765/57785 xD-Picture Card Reader (rev 10)
答え1
私はあなたのハードウェアを持っていませんが、Broadcom とそのドライバーで同様の問題がありました。非常にイライラしました。それはさておき、これは試してみる価値があるかもしれません:
ファイルを作成し、次の文字列を書き込みます
options sdhci debug_quirks=0x40
:sudo sh -c 'echo options sdhci debug_quirks=0x40 >> /etc/modprobe.d/sdhci-pci.conf'
次に、再起動するか、モジュールを再ロードします。
sudo modprobe -r sdhci-pci sdhci sudo modprobe sdhci-pci
バグトラッカーでは、フルスピードが得られない可能性があると記載されていますが、試してみる価値はあります。
(からhttps://bugzilla.kernel.org/show_bug.cgi?id=73241そしてhttp://www.linuxtechtips.com/2013/08/sd-mmc-ms-pro-card-reader-not-working.html)
答え2
/etc/modprobe.d/sdhci-pci.conf
私は LinuxLite でこの問題に直面しました。解決策は、次の内容のファイルを作成することでした:
options sdhci debug_quirks=0x40 debug_quirks2=0x4
このオプションは0x4
超高速から高速まで速度を低下させますが、操作可能なカードがないよりはましです。
答え3
カード コントローラに関する情報を Google で検索すると、カーネルが原因であると指摘する他の投稿が見つかります。参照できる特定のバグ レポートが手元にないため、アップストリームに修正プログラムが存在するかどうかは断言できませんが、入手可能かどうかを調べる簡単な方法があります。最新のカーネルをインストールして起動し、SD カードの問題が改善されたかどうかを確認してください。コンピューターに害はありません。必要ない場合はいつでも削除できます。
実行してapt-cache search linux-generic-lts
、他の利用可能なカーネル パッケージを確認します。リポジトリで確認した最新のものは linux-generic-lts-wily です。sudo apt-get install linux-generic-lts-wily
その後、新しいカーネルで再起動し、SD ドライブを再度テストできます。