[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 仕事場 (まだまだ追試中...)