[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
TDK CF works fine (was Re: TDK 96M CF doesn't work?)
- Subject: TDK CF works fine (was Re: TDK 96M CF doesn't work?)
- From: Kenji Aoyama / 青山健治<aoyama@nk.mcu.or.jp>
- To: port-hpcmips-ja@jp.netbsd.org
- Date: Mon, 10 Jul 2000 21:21:47 +0900
- Message-ID: <14697.49115.996733.72159A@robby.nk.mcu.or.jp>
- In-Reply-To: In your message of "Mon, 26 Jun 2000 22:09:10 +0900"<14679.22006.478844.72159A@robby.nk.mcu.or.jp>
- References: <14676.35632.270646.72159A@robby.nk.mcu.or.jp><200006260229.LAA16285@shin1.sm.sony.co.jp><14679.22006.478844.72159A@robby.nk.mcu.or.jp>
- Delivered-To: mailing list port-hpcmips-ja@jp.netbsd.org
- Mailing-List: contact port-hpcmips-ja-help@jp.netbsd.org; run by ezmlm-idx
- User-Agent: Wanderlust/1.0.3 (Notorious) SEMI/1.13.4 (Terai) FLIM/1.12.7(Yūzaki) MULE/2.3 (SUETSUMUHANA) (based on Emacs 19.34)
あおやまと申します。
TDK の CF が使えないと以前レポートしましたが、dev/pcmcia/pcmcia_cis.c
を修正して動くようになりました。動かなかった原因は、TDK の CF の CIS
tuple がうまく読めなかったからだったようです。
TDK の CF の tuple は以下のようになっています。
At Mon, 26 Jun 2000 22:09:10 +0900,
Kenji Aoyama / 青山健治 <aoyama@nk.mcu.or.jp> wrote:
> === ブート時のログ ===
(略)
> pcmcia0: CIS tuple chain:
(略)
> CISTPL_VERS_1
> 15 0b 04 01 54 44 4b 20 54 43 5f 4d ff
+0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c
ソースを見ると、ここの文字列(上記+4以降)の最後は 0x0 があってから 0xff
があることを仮定しているようです。実際他のカードではそうなっていました。
そこで、下記のように修正してみたところ、きちんとブートして動くようにな
りました。
以上ご報告まで。
-------- パッチここから
--- pcmcia_cis.c.orig Mon Feb 21 12:26:41 2000
+++ pcmcia_cis.c Sun Jul 2 18:13:14 2000
@@ -778,8 +778,19 @@
for (count = 0, start = 0, i = 0;
(count < 4) && ((i + 4) < 256); i++) {
ch = pcmcia_tuple_read_1(tuple, 2 + i);
+#if 0
if (ch == 0xff)
break;
+#else
+ if (ch == 0xff) {
+ if (i > start) {
+ state->card->cis1_info_buf[i] = 0;
+ state->card->cis1_info[count] =
+ state->card->cis1_info_buf + start;
+ }
+ break;
+ }
+#endif
state->card->cis1_info_buf[i] = ch;
if (ch == 0) {
state->card->cis1_info[count] =
-------- パッチここまで
--
Kenji Aoyama / aoyama@nk.mcu.or.jp (at home, UUCP)