kern/74893: Channels of USB audio can't be initialized (uaudio).
Kazuhito HONDA
kazuhito at ph.noda.tus.ac.jp
Thu Dec 9 06:20:25 PST 2004
>Number: 74893
>Category: kern
>Synopsis: Channels of USB audio can't be initialized (uaudio).
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Thu Dec 09 14:20:24 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator: Kazuhito HONDA
>Release: FreeBSD 5.3-STABLE i386
>Organization:
>Environment:
System: FreeBSD kaoru 5.3-STABLE FreeBSD 5.3-STABLE #182: Wed Dec 8 00:40:36 JST 2004 root at kaoru:/usr/obj/src/sys/i386/compile/KAORU.5.3.1 i386
>Description:
I use a usb audio device, Sound Blaster Digital Music (SBDM). It played some sound sources (but false sampling rate) on FreeBSD-stable of about Nov 15. But It can't be used on the code of Dec 8 with this error message (dmesg):
uaudio0: Creative USB Audio, rev 1.10/1.00, addr 2
uaudio_add_selector: NOT IMPLEMENTED
uaudio0: audio rev 1.00
pcm0: <USB Audio> on uaudio0
pcm0: chn_init(pcm0:play:0) failed: err = 19
pcm0: pcm_chn_create(ua_chan, 1, 0xc1a74d00) failed
This results from EFBIG error of _bus_dmamap_load_buffer function in busdma_machdep.c (at least in the case of i386).
>How-To-Repeat:
always.
>Fix:
I don't know.
But it roughly solves this problem that DMA buffer size is decreased:
--- patch begins here ---
--- src/sys/dev/sound/usb/uaudio_pcm.c.orig Sun Oct 31 02:56:01 2004
+++ src/sys/dev/sound/usb/uaudio_pcm_n.c Thu Dec 9 04:21:10 2004
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/dev/sound/usb/uaudio_pcm.c,v 1.5 2004/07/16 03:58:57 tanimura Exp $ */
+/* $FreeBSD: src/sys/dev/sound/usb/uaudio_pcm_n.c,v 1.5 $ */
/*
* Copyright (c) 2000-2002 Hiroyuki Aizu <aizu at navi.org>
@@ -58,7 +58,7 @@
static struct pcmchan_caps ua_reccaps = {8000, 48000, ua_recfmt, 0};
-#define UAUDIO_PCM_BUFF_SIZE 16*1024
+#define UAUDIO_PCM_BUFF_SIZE (16*1024-1)
/************************************************************/
static void *
--- patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list