From 16faee5a1dcf674cf8bcb0ad2244b280a4f48401 Mon Sep 17 00:00:00 2001 From: cg Date: Sat, 29 Sep 2001 08:01:42 +0000 Subject: release isa dma channels on unload. --- sys/dev/sound/isa/mss.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'sys') diff --git a/sys/dev/sound/isa/mss.c b/sys/dev/sound/isa/mss.c index 5c2596a..78b61c3 100644 --- a/sys/dev/sound/isa/mss.c +++ b/sys/dev/sound/isa/mss.c @@ -268,12 +268,16 @@ mss_release_resources(struct mss_info *mss, device_t dev) mss->irq); mss->irq = 0; } - if (mss->drq2 && mss->drq2 != mss->drq1) { - bus_release_resource(dev, SYS_RES_DRQ, mss->drq2_rid, - mss->drq2); + if (mss->drq2) { + if (mss->drq2 != mss->drq1) { + isa_dma_release(rman_get_start(mss->drq2)); + bus_release_resource(dev, SYS_RES_DRQ, mss->drq2_rid, + mss->drq2); + } mss->drq2 = 0; } if (mss->drq1) { + isa_dma_release(rman_get_start(mss->drq1)); bus_release_resource(dev, SYS_RES_DRQ, mss->drq1_rid, mss->drq1); mss->drq1 = 0; -- cgit v1.1