mones2/21.NICドライバ移植/05.初期化処理をコピペコンパイル


Top / mones2 / 21.NICドライバ移植 / 05.初期化処理をコピペコンパイル

これは何か

if_ed.cの初期化処理をNE2000.cppにコピペしてコンパイルします。

目次

成果物

まだまだコンパイルエラーあり。汚いのは見逃してください
ed_start_locked, calloutreset以外はコンパイル通った
もはや全体移植になってきた。気が滅入ったので今日はここまで
進んだが後退したようにも見える

作業

  1. ed_init(void *xsc), ed_init_locked(struct ed_softc *sc)をコピペ
  2. if_edvar.hをコピー
  3. もろもろコメントアウトする(あとでdiffを提示)
  4. 大事そうなifnetという構造体は実態がつかめない→# define ifnet net_device
  5. net_deviceという構造体のgrepしても居場所が分からない(でもとりあえず先に進む)
  6. if_edreg.hをコピー
  7. bus_space_tag_t構造体が必要なので、src/sys/i386/include/_bus.hをコピー
  8. src/sys/sys/types.hを _types.hとしてコピー→厄介ごとが多いので必要なものだけコピー作戦で
  9. ed_setrcr(struct ed_softc *sc)も必要なことに気づきコピペ
  10. ed_start_locked(ifp)が手ごわそうなのでコメントアウト。後で考える
  11. callout_resetもカーネル依存っぽい。コメントアウト。後で考える
  12. ed_start_locked作業開始
    BPF_MTAP(ifp, m0);をコメントアウト(必要ないことを祈る)
  13. ed_pio_write_mbufs(sc, m, buffer);コピペ

愚痴

ed_nic_outb(sc, ED_P0_CR, sc->cr_proto | ED_CR_STP);

という行に対して以下のコンパイルエラーに

error: 'struct ed_softc' has no member named 'port_bst'

マクロの弊害だろうか。まぁいいや。

コメント

コメントはありません。 コメント/mones2/21.NICドライバ移植/05.初期化処理をコピペコンパイル?

お名前:

MENU

now: 2

リンク


最新の20件
2018-09-03 2018-05-09 2017-09-29 2017-01-10 2016-12-11 2016-10-04 2016-08-14 2016-06-05 2016-05-29 2016-04-15 2015-12-28 2013-02-25 2013-02-21 2013-02-20 2013-02-12 2013-02-11 2013-02-10
最新の20件
2010-02-01 2010-01-31 2010-01-30 2010-01-29 2010-01-16

Counter: 3484, today: 1, yesterday: 0

添付ファイル: fileuip-0.9-mona-20060111.zip 478件 [詳細] fileuip-0.9-mona-2006010903.zip 452件 [詳細] fileuip-0.9-mona-2006010902.zip 472件 [詳細] fileuip-0.9-mona-20060109.zip 463件 [詳細]

リロード   新規 編集 凍結 差分 添付 複製 改名   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS

Last-modified: 2008-03-28 (金) 15:48:00 (3829d);  Modified by mona
PukiWiki 1.4.6 Copyright © 2001-2005 PukiWiki Developers Team. License is GPL.
Based on "PukiWiki" 1.3 by yu-ji
Powered by PHP 5.2.17
HTML convert time to 0.107 sec.