OpenWrt Forum Archive

Topic: brcm-2.6 wifi support workaround

The content of this topic has been archived on 22 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

release.txt wrote:

There are 8 supported architectures listed below, with support for many more in progress. Almost all of these platforms are based on 2.6 kernels with the exception of Broadcom -- Sorry; we couldn't get a stable wifi connection on 2.6.

This is a quote from the Kamikaze 7.06 release notes. I have also played around with the bcm43xx wifi driver (I believe this is the one mentioned here) and the results were not that great (at least on newer hardware -- wifi chipset 4311 or 4318; it seeems to work on 4306)...

The bcm43xx project is progressing, but unfortunately it has not yet reached a usable state for most people. On the other hand, the wl.o binary that is used with the 2.4 kernel works great, there just seems not to be any 2.6 version available (and there is no way to know if it will ever be). Also the 2.4 kernel series is starting to get old, with new and useful features implemented only in 2.6 (like dm-crypt, fuse, and various rtc drivers to name a few).

What I would like to suggest is a temporary workaround, at least until the bcm43xx driver matures (and this may take from a few months to a year): to write a wrapper-module for 2.6 that can load the binary 2.4 wl.o. I know it is not an "elegant" solution, but apparently there are no alternatives (if someone knows of any please be so kind and share them).

Regarding the technical aspects, I am sure it can be done, after all we have windows drivers running in linux via ndiswrapper -- this should be comparatively easier. I haven't studied the problem in detail though and my kernel-fu is quite limited, so if there are other interested people please reply here and let's work toward this goal. I think a good starting point would be to find out exactly what functions/symbols are used by the wl.o driver and see how difficult it is to wrap the 2.4 calls in 2.6 ones.

What do you think?

Best regards,
--
Mihnea

mgc8 wrote:

... write a wrapper-module for 2.6 that can load the binary 2.4 wl.o. I know it is not an "elegant" solution, but apparently there are no alternatives (if someone knows of any please be so kind and share them).

The options are to wait for bcm43xx, or use brcm-2.4.  If creating a wrapper for the 2.4 kernel module was feasible, it would have been done.  Any time spent on it would be a waste, there are plenty of other good platforms out there, and many Broadcom boards use mini-PCI wireless cards that could easily be replaced with cards that have drivers for the 2.6 kernel.

The discussion might have continued from here.