$OpenBSD: patch-iodev_es1370_cc,v 1.1 2011/12/13 08:46:51 giovanni Exp $ Fix for busmaster DMA transfers from device to memory --- iodev/es1370.cc.orig Wed Dec 7 01:58:00 2011 +++ iodev/es1370.cc Wed Dec 7 01:58:58 2011 @@ -465,10 +465,10 @@ void bx_es1370_c::run_channel(unsigned chan, int timer if (chan == ADC_CHANNEL) { BX_ES1370_THIS soundmod->getwavepacket(temp, tmpbuf); - DEV_MEM_WRITE_PHYSICAL_BLOCK(addr, temp, tmpbuf); + DEV_MEM_WRITE_PHYSICAL_DMA(addr, temp, tmpbuf); transfered = temp; } else { - DEV_MEM_READ_PHYSICAL_BLOCK(addr, temp, tmpbuf); + DEV_MEM_READ_PHYSICAL_DMA(addr, temp, tmpbuf); if (((int)chan == BX_ES1370_THIS s.dac_nr_active) && BX_ES1370_THIS s.dac_outputinit) { BX_ES1370_THIS soundmod->sendwavepacket(temp, tmpbuf); }