1999-06-28 DP8393X SONIC Driver
一枚仕上げたので、ふたたび news5000 作業に戻る。
割り込みはややこしそうなので置いとく。もうちょっと気力が充実している時にやろう。
で、sonic ether のドライバを書かなきゃなぁ、と思って、ふと
locate sonic とか locate if_sn とかしてみると...
なんだ。あんじゃん。
/src/NetBSD-1.4/sys/arch/mac68k/dev/if_sn.c /src/NetBSD-1.4/sys/arch/mac68k/dev/if_snreg.h /src/NetBSD-1.4/sys/arch/mac68k/dev/if_snvar.h /src/NetBSD-1.4/sys/arch/mac68k/nubus/if_sn_nubus.c /src/NetBSD-1.4/sys/arch/mac68k/obio/if_sn_obio.c /src/NetBSD-1.4/sys/arch/pica/dev/if_sn.c /src/NetBSD-1.4/sys/arch/pica/dev/if_sn.h
ほんとに sonic ether の sonic ? と思ってちゃんと中身を見てみる。
National Semiconductor DP8393X SONIC Driver
ホンモノだ....
しかも同じものが違う実装で二つもあるよ。
嬉しくて泣けてくる...。
さらに mac68k のほうは obio と nubus の二つの bus から、
ちゃんと bus_space つかって一つの dev/if_sn.c を使ってくれている。
さらに泣けてくる...。
とゆーことは、newsmips/apbus/if_sn_ap.c を作って bus_space_map して、
あとは if_sn.c 内の関数を呼べばいい?
あ、でも DMA とか L2Cache とかのカラミがあるのか...それを考えると
同じ mips3 の pica のをもってくるほうが楽そうやね。
bus_space とか bus_dma 使って綺麗に作れ、って話もあるけど。
EOF