need to know about usbaudio.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I'm doing playback/record with usbaudio on TI musb with ALSA.

My concern is, in isochronus mode (with CPPI DMA) I see a lot of
interrupts and so ksoftirqd takes up to 30% CPU in addition to Audio
application. And in bulk mode(with CPPI DMA) I see less interrupts and
also ksoftirqd is taking around 15% CPU in addition to the
application. Is there any way by which I can get lesser interrupts in
sochronus mode (with CPPI DMA)?

my linux is: 2.6.10_mvl401, with
musb_hdrc: version 2.2a/db-0.4.8 [cppi-dma] [host] [debug=1]
musb_hdrc: ConfigData=0x06 (UTMI-8, dyn FIFOs, SoftConn)
musb_hdrc: MHDRC RTL version 1.300
musb_hdrc: USB Host mode controller at c8002000 using DMA, IRQ 12
musb_hdrc musb_hdrc: new USB bus registered, assigned bus number 1

I have observed that whether I play 8KHZ audio or 44KHZ audio, I see
iso_frame_desc (packed in urb) ramains of same length, i.e. 176 bytes.
e.g.
I played 8KHZ audio and found that, musb is gets total 4
iso_frame_desc in each URB. size of each iso_frame_desc is 176 bytes.
I played 44KHZ audio and found that, musb is gets total 4
iso_frame_desc in each URB. size of each iso_frame_desc is 176 bytes.
In each URB musb gets 4 iso_frame_desc, which is fixed by variable
'static int nrpacks' in usbaudio.c.

CPPI DMA makes buffer discriptors of each iso_frame_desc, which is
very small chunk.

Does it make sense that usbaudio passes larger iso_frame_desc to musb
( right now I'm getting 176 bytes iso_frame_desc each time)? so that
CPPI DMA will send lesser interrupts to CPU.

Please let me know if more information is required from my side.

--
Regards,
Pratik PRAJAPATI
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux