diff options
author | tanimura <tanimura@FreeBSD.org> | 1999-12-14 06:34:48 +0000 |
---|---|---|
committer | tanimura <tanimura@FreeBSD.org> | 1999-12-14 06:34:48 +0000 |
commit | 380f1c8220a04046c94c3eae3309aa24b24448e9 (patch) | |
tree | 3c70f1a769ab7970815078f69ffe00d10bff0559 /sys/i386 | |
parent | 18701ab58adc53df76c0411700c02a7b660559f8 (diff) | |
download | FreeBSD-src-380f1c8220a04046c94c3eae3309aa24b24448e9.zip FreeBSD-src-380f1c8220a04046c94c3eae3309aa24b24448e9.tar.gz |
Fix the command to launch DMA for 16bit samples.
Tested by: Steve Reid <sreid@sea-to-sky.net>
Diffstat (limited to 'sys/i386')
-rw-r--r-- | sys/i386/isa/sound/sb16_dsp.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/i386/isa/sound/sb16_dsp.c b/sys/i386/isa/sound/sb16_dsp.c index e923176..72c8012 100644 --- a/sys/i386/isa/sound/sb16_dsp.c +++ b/sys/i386/isa/sound/sb16_dsp.c @@ -26,6 +26,8 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. + * + * $FreeBSD$ * */ @@ -378,8 +380,12 @@ sb16_dsp_trigger(int dev, int bits) if (!bits) sb_dsp_command(0xd0); /* Halt DMA */ - else if (bits & irq_mode) - sb_dsp_command(0xd4); /* Continue DMA */ + else if (bits & irq_mode) { + if (dsp_16bit) + sb_dsp_command(0xd6); /* Continue 16bit DMA */ + else + sb_dsp_command(0xd4); /* Continue 8bit DMA */ + } } static void |