Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 31 Dec 2004 13:28:17 +0100
From:      Tilman Linneweh <arved@freebsd.org>
To:        Julian Elischer <julian@elischer.org>
Cc:        freebsd-usb@freebsd.org
Subject:   Re: Latest uaudio commits break Logitech USB Headset
Message-ID:  <20041231122817.GT687@arved.at>
In-Reply-To: <41D47F90.1080500@elischer.org>
References:  <20041229105800.GS687@arved.at> <41D47F90.1080500@elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help
* Julian Elischer [2004-12-30 23:22]:
> 
> >pcm0: <USB Audio> on uaudio0
> >pcm0: chn_init(pcm0:play:0) failed: err = 19
> >pcm0: pcm_chn_create(ua_chan, 1, 0xffffff003d8ef600) failed
> >pcm0: chn_init(pcm0:record:0) failed: err = 19
> >pcm0: pcm_chn_create(ua_chan, -1, 0xffffff003d8ef600) failed
> >uhid0: Logitech Logitech USB Headset, rev 1.10/1.13, addr 2, iclass 1/1

> can you try the following patch?
> (apply by hand)
> 
> --- 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.c	Thu Dec  9 04:21:10 2004
> 
> @@ -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 ---

Thanks a lot!
Playback now works again. Please commit!

uaudio0: Logitech Logitech USB Headset, rev 1.10/1.13, addr 2
uaudio0: audio rev 1.00
pcm0: <USB Audio> on uaudio0

Recording, as far as I remember never worked with the device. 
With CURRENT+your patch, recording results in a kernel panic:

pcm0:record:0: record interrupt timeout, channel dead
pcm0:record:0: record interrupt timeout, channel dead
kernel trap 12 with interrupts disabled


Fatal trap 12: page fault while in kernel mode
fault virtual address   = 0x48
fault code              = supervisor read, page not present
instruction pointer     = 0x8:0xffffffff802c7f57
stack pointer           = 0x10:0xffffffffa5200b10
frame pointer           = 0x10:0xffffffffa5200b50
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, long 1, def32 0, gran 1
processor eflags        = resume, IOPL = 0
current process         = 33 (irq22: pcm1)
				   ^^^^^^^ huh?

Unfortunately kgdb does not like the dump.

regards
tilman



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