[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 100BASE-TX NIC for macppc



>endian を入れ換えてるのは bridge じゃなくて
>bus_space_{read,write}_[24]() なんでしょうか。

bus_space_* は、やってます。

# そーかー。謎が解けるかとおもったんだけどなー。

>坂本さんのページを見なおしてみると
>「MPC105 のマニュアルをよくよく読んでみると、PCI のコンフィグレジスタを
>  32bit 長で読み書きするときはエンディアンをひっくり返せ、と書いてある」
>ってあるんですが、PCI/ISA 以外でも bus_space を使うとしたら
>どうなるんでしょう?

# 32bit長以外で読んでも平気かな?

SBUSってどうなっていました?
obio はなんも考えていません。:-)  本当は PCI とは別の bus ですよね。


>ex とやりとりする status (要するに ex_[ud]pd の中身全部)も
>DMA 経由のようなのでそちらも入れ換えないといけないと思いますが、
>そのへんでしょうか。

もうわすれちゃいましたが、fraghdr, dpd, upd あたりをいじったと
思います。
# それがなんなのかは理解せずに:-)、それっぽい(物理アドレスが
# でてくる)ところを。

>> usb/ohci.c あたりにもとても美しくない byte swap のコードが
>> 入っています。
>
>うーん… ざっと見ただけですが、せめて host endian のところと
>usb endian のところが区別できるように書き分けて欲しいですね…

あれ、「ほらこれで動くよ」ってパッチ送ったらほとんどそのまま
採用されてしまったんです…。定数まで動的に毎回計算します。:-(

# *ptr |= bswap(XXX_FLAG);	// こーいうの。