FreeBSDドライバ移植の続き1

日記に書くのを忘れてましたが、ed_nic_inb(sc, port), ed_nic_outb(sc, port, value)をMonaで動くようにしました。
この部分は肝の肝なのでソースを読みました。
それで昨日のその続き


freebsdディレクトリを作ってヘッダを格納することにした。
bsd_types.h・・・u_charとかそういうやつを定義
if_edreg.h・・・レジスタ定義。これはそのまま利用


static void ed_stop_hw(struct ed_softc *sc)がとりあえずビルドできそうなのでやってみる。
できた。


次にcallout系の関数の意味についてsrc/sys/sys/callout.hを見てみる
どうやらこれは、指定したtick後に関数を読んでくれる物っぽい。(適当)。
その際にmutexなどのロックもできるみたい。
softclockでperiodicalに関数を呼ぶのかな。今日は時間切れ。

FreeBSDのドライバに関する簡単な資料

http://www.db.is.kyushu-u.ac.jp/rinkou/program/dev.pdf