On Sunday 27 November 2005 22:53, Larry Finger wrote: > Michael Buesch wrote: > > On Sunday 27 November 2005 03:44, you wrote: > > > >>I am trying to help the bcm43xx project develop a driver for the > >>Broadcom 43xx wireless chips, using my Linksys WPC54G card. > >>Unfortunately, since the group got far enough to turn on RX DMA, my > >>system has frozen whenever I load the driver. TX DMA was OK. It seems to > >>correlate with the receipt of a beacon from my AP, but that cannot be > >>proven. When the freeze happens, I cannot do anything more and have to > >>power the system off. > >> > >>What should I consider as a cause of the freeze? I have reviewed the > >>code and do not find any obvious out-of-bounds memory references. I have > >>tried various 'printk' statements, but none of them in the bottom-half > >>interrupt routine make it to the logs. Are there any tricks that I > >>should try? > > > > > > Enable most of the "Kernel Hacking" Debugging options, like > > Memory and spinlock debugging. This will often catch memory corruptions > > or deadlocks. > > > > I'm not sure where the freeze happens, from your explanations. > > Does it freeze before or after the DMA operations? I am sure we find the > > reason, if you talk to us about the problem on IRC or the bcm43xx mailing > > list. > > > > As you requested, I am taking the discussion to the bcm43xx mailing > list. I'm pretty sure the freeze happens after the DMA completes. I > started getting freezes when the code to remove the PLCP header was > added. Before that, my system printed the message "not for us" or > something like that and continued. Now it just freezes. The last message > in the log is usually "Chip initialized"; however, once I got a printk > from the entry to the bottom-half routine (I added a printk there.) with > the value for 'reason' equal to 0x8100.
Well, could you try to track down where it freezes? Start inserting printks in the IRQ handler and walk down the call chain though bcm430x_dma_rx and finally bcm430x_rx. Tell us, which is the last executed line before the freeze, please. Also enable the Kernel Hacking options as I suggested. They are a great help, sometimes. -- Greetings Michael.
pgpDsH2voh365.pgp
Description: PGP signature
