[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: fxp at pci on arm32 and bus_dmamap_sync()
In message <200007110521.e6B5Lkn08456@edge.sky.yamashina.kyoto.jp>
on Tue, 11 Jul 2000 14:21:46 +0900,
Takahiro Kambe <taca@sky.yamashina.kyoto.jp> wrote:
> do_transmit:
> if (statack & FXP_SCB_STATACK_RNR) {
> rxmap = M_GETCTX(sc->sc_rxq.ifq_head, bus_dmamap_t);
/* 3 */
> fxp_scb_wait(sc);
> /* 2 */
> CSR_WRITE_4(sc, FXP_CSR_SCB_GENERAL,
> rxmap->dm_segs[0].ds_addr +
> RFA_ALIGNMENT_FUDGE);
> CSR_WRITE_1(sc, FXP_CSR_SCB_COMMAND,
> FXP_SCB_COMMAND_RU_START);
> /* 1 */ printf("fxp0: no resouce ready\n");
> }
...
> ば、いきなり落ちるときもあるようです。また、2 のところに、
>
> CSR_WRITE_1(sc, FXP_CSR_SCB_COMMAND, FXP_SCB_COMMAND_RU_ABORT);
>
> を入れてみましたが、目立った変化はありませんでした。:-(
ABORTするんだから、fxp_scb_wait()する前の3のところに入れてしまうという
乱暴な(?)ことをしていみたところ、落ちない様です。:-D
--
神戸 隆博(かんべ たかひろ) at 仕事場 (まだまだ追試中...)