alaudaドライバーをmtdデバイスに接続する


8

USBカードリーダーのオリンパスMAUSB-10を持っています。Linux alaudaドライバーを使用して、SmartMediaまたはxDカードに直接フラッシュアクセスできます。これは、標準のUSB大容量ストレージデバイスとして公開するだけの一般的なカードリーダーとは異なります。

Linuxカーネルには、FTLを実行してこれを標準のブロックデバイスとして公開するドライバーがありますが、直接フラッシュアクセスしたいです。さまざまなユーティリティを使用して、mtd-tools直接読み取り、書き込み、および消去できるかどうか疑問に思いました。

だから、デバイスが認識されlsusb、そしてドライバaluadaおよびnand_eccロードされます。しかしcat /proc/mtd、利用可能な別のMTDデバイスは表示されません/dev。また、に追加のデバイスは表示されません。新しいmtdデバイスを作成し、それをalaudaドライバーに接続するにはどうすればよいですか?

回答:


2

Linuxカーネル(drivers/mtd/nand/alauda.c)でドライバーのソースコードを見ると、mtdデバイスの名前は "alauda"であることがわかります。

たとえば、cmx270_nand.cでは、mtd名はcmx270-0です。それに関するカーネルログ情報では、次のようになります。

Creating 1 MTD partitions on "NAND 512MiB 3,3V 8-bit":
0x00000000-0x20000000 : "cmx270-0"

dmesg(grep alauda、MTD)を確認し、xDカードが正常に認識された場合は、MTDデバイスにアクセスするために/dev/mtdblockX/dev/mtdXで作成してみてくださいmknod


お返事ありがとうございます。xDカードは正常に認識されました(/ dev / sdeとして表示されます)。 mknod /dev/mtd0 c 90 0何もせず、mtdinfoエラー19が表示されます(そのようなデバイスはありません)。 /proc/mtdMTDデバイスは表示されません。lsmod | grep alaudaことが明らかmtdとがmtdchar両方ともロードされます。何か案は?
LawrenceC

1
  1. ums-alaudaドライバーを削除(rmmod)
  2. デバイスを接続した後、モジュールalaudaのプローブプリントがdmesg経由で表示されるかどうかを確認します。
  3. デバイス/ dev / mtd0が表示されない場合は、rmmod alaudaを実行し、再びそれをinsmod
    • mknodを使用する必要はありません。(「ふた」を閉じてみてください)。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.