#navi(contents-page-name): No such page: Linux


PCMCIA

Beta 00 Release !! (2005-04-12)

一応できた?cheekyのkernel2.6だとOopsが出てるが…。他のマシン&kernel2.4は大丈夫みたい。

Firmware Debug Command

KS2970 11b MAC
2970-PCMCIA-0.26 [Feb 09 2005  14:35:09]
2970PC>?
        ?                                       help
        D(B/W/D) (start), (end)                 memory dump
        W(B/W/D) addr, data                     memory write
        R(B/W/D) addr                           memory read
        BB[R/W/D/I]                             Baseband access
        CH (number)                             RF ch(1..14)
        E[R/W/D/CL]  (addr), (data)             eeprom access
        HOST                                    Host i/f
        MAC                                     MAC inf
        MACADDR                                 mac address
        MPL                                     pool
        PHY                                     PHY inf
        RATE (1/2/5/11)                         Tx rate
        SM                                      staion inf
        TIM                                     timer
        TX                                      frame tx debug
        VER                                     version

Linux Network Device

Linux Driver 設計

せっかく新規で書くので、きちんと設計したい。(時間ないけど…) やっぱ設計は大事ですよ。アホな設計のクサレcodeは、読みにくいし修正もしにくい。後々の自分自身の為にもキチンと設計したいね。KSCのドライバの場合、モジュールとして分けるなら、デバイス依存部分(MAC CHIPのI/F)、MAC-HOST I/F Protocol 部分、あと、network_device I/F 部分ってとこかな。愚痴なんですけど、いつもWindowsのNDISドライバとか提供してもらってるのだが、もうちょっと他のOSにポーティングすること、考えて書いてほしいよな…。あんまり参考になんないんだよね。そういう俺も思いっきりCPU依存なCODEを書いていますけど…。少なくともBigEndianなCPUじゃ絶対動かない…。

Linux Driver Loading

PC card service(cardmgr) にドライバをロードしてもらいたい場合、PCMCIA Card Configuration DataBase file の "/etc/pcmcia/config"に記述しておく。このファイルはadd-on driver用に"/etc/pcmcia/*.conf"も読み込むようになっているので、"/etc/pcmcia/hoge.conf"を作成し設定を記述しておいてもOK。DataBase fileを読み込ませるには、PC card serviceの再起動が必要。

Linux Driver 検討項目

  1. "Hotplug firmware loading support (EXPERIMRNTAL)"のカーネルオプションでMAC firmwareのロードはできる?
    Hotplugは、USB,1394,PCI(CardBus)関係の機能なので、PCMCIAじゃ無理?
    このオプションがカーネルのコードに入ったのは、2.4.23以降。
    include/linux/firmware.h
    lib/firmware_class.c
  2. wireless-toolsについて
    wireless-toolsは、現在一部の機能しかサポートしていない。(iwconfig)
    iwconfig
    iwevent
    iwgetid
    iwlist
    iwpriv
    iwspy
  3. WPA(Wi-Fi Protected Access)について
    なんか仕様書読むと、この機能がはいっているみたいだなー。
    やっぱサポートしなきゃいけない?よね〜。
  4. サポートするカーネルバージョンについて
    CardBusのときは、CardBusデバイスのサポートが2.4以降だったから、
    あまり考えなかったが、PCMCIAの場合どうなのでしょ?
    PCカードのサポートが入ったのはいつ?
    2.4からだっけ?じゃ、2.4系と2.6系ってことでいいのかな?
    いまどき2.2系使ってますとかいう奴は、いないだろ…

KS2916

KS2101


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS