aboutsummaryrefslogtreecommitdiff
path: root/audio/aureal-kmod
diff options
context:
space:
mode:
authorFUJISHIMA Satsuki <sf@FreeBSD.org>2005-02-01 22:16:01 +0000
committerFUJISHIMA Satsuki <sf@FreeBSD.org>2005-02-01 22:16:01 +0000
commitabb3cabfd611da290763adb7a531c6b0246885ce (patch)
treed057cec5975ab4c2e829a56456e74710d8afef14 /audio/aureal-kmod
parent3006b4dde966296543155b7f0510b67d2aa8b106 (diff)
downloadports-abb3cabfd611da290763adb7a531c6b0246885ce.tar.gz
ports-abb3cabfd611da290763adb7a531c6b0246885ce.zip
MFsrc: fix by yongari
|Audio drivers failed to detect failure condition and attempted to |assign DMA address to the wrong address. It can cause system lockup |or other mysterious errors. Since most sound cards requires low DMA |address(BUS_SPACE_MAXADDR_24BIT) sndbuf_alloc() would fail when the |audio driver is loaded after long running of operations.
Notes
Notes: svn path=/head/; revision=127877
Diffstat (limited to 'audio/aureal-kmod')
-rw-r--r--audio/aureal-kmod/Makefile12
-rw-r--r--audio/aureal-kmod/files/patch-au88x0.c9
2 files changed, 15 insertions, 6 deletions
diff --git a/audio/aureal-kmod/Makefile b/audio/aureal-kmod/Makefile
index 4fcb58960c1b..9bc5b055d769 100644
--- a/audio/aureal-kmod/Makefile
+++ b/audio/aureal-kmod/Makefile
@@ -7,7 +7,7 @@
PORTNAME= aureal-kmod
PORTVERSION= 1.5
-PORTREVISION= 4
+PORTREVISION= 4.1
CATEGORIES= audio
MASTER_SITES= http://home.columbus.rr.com/amatey/au88x0/
DISTNAME= au88x0-${PORTVERSION}_${PORTREVISION}
@@ -44,7 +44,7 @@ IGNORE= "FreeBSD 3.*, 4.0 are not supported"
.elif ${OSVERSION} < 420000
# FreeBSD 4.1, 4.1.1
PORTVERSION= 1.1
-PORTREVISION= 3
+PORTREVISION= 3.1
.elif ${OSVERSION} < 440000
# FreeBSD 4.2, 4.3
@@ -52,18 +52,18 @@ PORTVERSION= 1.3
.if ${VERSION_SOUND_C_MINOR} < 4
# FreeBSD 4.2 before kobj MFC
-PORTREVISION= 1
+PORTREVISION= 1.1
.else
# FreeBSD 4.2 after kobj MFC, FreeBSD 4.3
-PORTREVISION= 2
+PORTREVISION= 2.1
MAKE_ENV+= HAVE_KOBJ_PCM=1
.endif
.elif ${OSVERSION} < 450004
# FreeBSD 4.4, 4.5-
PORTVERSION= 1.3
-PORTREVISION= 3
+PORTREVISION= 3.1
MAKE_ENV+= HAVE_KOBJ_PCM=1
.elif ${OSVERSION} < 500000
@@ -72,7 +72,7 @@ MAKE_ENV+= HAVE_KOBJ_PCM=1
IGNORE= "Base system is outdated. This port needs -STABLE after 2002-04-22."
.endif
PORTVERSION= 1.3
-PORTREVISION= 4
+PORTREVISION= 4.1
MAKE_ENV+= HAVE_KOBJ_PCM=1
.endif
diff --git a/audio/aureal-kmod/files/patch-au88x0.c b/audio/aureal-kmod/files/patch-au88x0.c
index e04d3009dd1b..fed742dd039e 100644
--- a/audio/aureal-kmod/files/patch-au88x0.c
+++ b/audio/aureal-kmod/files/patch-au88x0.c
@@ -21,6 +21,15 @@ $FreeBSD$
#include <sys/queue.h>
SND_DECLARE_FILE("$FreeBSD$");
+@@ -573,7 +579,7 @@
+ ch->channel = c;
+ ch->buffer = b;
+ ch->run = 0;
+- if (sndbuf_alloc(ch->buffer, au->parent_dmat, AU_BUFFSIZE) == -1) {
++ if (sndbuf_alloc(ch->buffer, au->parent_dmat, AU_BUFFSIZE) != 0) {
+ printf("sndbuf_alloc failed\n");
+ return NULL;
+ }
@@ -852,7 +858,11 @@
/*highaddr*/BUS_SPACE_MAXADDR,
/*filter*/NULL, /*filterarg*/NULL,