ports/55513: audio/aureal-kmod broken by busdma commit

James E. Flemer jflemer at alum.rpi.edu
Tue Aug 12 23:30:21 UTC 2003


>Number:         55513
>Category:       ports
>Synopsis:       audio/aureal-kmod broken by busdma commit
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Aug 12 16:30:17 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator:     James E. Flemer
>Release:        FreeBSD 5.1-CURRENT i386
>Organization:
n/a
>Environment:
System: FreeBSD psi.speednaked.com 5.1-CURRENT FreeBSD 5.1-CURRENT #0: Mon Aug 11 23:30:34 EDT 2003 jflemer at psi.speednaked.com:/usr/obj/usr/src/sys/PSI i386


>Description:
	The "Mega busdma API commit" by Scott Long (scottl) on Jul 1 2003
	broke the aureal-kmod port since the port uses busdma.

	Also note that Dag-Erling Sm<F8>rgrav (des) broke this port by
	adding an unfinished Aureal driver to the source tree on
	Jun 1 2003.  I'm not sure what approach the should be taken to
	get around this (I renamed the conflicting files added by des.)

>How-To-Repeat:
	Build the port with -current sources later than Jul 1 2003.
	...
/usr/ports/audio/aureal-kmod/work/au88x0.c: In function `au_pci_attach':
/usr/ports/audio/aureal-kmod/work/au88x0.c:856: warning: passing arg 12 of `bus_dma_tag_create' from incompatible pointer type
/usr/ports/audio/aureal-kmod/work/au88x0.c:856: error: too few arguments to function `bus_dma_tag_create'

>Fix:
	To fix the busdma problem, replace the port's existing
	files/patch-au88x0.c with the file below.  The
	__FreeBSD_version was bumped for the busdma API change, so the
	patch below should be backwards compatible.

	To fix the problem caused by des adding /sys/dev/sound/pci/au88x0.[ch]
	rename or delete these two files.  As mentioned above, I do not
	know how this should be handled by the port, since it should not
	be messing with /usr/src.

--- files/patch-au88x0.c begins here ---
--- au88x0.c.orig	Thu May  9 21:32:55 2002
+++ au88x0.c	Tue Aug 12 18:51:57 2003
@@ -29,7 +29,8 @@
  */
 
 #include <dev/sound/pcm/sound.h>
-#include <dev/sound/pci/au88x0.h>
+#include "au88x0.h"
+#include <sys/systm.h>
 
 #include <pci/pcireg.h>
 #include <pci/pcivar.h>
@@ -852,7 +853,11 @@
 		/*highaddr*/BUS_SPACE_MAXADDR,
 		/*filter*/NULL, /*filterarg*/NULL,
 		/*maxsize*/AU_BUFFSIZE, /*nsegments*/1, /*maxsegz*/0x3ffff,
-		/*flags*/0, &au->parent_dmat) != 0) {
+		/*flags*/0,
+#if __FreeBSD_version > 501102
+		/*lockfunc*/NULL, /*lockarg*/NULL,
+#endif
+                &au->parent_dmat) != 0) {
 		device_printf(dev, "unable to create dma tag\n");
 		goto bad;
 	}
--- files/patch-au88x0.c ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list