summaryrefslogtreecommitdiffstats
path: root/sys/i386
diff options
context:
space:
mode:
authortanimura <tanimura@FreeBSD.org>1999-12-14 06:34:48 +0000
committertanimura <tanimura@FreeBSD.org>1999-12-14 06:34:48 +0000
commit380f1c8220a04046c94c3eae3309aa24b24448e9 (patch)
tree3c70f1a769ab7970815078f69ffe00d10bff0559 /sys/i386
parent18701ab58adc53df76c0411700c02a7b660559f8 (diff)
downloadFreeBSD-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.c10
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
OpenPOWER on IntegriCloud