Latest uaudio commits break Logitech USB Headset
Tilman Linneweh
arved at freebsd.org
Fri Dec 31 04:28:38 PST 2004
* 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
More information about the freebsd-usb
mailing list