[maemo-developers] WLAN Horrible Roaming Performance (N800, OS2008), Software or Hardware Problem ?
From: Frantisek Dufka dufkaf at seznam.czDate: Fri Feb 22 13:39:21 EET 2008
- Previous message: WLAN Horrible Roaming Performance (N800, OS2008), Software or Hardware Problem ?
- Next message: OS2008 and gstreamer
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Kalle Valo wrote: > "ext Siarhei Siamashka" <siarhei.siamashka at gmail.com> writes: > >> A while ago I looked for various kernel docs to see what's happening in the >> wlan driver and what can be done to reduce cpu load. My impression was that >> tasklet can be only preempted by hardware interrupts, so it is impossible to Thanks for enlightement to both of you, that was the part I was missing. >> sleep in it and give cpu resources to userland applications. If that is true, >> no matter if n800 driver looks nicer, it must end up busylooping too. > > Nope, on N800 cx3110x and omap2_mcspi do not busyloop during the DMA > transfer. They use workqueues to allow sleeping, and completions for > signalling. > How is it so when you cannot sleep inside cx3110x_spi_dma_read and cx3110x_spi_dma_write? There appears to be same code for N800 too just the body of those functions does not use McBSP but SPI API: spi_message_add_tail(&t[1], &m); spi_sync(lp->spi_device, &m); Does it mean we can wrap McBSP usage into similar api and leave cx3110x otherwise alone without restructuring it? But still I don't get it, either spi_sync bysyloops or the semantics of cx3110x_spi_dma_write changed and it can return when the transfer is not yet done (??). Frantisek BTW, let's remove maemo-developers at maemo.org and move just to cx3110x-devel at garage.maemo.org
- Previous message: WLAN Horrible Roaming Performance (N800, OS2008), Software or Hardware Problem ?
- Next message: OS2008 and gstreamer
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]