USB isochronous traffic with Rasberry Pi [WAS: Re: USB audio device on Raspberry Pi]

Adrian Chadd adrian at freebsd.org
Sat May 10 08:08:47 UTC 2014


+mav, the idle stuff and eventtimer framework is involved.

(hi Mav!)



-a


On 10 May 2014 00:51, Hans Petter Selasky <hps at selasky.org> wrote:
> 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
>
> _______________________________________________
> freebsd-arm at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-arm
> To unsubscribe, send any mail to "freebsd-arm-unsubscribe at freebsd.org"


More information about the freebsd-arm mailing list