diff options
-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 |