まとめ †
- ふたつめはひとつめにくらべ楽だった。
- リングバッファの意味ないじゃんとか言わないのは大人の良識ですよ。(だけどこれはちゃんと後で考えよう)
寄り道します。 †
- ごめんなさい。貧乏なのでタダという言葉に弱いんです。
- ドライバをつくってみることで必然的に再度基本的なところを見直すことになることを期待しています。
とりあえずつくります †
- きたるべきDMA改良に備えます。DMA関連を括りだして、Classに分離しするところまでやります。
- 基底クラスに、アロケート用関数を置いて、DMAドライバはinitからこれを呼ぶ。んでPIOドライバは呼ばないということでいきます。先頭アドレス、サイズはprotected。
- VirtualPC,VMware,Qemuの順序で検出します。無ければLoopbackです。Bochsは切りました。<<3541>>
- DMAのAPI修正を反映した(まだサイズは増やしてないです)
- やはり割り込みハンドリングが怪しい(テスト鯖をecho用にしたのは正解だった)<<3564>>
- IntelのH.W.Ref.ManualをみてROMアドレスマップが書いてあるかとおもたが甘かった。App.Note嫁と最初から家。つーかもっとわかりやすく書いとけよと小一時間(ry。こういうのはAMDの方が親切ですな。CPUの最適化の資料とかもAMDの方が好みだったりしますが。
- よく考えたらこれはIntelのせいじゃないね。DEC時代のドキュメント整形しただけぽ。
- さらによく考えたら、読み出し方法がすべてVPCで実装されているとは限らない罠。21143なら幸せなのに...
- さらによく考えると待ちタイミングを数百nsecオーダーで指定しなきゃなんないみたいだけどsleepで行けるかな。
- MACまで読めた。分かれば早い。(DECのどきゅめんとはつんでれ)
- タイミングの件は実機でまずいかも。 実は21140Aの板は持っているのであとで試してみよう。
- 初期化その2。ざっくりとしたスケルトンの作成までで、まだ動かない。21140Aと21143ではCSR6の中身など、すこし違うみたいなので要注意。なぜ21143をみてたかというと、PDFに目次があるからという理由だけ。コメントにだいたいの場所を入れたので、21140Aに乗り換えよう。
- まだARPが返せないからHost側のARPはスタティックじゃないとだめ。<<3576>>
- AMDのときはどうやったんだっけなー、最初はpromiscuous だっけかな。もう忘れてるぉ
- ネット通販で注文していたTCPの本が来た。RFC793を直接読むより楽そう。(Stevensは高いので見送り)
- あ、SetupframeもDMAできるとこじゃないとだめじゃん(おもいきりボケかましてしまった)
- また失敗してしまった。コミット時のコメントでうっかり改行を削ってしまう。
- 不完全ながら割り込みまで来ましたよと。pingして割り込みキターみたいなこのあたりが一番楽しい。てか、オレばっかりこんな楽しくていいのかなーw<<3595>>
- VirtualPCのコンソールをバイパスする方法ないですかねー。起動ボタン押すのがめんどう。ちなみに、make から start mona.vmc とだけ書いたbatchを呼んでるですが、たまにすぐに起動することがあるけど、再現させられない。
- CSR0,7を21143レジスタアサインから21140へ修正。結構違う。
- 割り込みハンドラ追加
- TX割り込みがかかんない...orz...0xFC680000
- VM同士をしゃべらせよう作戦でMakefile修正(同じISOは使えない)<<3612>>
- Arpのクエリは出せているので、初期化はおそらく終了。Replyはまだ読めない。
- ハンドラを少し改良。<<3613>>
- VPCはRXがうまくいってない。ping受けラウンドトリップたいむ3270msecワロス。QEMU謎メッセージで死にそう。VMWだけは元気。<<3617>>
- 割り込みハンドラを修正。処理がタイマと割り込みの両方で起動ということになってることを忘れてた。タイマはやめるべきだな。あとwarningは確実に消しておくべきだろうってことでIPStackも修正しておく。<<3618>>
- エラーからの復帰を検討する必要アリ。あとDMAばっふぁを贅沢に取りすぎているので
きっちり頭から詰める方向で。
- shutdown,halt,reboot便利です。
ほんとはhalt/rebootに慣れてるのだけど、マウスや訳わからんショートカットより遥かによいですよ。
- うわー、RXバッファが一巡すると動かないよ。確かにここはちゃんと仕様読まずに構造体の絵見て勘で適当に作ったところだ。
- RXもTXもだめだったので修正して、DMAエリアも詰めて取るようにした。
- ということで、pingやudp&tcpでのdaytimeへの問い合わせ程度であれば、21140Aも動くようになったとさ。
- さて問題はftpとか長いセッション。まだ79c970Aほど上手く動かない。で、これは実は望んでいた状況だったりするわけですよ。半端に上手く動くよりは、わかり易い障害が出てくれるほうが進めやすいので。<<3626>>
- てなわけで、このページは打ち止め。続きはいつものEDS1275/設計情報?にて
コメント †
- halt も reboot も対応していますよ(ボソ -- bayside
- あ、ほんとだ。haltだけ打ってみたんですがなにも起こらなかったので、無いものとおもっちゃいまいした。--EDS1275
- む。DMAを広くした方が良さそうですね。明日やろう。 -- ひげぽん
now: 3
リンク
最新の20件
2017-09-29
2017-04-25
2017-01-10
2016-12-11
2016-12-09
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: 3383,
today: 2,
yesterday: 1
HTML convert time to 0.046 sec.
Copyright(C)2003-2007 MonaProjectTeam, all rights reserved. powered by www.be-interactive.org