Re: [crisos] Re: kmod-usb-sound? |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/crisos Archives
]
- To: Oscar Eriksson <oscar.r.eriksson@xxxxxxxxx>
- Subject: Re: [crisos] Re: kmod-usb-sound?
- From: Salvatore Lionetti <salvatorelionetti@xxxxxxxx>
- Date: Mon, 19 Jan 2009 08:39:17 +0000 (GMT)
- Cc: crisos@xxxxxxxxxxxxxxxxxxx, claudyus84@xxxxxxxxx
- Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.it; h=X-YMail-OSG:Received:X-Mailer:Date:From:Reply-To:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-ID; b=kdt7hGpKhQKiLRNknd48vZlSpZhFWUBFRo5xf49qFQDn0PMCO17FGyIJNireLd+Wl2JiDIfrqywGUG/seNuGACjE7QMGZybecT9lGATsnFZruEZWU8hoywD5oS+1fCyF4p5Dtq8HcwReeA8IRiPhbZy/NX5anYJc2XeY1wamcSM=;
Hi,
You could ensure that ctrl messages are disabled during audio streaming or viceversa (es at startup i expect many ctrl message).
A device could choice to 'syncronize' with a device starting a 0byte isoc urb simply to check sequence number. Over this chip 'etrax' i think this behaviour should be avoided.
In this way you can see if the problem is due to chip errata or to a driver bug.
Have a good day
In detail:
As you report, assertion at line 3523 say that urb type is not isochronous: this mean that:
1) A corruption take place on urb data struct (driver bug?)
or
2) Packet type was delivered ('exchanged') to wrong completion callback, sounding like errata on cris site.
Dumping entire urb one can recognize what is the problem.
However in second case (packet type misleading) perhaps the simplest debug method is strace, detecting ioctrl()(ctrl urb) vs write()read()(isoc urb)
To go deepest in this pb you could use directly procfs.
Just for speak, pb you reported is the cause i've trying other hw platform. About one year ago, i wrote a meta-usb-driver (similar to procfs concept), in which i successfully program an usb sound device (also sco protocol from bt dongle to/from headset). Configuration does not respect all usb audio standard (like a description what of block) but only one kernel module is needed and a simple threaded program, with gui, allow use of such device.
http://sourceforge.net/projects/usu/
http://sourceforge.net/projects/usb2jack-user/
--- Dom 18/1/09, Oscar Eriksson <oscar.r.eriksson@xxxxxxxxx> ha scritto:
> Da: Oscar Eriksson <oscar.r.eriksson@xxxxxxxxx>
> Oggetto: Re: [crisos] Re: kmod-usb-sound?
> A: salvatorelionetti@xxxxxxxx
> Cc: crisos@xxxxxxxxxxxxxxxxxxx, claudyus84@xxxxxxxxx
> Data: Domenica 18 gennaio 2009, 20:09
> Status update:
> * Can use alsamixer to control how much of the mic signal
> that should be
> heard in speakers.
> * Can not play audio.
>
> What is done:
> * I patched
> openwrt/build_dir/linux-etrax/linux-2.6.25.16/arch/cris/Kconfig
> with 'source "sound/Kconfig"' as Claudio
> suggested.
> * Compiled ALSA and usb sound enabled.
> * Copied modules and config files (/usr/share/alsa/) to my
> foxboard. I think
> the config files should be part of alsa-utils, but it
> wasn't installed
> automatically.
> * Added a file /etc/modules.d/50-alsa-sound with this
> contents:
> soundcore
> snd
> snd-seq-device
> snd-page-alloc
> snd-hwdep
> snd-timer
> snd-rawmidi
> snd-mixer-oss
> snd-pcm
> snd-pcm-oss
> snd-usb-lib
> snd-usb-audio
>
> * Installed packages alsa-lib, alsa-utils, and madplay for
> playing mp3.
>
> * Tried sending data to sound card:
>
> madplay -o cdda:- sound.mp3 | aplay -f cdr
> also tried:
> echo "hello" > /dev/dsp
> to see if I could get a noise out of the audio card through
> OSS emulation.
>
> No sound heard. Took lots of execution time, and I could
> read using dmesg:
>
> drivers/usb/host/hc-crisv10.c: assert failed at:
> tc_dma_process_queue 3522
> drivers/usb/host/hc-crisv10.c: assert failed at:
> tc_dma_process_queue 3523
> crisv10_late dbg: Later finish of URB:0xc1eb0ac0[5284]
> drivers/usb/host/hc-crisv10.c: assert failed at:
> tc_dma_process_queue 3522
> drivers/usb/host/hc-crisv10.c: assert failed at:
> tc_dma_process_queue 3523
> crisv10_late dbg: Later finish of URB:0xc1eb01c0[5285]
>
> This is from hc-crisv10.c:
> 3520 urb_priv = urb->hcpriv;
> 3521 ASSERT(urb_priv != NULL);
> 3522 ASSERT(urb_priv->urb_state == NOT_STARTED);
> 3523 ASSERT(!usb_pipeisoc(urb->pipe));
>
> Salvatore, the patch you mailed me just seem to be a port
> of USB host from
> kernel version 2.6.19 to 2.6.26.
> The crisos version I'm running is using kernel 2.6.25
> and the following USB
> host:
> ETRAX 100LX USB Host Controller (2.6.25-rc9 port)
>
> Any suggestions?
>
> /Oscar
>
> On Fri, Jan 9, 2009 at 9:05 AM, Salvatore Lionetti <
> salvatorelionetti@xxxxxxxx> wrote:
>
> > Perhaps simply changing volume during sound
> recording/reproduction...
> >
> >
> > --- Gio 8/1/09, Oscar Eriksson
> <oscar.r.eriksson@xxxxxxxxx> ha scritto:
> >
> > > Da: Oscar Eriksson
> <oscar.r.eriksson@xxxxxxxxx>
> > > Oggetto: Re: [crisos] Re: kmod-usb-sound?
> > > A: salvatorelionetti@xxxxxxxx
> > > Cc: crisos@xxxxxxxxxxxxxxxxxxx,
> claudyus84@xxxxxxxxx
> > > Data: Giovedì 8 gennaio 2009, 22:45
> > > Thank you both of you for your support.
> > >
> > > I will let you know how it goes.
> > >
> > > The errata seems to concern periodic and control
> data in
> > > same USB frame.
> > > Does the driver have to send control data during
> use, or is
> > > it just used
> > > once to set audio format? If the latter, I
> don't think
> > > this will be a
> > > problem.
> > >
> > > /Oscar
> > >
> > >
> > > On Thu, Jan 8, 2009 at 9:59 PM, Salvatore
> Lionetti <
> > > salvatorelionetti@xxxxxxxx> wrote:
> > >
> > > > Hi,
> > > >
> > > > i'm also interested in audio over usb
> > > >
> > > > On technical description
> > > > - Etrax 100LX only support control and bulk
> tranfer,
> > > > - Etrax FS declare to support every usb
> transfer type.
> > > >
> > > > Moreover the errata about 100lx at
> > > >
> > >
> http://developer.axis.com/wiki/doku.php?id=axis:etrax_100lx_errata
> > > > confirm some pb, at least on V2
> > > >
> > > > On the other side some sw patch was applied
> in latest
> > > kernel revision, that
> > > > perhaps could circunavigate the hw pb
> > > >
> http://mhonarc.axis.se/dev-etrax/msg03320.html
> > > > patchwork.ozlabs.org/patch/292/mbox
> > > >
> > > > I've not tryed such fix (converged on
> other
> > > project), but thank you if
> > > > you'll try and post result on this
> mailing list.
> > > >
> > > > Have a good day
> > > >
> > > > Have a good day
> > > >
> > > >
> > > > --- Gio 8/1/09, Claudio
> <claudyus84@xxxxxxxxx>
> > > ha scritto:
> > > >
> > > > > Da: Claudio
> <claudyus84@xxxxxxxxx>
> > > > > Oggetto: Re: [crisos] Re:
> kmod-usb-sound?
> > > > > A: crisos@xxxxxxxxxxxxxxxxxxx
> > > > > Data: Giovedì 8 gennaio 2009, 09:48
> > > > > 2009/1/8 Oscar Eriksson
> > > <oscar.r.eriksson@xxxxxxxxx>:
> > > > > > I noticed now that I don't
> have the
> > > choice
> > > > > "Sound Support" in
> > > > > > kernel_menuconfig when building
> for target
> > > Foxboard. I
> > > > > have this choice if I
> > > > > > select target x86 instead. I also
> tried
> > > target
> > > > > bcm63xx, and this target did
> > > > > > not have "Sound
> Support".
> > > > > >
> > > > > > Is usb-sound simply not supported
> on all
> > > targets? I
> > > > > think usb-sound should
> > > > > > be a high level driver that is
> common for
> > > all targets
> > > > > and doesn't need
> > > > > > patches. Am I wrong?
> > > > > >
> > > > > >
> > > > >
> > > > > Hi Oscar,
> > > > > as you correctly say not all driver are
> support
> > > in any
> > > > > target. This is
> > > > > the case of sound driver and other.
> > > > > On cris linux kernel a lot of standard
> linux
> > > driver are
> > > > > missing.
> > > > > I enable some of this in
> > > patches/400-scsi_import.patch ,
> > > > > can you try
> > > > > to add something like source
> > > > > "drivers/sound/Kconfig" too.
> > > > >
> > > > > Let me know if it works!
> > > > >
> > > > > Regards
> > > > >
> > > > > ---
> > > > > CrisOs mailing list
> > > > > Official multi-language
> http://www.crisos.org/
> > > mailing list
> > > > >
> > > > > For unsubscribe send empty mail to:
> > > > > crisos-request@xxxxxxxxxxxxxxxxxxx with
> subject
> > > unsubscribe.
> > > >
> > > >
> > > >
> > > >
> >
> >
> >
> >
---
CrisOs mailing list
Official multi-language http://www.crisos.org/ mailing list
For unsubscribe send empty mail to: crisos-request@xxxxxxxxxxxxxxxxxxx with subject unsubscribe.