一応認識したけど・・・

手元にある Team 製の TG032G0SD26A (32GB SDHC Class6) が認識しない件ですが、調べてみた結果、CMD2 (SEND_ALL_CID) のレスポンスで CRC エラーが出ていたのが原因でした。

ただ、CRC エラーが出ていると言っても、エラーのあったレスポンスと、SL-C760 でエラー無く取得できた CMD2 のレスポンスは全く同じでした。

ということで、ひとまず CMD2 の CRC エラーを無視する修正を加えたところ、カードを認識し、Read/Write も問題なく動作するようになりました。

とりあえず CMD2 以外はちゃんと動いているようです。

ただ、エラーを無視しているだけで、エラーが出ていることには変わりないので、ちょっと不安ということもあり、ひとまず修正版のドライバ公開は差し控えます。

私もしばらく使ってみて問題が無いことが確認でき、他にもこういった症状の方が出てきたら公開しようと思います。

関連した記事:


8 comments

  1. 本件、error時には、CIDも読めていない状態だったのでしょうか?

    友人のSILICONPOWER製32GBが読めなかった原因がいまいちわからないので興味あったりします
    CID (/proc/driver/mmcsd/00/raw) が、読めたかどうかだけでも知りたいなと。
    許されるなら、CMD2のCRC errorを無視する奴で再度試してみたいところですが、自分の所有物ではないので試す機会があるかしら???
    曖昧な記憶と辿ると、当時はCIDも読めなかった気がします

    • はい。CID の取得がエラーだったので、CID も読めない状態です。

      状況を再現させて試していないので、/proc/driver/mmcsd/00/raw が読めるか読めないかは想像になりますが、メディアの認識をしていないので、抜けていると同じ状態で、raw を読み込んでも値が取得できないと思います。

      • /proc/driver/mmcsd/00/detectは1になるけど、/proc/driver/mmcsd/00/rawが空っぽという状態だとしたら、
        先日試した友人のSILICON POWER SDHC 32GBと同じ様な現象ですね
        CRCエラーを無視するversionで動作確認してみたかったりするのでした
        翌々考えれば、CIDが読めていないのだから、Partition以前の問題ですね

          • 公開ありがとうございますです。改めてdownloadして確認してみたいと思います。
            ただ、気づいたのがちょと遅かったので、結果はしばらくおまちください。

            自分の所有物ではないので、もしかしたら確認する機会が無いかもしれません。その時はごめんちゃいです。
            しかしながら、出来る限りreport出来る様に努力いたします

            つか、MIDまで含める様な、製品reportが標準になるのは難しいのでしょうかねぇ?

            ベンダ名だけだと、当てにならないからなぁ(過去の経験上

          • Report はいつでもいいですよ。

            私はあまりハードに SD を使っていないせいか、
            あまりノーブランドや怪しいメーカーでも困った経験が無いので
            ベンダーとか気にしたことが無いです。
            なので、SD ブランドに関しては素人です (^^;

            Read/Write 性能とか寿命とか細かく比べると違ってくるんでしょうね。

  2. 素晴らしいドライバーの提供、本当にありがとうございます。
    これでZaurusを相当延命出来ます。

    最初に 2.1-for-Cxx00_arm.ipk をインストールしたところ、当方所有の
    UMAX SD 512MB 60x
    PhotoFast 非SDHC 4GB 150x
    Sandisk SDHC 8GB CLASS 4
    A-DATA 16GB CLASS 6
    は、正常に認識しましたが
    Green House GH-SDHC32G6D が認識しませんでした。
    そこで、2.1-for-Cxx00_arm.ipk 削除後、再起動を行い、
    2.1a-for-Cxx00_arm.ipk インストールしたらすべてのSDカードが認識しなくなりました。
    仕方ないので、2.1a-for-Cxx00_arm.ipk を削除後再起動を行い、
    2.1-for-Cxx00_arm.ipk インストールしたら何故か最初は認識しなかったGH-SDHC32G6Dも認識するようになりました。
    しばらくこれで使用させていただきます。
    御礼と状況のご報告まで

    • はじめまして、のっくさん。

      うーん。何とも不思議ですね。
      2.1 も 2.1a もアンインストールすれば何も残さずきれいに消えてしまうはずなので、交互にインストール・アンインストールすることで症状が変わるのは理解しがたいですね。

      原因はさっぱりわかりません(すいません)が、とりあえず動作しているようでよかったです (^^;

コメントを残す

メールアドレスが公開されることはありません。

*