USB isochronous traffic with Rasberry Pi [WAS: Re: USB audio device on Raspberry Pi]
Hans Petter Selasky
hps at selasky.org
Sat May 10 07:50:18 UTC 2014
Hi,
I've made one more patch to the DWC OTG driver. Nice if you can test
that too.
http://svnweb.freebsd.org/changeset/base/265806
BTW: I think I've found what is causing the glitches when using USB
audio devices:
diff --git a/sys/arm/arm/machdep.c b/sys/arm/arm/machdep.c
index 0490be7..de7f015 100644
--- a/sys/arm/arm/machdep.c
+++ b/sys/arm/arm/machdep.c
@@ -423,7 +423,7 @@ cpu_est_clockrate(int cpu_id, uint64_t *rate)
void
cpu_idle(int busy)
{
-
+#if 0
CTR2(KTR_SPARE2, "cpu_idle(%d) at %d",
busy, curcpu);
#ifndef NO_EVENTTIMERS
@@ -442,6 +442,7 @@ cpu_idle(int busy)
#endif
CTR2(KTR_SPARE2, "cpu_idle(%d) at %d done",
busy, curcpu);
+#endif
}
int
It appears that cpu_idle() is going to sleep when there are pending
interrupts, and then waking up on the next timer IRQ! Can someone
familiar with these parts of the kernel comment?
Please try for yourself, with and without the patch above, using an USB
audio device with the RPI-B!
Still when the console is printing, there are significant glitches too
:-) That's because the TTY layer is synchronously writing data to the
serial line. That's OK for now.
--HPS
More information about the freebsd-arm
mailing list