[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: fxp at pci on arm32 and bus_dmamap_sync()
In message <200007161614.e6GGEZX10784@mirage.ceres.dti.ne.jp>
on Mon, 17 Jul 2000 01:14:35 +0900 (JST),
Izumi Tsutsui <tsutsui@ceres.dti.ne.jp> wrote:
> > > とかして CACHEABLE のほうもクリアしておけば(少なくとも i386 では)
> > > まともに動くようになる? CACHEABLE と PREFETCHABLE の定義の違いと
> > これは特に変化は認められませんでした。結局、i82557.cの方は、
>
> うーん。 PCI space の mapping は no resouces の発生には関係するけど、
> 今のコードが間違ったことをしているわけではないってことなんですかね。
このあたりは私もわかりません。
> > do_transmit:
> > if (statack & FXP_SCB_STATACK_RNR) {
> > fxp_scb_wait(sc);
> > CSR_WRITE_1(sc, FXP_CSR_SCB_COMMAND,
> > FXP_SCB_COMMAND_RU_ABORT);
> > fxp_scb_wait(sc);
> > rxmap = M_GETCTX(sc->sc_rxq.ifq_head, bus_dmamap_t);
> > CSR_WRITE_4(sc, FXP_CSR_SCB_GENERAL,
>
> > と、いったあたりで試験中です。
>
> 確認ですが、 2つ目の fxp_scb_wait() は rxmap の代入の後ではダメで
> 前でないといけないなんでしょうか? だとするとそれはそれで納得いかない
> ところがありますが……。
いや、そんなことはありません。
do_transmit:
if (statack & FXP_SCB_STATACK_RNR) {
fxp_scb_wait(sc);
CSR_WRITE_1(sc, FXP_CSR_SCB_COMMAND,
FXP_SCB_COMMAND_RU_ABORT);
rxmap = M_GETCTX(sc->sc_rxq.ifq_head, bus_dmamap_t);
fxp_scb_wait(sc);
CSR_WRITE_4(sc, FXP_CSR_SCB_GENERAL,
でも動作に違いは見受けられません。
> いずれにせよ ABORT するが有効なようなら send-pr してみて
> thorpej 氏他の有識者の反応を見るというのはどうでしょう?
そうですね、帰ってからそうしたいと思います。
--
神戸 隆博(かんべ たかひろ) at 仕事場