Broadcom-STA "wl" wifi drivers

Post Reply
Message
Author
User avatar
peebee
Posts: 4370
Joined: Sun 21 Sep 2008, 12:31
Location: Worcestershire, UK
Contact:

Broadcom-STA "wl" wifi drivers

#1 Post by peebee »

1-feb-2016
This post is now rather out of date.....

see this post for an up-to-date howto





Broadcom wrote:This is Broadcom's IEEE 802.11a/b/g/n hybrid Linux® device driver for use with Broadcom's BCM4311-, BCM4312-, BCM4313-, BCM4321-, BCM4322-, BCM43224-, and BCM43225-, BCM43227- and BCM43228-based hardware.
A Peebee-Rerwin co-production

Quite a few recent Puppies now have the wl driver built-in to the iso and no longer need this add-on pet - check the list below....

The Multi-Kernel pet attached below directly supports (the delta files are built-in) the following, mainly now superceded, 32-bit Puppies:
  • Wary 5.3 k2.6.32.59 (& Wary 5.5)
    Slacko 5.3.3 for both k3.1.10-slacko_4gA and k3.1.10-slacko_paeA
    Precise 5.4.2 Retro k3.2.32 (nopae)
It also supports the following Puppies in kernel order (and earlier versions if they have the same kernel) with the addition of the delta files attached to posts in the thread: To use you need to:
  • 1. load rerwin_woof_fixes-delta-3f.pet (required for Wary5.3 and Slacko5.3.3 and as described in the post for your pup version)
    2. load any delta pet required (see the post for your pup version)
    3. load the multi-kernel pet (Attachment below)
    4. reboot
    5. connect using the wlan device created
    n.b. if you like a tidy PPM you can uninstall the delta pet afterwards
n.b. Lucid Puppy 5.2.8-005 k2.6.33.2 is a special case - see post #5

The following puppies have everything needed to support both the wl and b43 drivers built-in:
  • Precise 5.5 & later versions
    Slacko 5.5 & later versions
    Upup Precise & Upup Raring from pemasu
    Dpup Exprimo from pemasu
    SolidPup 5.1.1-B Lite with kernel 2.6.32.28 from Tman
Background:
All puppies come with the B43 driver and firmwares for broadcom wifi. (there are some later firmwares available for the b43 driver which may be helpful for some people: Version 5.100.138 and Version 5.100.143.3)

There is an alternate driver produced by Broadcom themselves which works better than b43 for some variants - this article provides useful background (found by cowboy).

The driver is a reworking of the Broadcom STA pet that piratesmack offered here for lupu k2.6.33.2 based on version 5.60.48.36 of the Broadcom wl driver: http://www.murga-linux.com/puppy/viewto ... 596#421596

but using the latest Broadcom source (version 5.100.82.112)

The patches applied to the Broadcom source are attached to this post further down the thread:
http://murga-linux.com/puppy/viewtopic. ... 5&start=16

These pets require preference processing logic developed by rerwin which generalises the logic originally implemented by piratesmack and removes the need for any blacklisting or startup files.

The Multi-Kernel pet is able to support multiple kernels because it constructs the kernel specific driver at install time using xdelta3 to apply a delta file to a base driver - therefore availability of xdelta3 is a pre-requisite for installation (only seems to be a problem for Saluki - install from here).

Pemasu was kind enough to comment in the Saluki thread:
Peebee's driver pet provides wl kernel driver module for those broadcom wireless chips which does not work with b43.ko, brcmsmac.ko or brcmfmac.ko driver.

The list of the chip id's can be found from this link:
http://linuxwireless.org/en/users/Drive ... ed_devices

