diff --git a/sys/dev/xl/if_xl.c b/sys/dev/xl/if_xl.c index ad54d795127..43005e66967 100644 --- a/sys/dev/xl/if_xl.c +++ b/sys/dev/xl/if_xl.c @@ -1317,8 +1317,8 @@ xl_attach(device_t dev) } error = bus_dmamem_alloc(sc->xl_ldata.xl_rx_tag, - (void **)&sc->xl_ldata.xl_rx_list, BUS_DMA_NOWAIT | BUS_DMA_ZERO, - &sc->xl_ldata.xl_rx_dmamap); + (void **)&sc->xl_ldata.xl_rx_list, BUS_DMA_NOWAIT | + BUS_DMA_COHERENT | BUS_DMA_ZERO, &sc->xl_ldata.xl_rx_dmamap); if (error) { device_printf(dev, "no memory for rx list buffers!\n"); bus_dma_tag_destroy(sc->xl_ldata.xl_rx_tag); @@ -1349,8 +1349,8 @@ xl_attach(device_t dev) } error = bus_dmamem_alloc(sc->xl_ldata.xl_tx_tag, - (void **)&sc->xl_ldata.xl_tx_list, BUS_DMA_NOWAIT | BUS_DMA_ZERO, - &sc->xl_ldata.xl_tx_dmamap); + (void **)&sc->xl_ldata.xl_tx_list, BUS_DMA_NOWAIT | + BUS_DMA_COHERENT | BUS_DMA_ZERO, &sc->xl_ldata.xl_tx_dmamap); if (error) { device_printf(dev, "no memory for list buffers!\n"); bus_dma_tag_destroy(sc->xl_ldata.xl_tx_tag);