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

Re: fxp at pci on arm32 and bus_dmamap_sync()



In message <200007121447.e6CEl4603885@mirage.ceres.dti.ne.jp>
	on Wed, 12 Jul 2000 23:47:04 +0900 (JST),
	Izumi Tsutsui <tsutsui@ceres.dti.ne.jp> wrote:
> --- if_fxp_pci.c.orig	Wed Jul 12 13:01:31 2000
> +++ if_fxp_pci.c	Wed Jul 12 13:01:31 2000
> @@ -284,7 +284,8 @@
>  	    pci_mapreg_info(pa->pa_pc, pa->pa_tag, FXP_PCI_MMBA,
>  	    PCI_MAPREG_TYPE_MEM|PCI_MAPREG_MEM_TYPE_32BIT,
>  	    &addr, &size, &flags) == 0) {
> -		flags &= ~BUS_SPACE_MAP_PREFETCHABLE;
> +		flags &= ~(BUS_SPACE_MAP_PREFETCHABLE |
> +		    BUS_SPACE_MAP_CACHEABLE);
>  		if (bus_space_map(memt, addr, size, flags, &memh) == 0)
>  			memh_valid = 1;
>  	}
> 
> とかして CACHEABLE のほうもクリアしておけば(少なくとも i386 では)
> まともに動くようになる?  CACHEABLE と PREFETCHABLE の定義の違いと
これは特に変化は認められませんでした。結局、i82557.cの方は、

 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,

と、いったあたりで試験中です。

--
神戸 隆博(かんべ たかひろ) at home