The chip id can be found with this command in console: "lspci -nn"
    Download link for the multi-kernel pet if you get FORUM ERROR
    Attachments
    rerwin_woof_fixes-delta-3f.pet
    This pet contains the pup_event_backend_modprobe with extended
    preference processing plus configuration files for Broadcom modules and
    has to be loaded on puppies based on woof without this logic
    (7.93 KiB) Downloaded 2506 times
    Last edited by peebee on Tue 02 Feb 2016, 07:06, edited 164 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Older versions for possible problems

    #2 Post by peebee »

    PLEASE LET ME KNOW BY PM WHY YOU NEEDED TO DOWNLOAD THIS EARLIER VERSION - AND IF IT HELPED....THANKS

    There are some reports out on the net of the newest driver crashing with "error 21" - a line like:
    puppypc user.warn kernel: wlan%d: 5.100.82.112 driver failed with code 21
    will be in the dmesg output.
    If this happens to you and you've installed a pet, then you will have to uninstall it. If you are using a puppy with the wl driver built into the iso then you should blacklist the wl driver whereupon your puppy should revert to using the b43 driver. Or you can try playdayz's lupu5.2.8PLUS which contains the older 5.60.48.36 version of the wl driver.
    or you can try the pet attached to this post.

    This pet has been compiled from the Ubuntu Natty sources in broadcom-sta-source_5.60.48.36-3_all.deb [no longer available from Ubuntu]

    This driver seems to be somewhat slower in establishing a wifi connection than the more recent driver - so please be patient.

    The All-In-One multi-kernel pet for driver v5.60.48.36 (creates device wlan%) is attached below.

    It supports:
    Lucid Puppy 5.2.8-005 k2.6.33
    Wary 5.3 k2.6.32.59
    Racy 5.3 k3.0.25
    Slacko 5.3.3 k3.1.10 for both 4g and pae kernels

    and Saluki_023 k3.2.8-ski but install xdelta3 first

    Download link for All-In-One multi-kernel pet for driver v5.60.48.36 if you get FORUM ERROR
    Last edited by peebee on Sun 14 Apr 2013, 17:28, edited 23 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    01micko
    Posts: 8741
    Joined: Sat 11 Oct 2008, 13:39
    Location: qld
    Contact:

    #3 Post by 01micko »

    Hmmmm.. could be bug here with permissions on /tmp.. mine are 1777, not 777.
    Puppy Linux Blog - contact me for access

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    #4 Post by peebee »

    01micko wrote:Hmmmm.. could be bug here with permissions on /tmp.. mine are 1777, not 777.
    Now resolved by the installation logic in the new All-In-One pets
    Last edited by peebee on Mon 04 Jun 2012, 10:39, edited 1 time in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    01micko
    Posts: 8741
    Joined: Sat 11 Oct 2008, 13:39
    Location: qld
    Contact:

    #5 Post by 01micko »

    yeah, permissions on tmp bugs are difficult to debug and may not rear their head at all if running as root. If someone creates a user (and it is possible) then trouble occurs.
    Puppy Linux Blog - contact me for access

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Delta file for Lucid Puppy

    #6 Post by peebee »

    THIS IS A SPECIAL CASE.....

    The wl driver pet for:

    Lucid Puppy 5.2.8 - Updated ISO Version 005 - APR 05 2012 with Kernel 2.6.33.2

    is attached

    To install the Broadcom WL driver onto lupu528-005

    1. install the multi-kernel pet - attached

    2. reboot

    Use this link if you get FORUM ERROR
    Last edited by peebee on Sun 14 Apr 2013, 17:25, edited 10 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Delta files for Dpup Exprimo

    #7 Post by peebee »

    The delta file for:

    Dpup Exprimo 5.X.15 with Kernel 2.6.39

    is attached

    To install the Broadcom WL driver onto Dpup Exprimo

    1. install rerwin_woof_fixes-delta-3f.pet in post #1

    2. install the delta file attached to this post

    3. install the multi-kernel pet in post #1

    4. reboot
    Attachments
    broadcom_wl_delta-k2.6.39.pet
    Delta file for k2.6.39
    (93.73 KiB) Downloaded 2166 times
    Last edited by peebee on Fri 21 Sep 2012, 19:37, edited 5 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Delta file for Racy

    #8 Post by peebee »

    The delta file for:

    Racy 5.3 with Kernel 3.0.25

    is attached

    To install the Broadcom WL driver onto Racy 5.3

    1. install rerwin_woof_fixes-delta-3f.pet in post #1 (n.b. not required for Racy 5.3.90)

    2. install the delta file attached to this post

    3. install the multi-kernel pet in post #1

    4. reboot
    Attachments
    broadcom_wl_delta-k3.0.25.pet
    Delta file for k3.0.25
    (41.53 KiB) Downloaded 1990 times
    Last edited by peebee on Sat 29 Sep 2012, 11:57, edited 6 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Support for Saluki and Carolina

    #9 Post by peebee »

    The delta files for:

    Saluki 023 with Kernel 3.2.8-ski

    and Lina-Lite with Kernel 3.2.13-c

    and Carolina with Kernel 3.2.13-ski pae

    are attached

    To install the Broadcom WL driver onto Saluki 023 or Lina-Lite
    • 0. install xdelta3

      1. install rerwin_woof_fixes-delta-3f.pet in post #1

      2. install the delta file attached to this post (3.2.8-ski for saluki, 3.2.13-c for lina-lite)

      3. install the multi-kernel pet in post #1

      4. reboot
    To install the Broadcom WL driver onto Carolina 003:
    • 1. install rerwin_woof_fixes-delta-3f.pet in post #1

      2. install the delta file attached to this post

      3. install the multi-kernel pet in post #1

      4. reboot
    Attachments
    broadcom_wl_delta-k3.2.13-c.pet
    Delta file for k3.2.13-c
    (41.74 KiB) Downloaded 2125 times
    broadcom_wl_delta-k3.2.13-ski.pet
    Delta file for k3.2.13-ski
    (41.78 KiB) Downloaded 2235 times
    broadcom_wl_delta-k3.2.8-ski.pet
    Delta file for k3.2.8-ski
    (41.56 KiB) Downloaded 2079 times
    Last edited by peebee on Fri 11 Jan 2013, 07:43, edited 19 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    DutchPuppy
    Posts: 46
    Joined: Sun 14 Aug 2011, 15:47
    Location: Vlaardingen, South-West of Netherlands

    WPC54G pcmcia adapter in Slacko 5.3.3

    #10 Post by DutchPuppy »

    Hi Peebee,

    Thanks for this post!
    Today I upgraded from Slacko 5.3.1 to 5.3.3 on a Compaq Evo N600c with a Linksys WPC54g pcmcia adapter. In 5.3.1 it had always worked fine and i expected the same in 5.3.3 but it was not at first place.
    At the first boot it was recognized, but after saving the 2fs file and a reboot, it did not work anymore and could not get recognized the adapter.

    After reading this post and installed the B43 Version 5.100.143.3 pet, it worked, but i had to manually activate the connection every time.
    Then tried frisbee and that worked. It does connects slower than previously in 5.3.1, but it does connect! Thanks again.

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Delta file for Precise Puppy 5.2.60

    #11 Post by peebee »

    The delta files for:

    Precise 5.2.60 k3.2.18 is attached (e.g. for MacPup 5.2.9 and also Precise-Mate)

    To install the Broadcom WL driver onto Precise 5.2.60

    1. install rerwin_woof_fixes-delta-3f.pet in post #1

    2. install the delta file attached to this post (attachment #3 - make sure you select the right one)

    3. install the multi-kernel pet in post #1

    4. reboot
    Attachments
    broadcom_wl_delta-k3.2.18.pet
    Delta file for k3.2.18 (e.g. for MacPup 5.2.9 based on Precise 5.2.60)
    (42.15 KiB) Downloaded 2152 times
    Last edited by peebee on Wed 24 Oct 2012, 09:59, edited 14 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Delta files for oldyeller versions of Precise

    #12 Post by peebee »

    The delta files for:

    Ov-Precise-5.2.61 non-pae with Kernel 3.2.27_5.2.60

    and Ov-Precise 5.3.0 with Kernel 3.2.27-upup

    are attached

    To install the Broadcom WL driver onto OvPrecise

    1. install rerwin_woof_fixes-delta-3f.pet in post #1

    2. install the delta file attached to this post (make sure you select the right one)

    3. install the multi-kernel pet in post #1

    4. reboot
    Attachments
    broadcom_wl_delta-k3.2.27_5.2.60.pet
    Delta file for k3.2.27_5.2.60 - nonpae version
    (42.2 KiB) Downloaded 2086 times
    broadcom_wl_delta-k3.2.27-upup.pet
    Delta file for k3.2.27-upup - pae version
    (42.21 KiB) Downloaded 2075 times
    Last edited by peebee on Fri 21 Sep 2012, 19:40, edited 7 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Delta file for Pemasu's version of Precise

    #13 Post by peebee »

    Pemasu's Upup Precise 5.3.3.3 with Kernel 3.3.2-upup already includes the wl driver.

    To update the Broadcom WL driver logic on Upup Precise:

    1. install rerwin_woof_fixes-delta-3f.pet in post #1

    2. reboot
    Last edited by peebee on Sat 22 Sep 2012, 08:44, edited 9 times in total.

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    New All-In-One multi-kernel version pet attached

    #14 Post by peebee »

    A new pet that replaces all of the kernel specific pets for the 5.100 version of the driver with a single multi-kernel support version has been attached to post #1.

    The way this has been implemented has been to include a base version of the driver and individual delta files that transform the base into the kernel specific version at install time. It is therefore dependent on xdelta3 being available (for saluki only you will need to install xdelta3 from the link given before installing the multi-pet). The un-needed delta files and the base driver are deleted after the kernel specific driver has been generated. The folder /opt/broadcom-sta is where all this happens.

    It will be much easier to keep this single multi-kernel pet updated.

    Cheers
    peebee
    Last edited by peebee on Sat 25 Aug 2012, 10:16, edited 1 time in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Delta file for Mage2

    #15 Post by peebee »

    The delta file for:

    Mage2 1.9.95 with Kernel 3.3.8-mage2-p64gsw-i586

    is attached

    To install the Broadcom WL driver onto Mage2

    1. install rerwin_woof_fixes-delta-3f.pet in post #1

    2. install the delta file attached to this post

    3. install the multi-kernel pet in post #1

    4. reboot
    Attachments
    broadcom_wl_delta-k3.3.8-mage2-p64gsw-i586.pet
    Delta file for k3.3.8-mage2-p64gsw-i586
    (42.52 KiB) Downloaded 2097 times
    Last edited by peebee on Fri 21 Sep 2012, 19:42, edited 8 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Wary & Racy 5.3.90 - 5.4 Betas

    #16 Post by peebee »

    BarryK has released the beta versions of Wary and Racy 5.4

    These versions have rerwin's new pup_event_backend_modprobe with extended preference processing built-in from woof.

    To load the Broadcom wl driver onto Wary 5.3.92:
    • 1. load the multi-kernel pet from post #1
    To load the Broadcom wl driver onto Racy 5.3.90:
    • 1. load the delta pet for k3.0.25 from post #7

      2. load the multi-kernel pet from post #1
    Last edited by peebee on Wed 05 Dec 2012, 07:32, edited 6 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Diffs record

    #17 Post by peebee »

    As a record.....

    Open the attached file as text to see all the changes made to the original Broadcom sources.

    Cheers
    peebee
    Attachments
    wl_diffs.gz
    (2.35 KiB) Downloaded 1567 times
    Last edited by peebee on Mon 17 Sep 2012, 18:23, edited 1 time in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    Delta files for Precise Puppy

    #18 Post by peebee »

    Delta files are no longer required for Precise 5.4 - they are now built in to the multi-kernel pet
    Last edited by peebee on Wed 24 Oct 2012, 10:02, edited 10 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    #19 Post by peebee »

    Reserved for future use
    Last edited by peebee on Fri 05 Oct 2012, 20:25, edited 9 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    User avatar
    peebee
    Posts: 4370
    Joined: Sun 21 Sep 2008, 12:31
    Location: Worcestershire, UK
    Contact:

    #20 Post by peebee »

    Reserved for future use
    Last edited by peebee on Wed 03 Oct 2012, 18:19, edited 2 times in total.
    ImageLxPup = Puppy + LXDE
    Main version used daily: LxPupSc; Assembler of UPups, ScPup & ScPup64, LxPup, LxPupSc & LxPupSc64

    Post Reply