Re: 14e4:4315 DMA Errors (still)
Hi Gábor, Charlie, All: I tried wireless-testing commit b4d3a7.. This kernel seems to work more reliably, but only a little. Sometimes, I still get DMA errors on cold boot, and I still always get DMA errors after a suspend/resume cycle. Like Charlie, 'NOHZ: local_softirq_pending 08' shows up when it does manage to connect.. I certainly wish I could report the other successes Charlie has. Perhaps I'll update my wireless-testing tonight and try again. Lance 2009/10/6 Gábor Stefanik : > 2009/10/6 Lance Hepler : >> 2009/10/6 Gábor Stefanik : >>> So, this error happens specifically on suspend/resume? >> >> No, it'll happen pretty frequently the first time I try to connect, >> but always after I suspend+resume. And once the DMA error pops up, It >> just keeps happening.. By far, the rarest occurrence is the device >> actually working. >> >> Lance >> > > One thing I can see from the log is that you have both wl and ssb > (b43's backend) loaded at the same time. Remember to also unload ssb > when you unload b43. > > Also, could you try the real wireless-testing? > > (BTW, your card is a Dell 1397, which was one of the development cards > I used; so the problem is not a "new variant".) > > -- > Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-) > ___ Bcm43xx-dev mailing list Bcm43xx-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/bcm43xx-dev
Re: [PATCH v2] b43: do not stack-allocate pio rx/tx header and tail buffers
Albert Herranz wrote: > Larry Finger wrote: >> Albert Herranz wrote: > > b43_new_kidx_api() (defined in xmit.h) needs struct b43_wldev defined because > it dereferences it. > With this patch, struct b43_wl (defined in b43.h) needs struct b43_rxhdr_fw4 > and struct b43_txhdr (defined in xmit.h). > > So we have b43_wldev -> b43_rxhdr_fw4, b43_txhdr -> b43_wl (at least). > > Moving the definition of struct b43_wl after the definition of struct > b43_wldev and placing the inclusion of xmit.h between them gets rid of the > generated dependencies. > > The patch hints too to other possible solution. > >> /* >> * Include goes here to avoid a dependency problem. >> * A better fix would be to integrate xmit.h into b43.h. >> */ >> #include "xmit.h" > > Do you have any other solutions in mind? No. I missed the hint. At first I thought there was a white-space problem that caused b43_wl to be replaced. When that was not the case, I posed my question. All seems OK. Larry ___ Bcm43xx-dev mailing list Bcm43xx-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/bcm43xx-dev
Re: [PATCH v2] b43: do not stack-allocate pio rx/tx header and tail buffers
Albert Herranz wrote: > The DMA-API debugging facility complains about b43 mapping memory from > stack for SDIO-based cards. > > Indeed, b43 currently allocates the PIO RX/TX header and tail buffers > from stack. The solution here is to use heap-allocated buffers instead. > > Signed-off-by: Albert Herranz > --- > v2 > - embed buffers into struct b43_wl, and make them depend on CONFIG_B43_PIO > - take into account tail buffers for unaligned length transfers > > drivers/net/wireless/b43/b43.h | 168 > +-- > drivers/net/wireless/b43/pio.c | 78 +- > drivers/net/wireless/b43/xmit.c |2 +- > 3 files changed, 132 insertions(+), 116 deletions(-) > > diff --git a/drivers/net/wireless/b43/b43.h b/drivers/net/wireless/b43/b43.h > index fa1549a..6607162 100644 > --- a/drivers/net/wireless/b43/b43.h > +++ b/drivers/net/wireless/b43/b43.h > @@ -607,82 +607,7 @@ struct b43_qos_params { > struct ieee80211_tx_queue_params p; > }; > > -struct b43_wldev; > - > -/* Data structure for the WLAN parts (802.11 cores) of the b43 chip. */ > -struct b43_wl { > - /* Pointer to the active wireless device on this chip */ > - struct b43_wldev *current_dev; > - /* Pointer to the ieee80211 hardware data structure */ > - struct ieee80211_hw *hw; What is the reason for moving the definition of struct b43_wl? Larry ___ Bcm43xx-dev mailing list Bcm43xx-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/bcm43xx-dev