Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 12 Aug 2003 19:24:26 -0400 (EDT)
From:      "James E. Flemer" <jflemer@alum.rpi.edu>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        ports@matey.org
Subject:   ports/55513: audio/aureal-kmod broken by busdma commit
Message-ID:  <200308122324.h7CNOQDE002609@psi.speednaked.com>
Resent-Message-ID: <200308122330.h7CNUHRU091701@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>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@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:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200308122324.h7CNOQDE002609>