b43-fwcutter and b43-firmware

Here you can post links to your contributed packages.
User avatar
damNageHack
Posts: 663
Joined: 24. Sep 2009, 17:07

Re: b43-fwcutter and b43-firmware

Post by damNageHack »

FYI
brcm80211 is a completely FOSS wireless driver for BCM4313, BCM43224, BCM43225 chipsets.
Overview
* Completely open source host driver, no binary object files
* Features Broadcom's OneDriver architecture (single source base for supported chips and architectures)
* On-chip firmware loaded using standard request_firmware()
* Support for BCM43224, BCM43225, BCM4313 (PCIe NIC)
* Framework for supporting new chips, including mac80211-aware embedded chips
* Does not support older PCI/PCIe chips with SSB backplane
* Driver includes BMAC interface for transparent dongle support
* Uses minstrel_ht rate algorithm
* HW based encryption not enabled yet

Supported Chips
Name PCI Device ID
BCM4313 0x4727
BCM43224 0x4353
BCM43225 0x4357
http://linuxwireless.org/en/users/Drivers/brcm80211
Image
This is the oppinion of the author, it does not force you to share and is signed automatically.
You are free to keep them all errors for your own. Linux is the best game I ever played.
User avatar
zAchAry
Posts: 804
Joined: 11. May 2010, 09:02
Location: Israel

Re: b43-fwcutter and b43-firmware

Post by zAchAry »

@pwatk
I've uninstalled b43-fwcutter and WiFi was still working.
I've uninstalled b43-firmware and WiFi was still working.
I've installed the new .txz files, restarted the computer machine and all is working fine.
How can you know that what has been done made an affect?

I've an extra router in my drawer*, D-Link Model: DSL-2650U*

Code: Select all

D-Link DSL-2650U User Manual
Size: 6,251,555 Bytes
http://www.netcheif.com/downloads/DSL-2650U-UG.pdf
I'm not using WiFi much, please give me a list of tests that
you want me to initiate and I'll do when I'll get free time.
Though I'm sure that it won't be much at all.


Well, who is interrupting me to post stuff?
Post review
At least one new post has been made to this topic. You may wish to review your post in light of this.
We have a new member joined to this thread... Welcome damNageHack!

___________________
* Sound funny like: "..yeah, I'll take out my computer from the drawer..."
I've never imagined when I was a kid that I'll hear something like that, well, not that soon, at least.
* There is also a sticker note (Hebrew) that says it is forbidden to activate this router instrument
outside of a build; is it forbidden lawlessly or for "my own safety"? How I love Israel, don't you?
Image
Help to make Slackware easier Donate to Salix
User avatar
pwatk
Posts: 474
Joined: 14. Mar 2010, 23:56
Location: United Kingdom

Re: b43-fwcutter and b43-firmware

Post by pwatk »

@damNageHack
Thanks for the heads up, I saw this as well on Slashdot afew days ago.
When the source moves out of git, i.e. there is a stable release, then I'll gladly package it for Salix (unless anyone beats me to it ;) )

@zAchAry
Here what you need to know for testing.

1) You only need b43-fwcutter for compiling the b43-firmware package so unless I update it you don't need to uninstall it.

2) Once the b43 and ssb modules are loaded at boot they wont be unloaded unless you run modprobe -v -r b43 ; modprobe -v -r ssb as root. So, uninstalling the b43-firmware package won't unload the modules.

3) There is now a /etc/rc.d/rc.b43 script for loading and unloading the b43 and ssb kernel modules and unloading the conflicting wl and lib80211 modules associated with the broadcom-sta package (this is the reverse in the /etc/rc.broadcom-sta script).
I was previously blacklisting the conflicting wl and lib80211 modules in /etc/modprobe.d/blacklist.conf and editing the /etc/rc.d/rc.modules file to load the b43 and ssb modules on boot (still with me?). This is less flexible and generally not such a good idea, hence the new script and the splash of red on the first post! :)

4) You'll be happy to know all the red on the first post is about to go as I'm going to include the rm.broadcom.sh and a few tweaks in the next (and hopefully final) package (I can test this part myself).

5) Here's where the work comes in, I need you to test the /etc/rc.d/rc.b43 script from the next package (release 2) which I'll hopefully post tonight.

Boot your computer, your wireless will probably already be working, then login as root on a terminal.

Run this to see if the b43 and ssb modules are loaded:

Code: Select all

lsmod | grep -E "ssb|b43"
If you see something like this then they're loaded:

Code: Select all

b43                   37206  0 
ssb                   231744  1 b43
If you receive no output (and no wireless) then they're not.

From here on in you need to make sure the /etc/rc.b43 is doing it's job. There are four arguments start, stop, restart, status to be execute in the following fashion:

Code: Select all

/etc/rc.d/rc.b43 start
When you load a module you should see something like this (I'm using my rc.kvm script here):

Code: Select all

root[pwatk]# /etc/rc.d/rc.kvm start
/etc/rc.d/rc.kvm: /sbin/modprobe -v kvm:
insmod /lib/modules/2.6.33.4-smp/kernel/arch/x86/kvm/kvm.ko 
/etc/rc.d/rc.kvm: /sbin/modprobe -v kvm_intel:
insmod /lib/modules/2.6.33.4-smp/kernel/arch/x86/kvm/kvm-intel.ko 
If you run the same command twice you should also get a message saying the modules are already loaded or unloaded:

Code: Select all

root[pwatk]# /etc/rc.d/rc.kvm start
/etc/rc.d/rc.kvm: `kvm' module already loaded
/etc/rc.d/rc.kvm: `kvm_intel' module already loaded
Here's a few more examples:

The restart (stop and start) argument:

Code: Select all

root[pwatk]# /etc/rc.d/rc.kvm restart
/etc/rc.d/rc.kvm: /sbin/modprobe -v -r kvm_intel:
rmmod /lib/modules/2.6.33.4-smp/kernel/arch/x86/kvm/kvm-intel.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/arch/x86/kvm/kvm.ko
/etc/rc.d/rc.kvm: `kvm' module already unloaded
/etc/rc.d/rc.kvm: /sbin/modprobe -v kvm:
insmod /lib/modules/2.6.33.4-smp/kernel/arch/x86/kvm/kvm.ko 
/etc/rc.d/rc.kvm: /sbin/modprobe -v kvm_intel:
insmod /lib/modules/2.6.33.4-smp/kernel/arch/x86/kvm/kvm-intel.ko 
You'll notice the kvm module is already unloaded by unloading the kvm-intel module, this may also happen for the ssb module when the b43 module is unloaded and I'd like to know if it does.

The status argument:

Code: Select all

root[pwatk]# /etc/rc.d/rc.kvm status 
/etc/rc.d/rc.kvm: `kvm' module loaded
/etc/rc.d/rc.kvm: `kvm_intel' module loaded
If anything looks a miss or if your generally not sure then post it here and I'll either provide an answer or fix the problem.

Bottom line, if the modules are loaded you should be able to use your wireless and if they're not then you wont. This script should perform that function and give you feedback regarding the status of the modules concerned.

Thanks for your help as always and happy testing. :)
Image
User avatar
pwatk
Posts: 474
Joined: 14. Mar 2010, 23:56
Location: United Kingdom

Re: b43-fwcutter and b43-firmware

Post by pwatk »

I've posted the updated SLKBUILD.

It includes a section in the doinst script to remove any of the aforementioned lines from the /etc/rc.d/rc.modules and /etc/modprobe.d/blacklist.conf. It will also make a backup (.orig) as requested but this will be removed if no changes have been made (md5sum check).

I've also included b43-fwcuter in the .dep file :)
Image
User avatar
zAchAry
Posts: 804
Joined: 11. May 2010, 09:02
Location: Israel

Re: b43-fwcutter and b43-firmware

Post by zAchAry »

As for now, I don't need to update any longer, right?

Code: Select all

root[~]# lsmod | grep -E "ssb|b43"
b43                   162121  0 
mac80211              153050  1 b43
cfg80211              109656  2 b43,mac80211
ssb                    40527  1 b43
mmc_core               46926  3 b43,ssb,sdhci
pcmcia                 27872  2 b43,ssb
led_class               2037  2 b43,sdhci
root[~]#

Code: Select all

root[~]# /etc/rc.d/rc.b43 start
/etc/rc.d/rc.b43: `ssb' module already loaded
/etc/rc.d/rc.b43: `b43' module already loaded
root[~]#

Code: Select all

root[~]# /etc/rc.d/rc.b43 restart
/etc/rc.d/rc.b43: /sbin/modprobe -v -r b43:
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/net/wireless/b43/b43.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/ssb/ssb.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/pcmcia/pcmcia.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/net/mac80211/mac80211.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/net/wireless/cfg80211.ko
/etc/rc.d/rc.b43: `ssb' module already unloaded
/etc/rc.d/rc.b43: /sbin/modprobe -v ssb:
insmod /lib/modules/2.6.33.4-smp/kernel/drivers/pcmcia/pcmcia.ko 
insmod /lib/modules/2.6.33.4-smp/kernel/drivers/ssb/ssb.ko 
/etc/rc.d/rc.b43: /sbin/modprobe -v b43:
root[~]#

Code: Select all

root[~]# /etc/rc.d/rc.b43 status
/etc/rc.d/rc.b43: `b43' module loaded
root[~]#

So I guess that the directory /etc/rc.d/ has all the scripts to "start services"?

System services

Code: Select all

gksu gtkservicesetup
When I've unmarked b43 in the System services dialog I've got these outputs in the terminal:

Code: Select all

root[~]# /etc/rc.d/rc.b43 start
bash: /etc/rc.d/rc.b43: Permission denied
root[~]# /etc/rc.d/rc.b43 restart
bash: /etc/rc.d/rc.b43: Permission denied
root[~]# /etc/rc.d/rc.b43 stop
bash: /etc/rc.d/rc.b43: Permission denied
root[~]# /etc/rc.d/rc.b43 status
bash: /etc/rc.d/rc.b43: Permission denied
root[~]#
But after enabling b43 via the System services dialog it's all went back to normal

Code: Select all

root[~]# /etc/rc.d/rc.b43 stop
/etc/rc.d/rc.b43: /sbin/modprobe -v -r b43:
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/net/wireless/b43/b43.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/ssb/ssb.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/pcmcia/pcmcia.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/net/mac80211/mac80211.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/net/wireless/cfg80211.ko
/etc/rc.d/rc.b43: `ssb' module already unloaded
root[~]# /etc/rc.d/rc.b43 stop
/etc/rc.d/rc.b43: `b43' module already unloaded
/etc/rc.d/rc.b43: `ssb' module already unloaded
root[~]# /etc/rc.d/rc.b43 start
/etc/rc.d/rc.b43: /sbin/modprobe -v ssb:
insmod /lib/modules/2.6.33.4-smp/kernel/drivers/pcmcia/pcmcia.ko 
insmod /lib/modules/2.6.33.4-smp/kernel/drivers/ssb/ssb.ko 
/etc/rc.d/rc.b43: /sbin/modprobe -v b43:
insmod /lib/modules/2.6.33.4-smp/kernel/net/mac80211/mac80211.ko 
insmod /lib/modules/2.6.33.4-smp/kernel/drivers/net/wireless/b43/b43.ko 
root[~]# /etc/rc.d/rc.b43 start
/etc/rc.d/rc.b43: `ssb' module already loaded
/etc/rc.d/rc.b43: `b43' module already loaded
root[~]# /etc/rc.d/rc.b43 restart
/etc/rc.d/rc.b43: /sbin/modprobe -v -r b43:
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/net/wireless/b43/b43.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/ssb/ssb.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/pcmcia/pcmcia.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/net/mac80211/mac80211.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/net/wireless/cfg80211.ko
/etc/rc.d/rc.b43: `ssb' module already unloaded
/etc/rc.d/rc.b43: /sbin/modprobe -v ssb:
insmod /lib/modules/2.6.33.4-smp/kernel/drivers/pcmcia/pcmcia.ko 
insmod /lib/modules/2.6.33.4-smp/kernel/drivers/ssb/ssb.ko 
/etc/rc.d/rc.b43: /sbin/modprobe -v b43:
insmod /lib/modules/2.6.33.4-smp/kernel/net/mac80211/mac80211.ko 
insmod /lib/modules/2.6.33.4-smp/kernel/drivers/net/wireless/b43/b43.ko 
root[~]# /etc/rc.d/rc.b43 stop
/etc/rc.d/rc.b43: /sbin/modprobe -v -r b43:
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/net/wireless/b43/b43.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/ssb/ssb.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/drivers/pcmcia/pcmcia.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/net/mac80211/mac80211.ko
rmmod /lib/modules/2.6.33.4-smp/kernel/net/wireless/cfg80211.ko
/etc/rc.d/rc.b43: `ssb' module already unloaded
root[~]# /etc/rc.d/rc.b43 stop
/etc/rc.d/rc.b43: `b43' module already unloaded
/etc/rc.d/rc.b43: `ssb' module already unloaded
root[~]# /etc/rc.d/rc.b43 restart
/etc/rc.d/rc.b43: `b43' module already unloaded
/etc/rc.d/rc.b43: `ssb' module already unloaded
/etc/rc.d/rc.b43: /sbin/modprobe -v ssb:
insmod /lib/modules/2.6.33.4-smp/kernel/drivers/pcmcia/pcmcia.ko 
insmod /lib/modules/2.6.33.4-smp/kernel/drivers/ssb/ssb.ko 
/etc/rc.d/rc.b43: /sbin/modprobe -v b43:
insmod /lib/modules/2.6.33.4-smp/kernel/net/mac80211/mac80211.ko 
insmod /lib/modules/2.6.33.4-smp/kernel/drivers/net/wireless/b43/b43.ko 
root[~]# 
Image
Help to make Slackware easier Donate to Salix
User avatar
pwatk
Posts: 474
Joined: 14. Mar 2010, 23:56
Location: United Kingdom

Re: b43-fwcutter and b43-firmware

Post by pwatk »

Thank you, that's all I needed to know. I'll make the rc.b43 script less verbose now.
As for now, I don't need to update any longer, right?
No, thanks for your help. I might make changes here and there but nothing drastic.
So I guess that the directory /etc/rc.d/ has all the scripts to "start services"?
That's correct.
System services

Code: Select all

gksu gtkservicesetup

When I've unmarked b43 in the System services dialog I've got these outputs in the terminal:

Code: Select all

root[~]# /etc/rc.d/rc.b43 start
bash: /etc/rc.d/rc.b43: Permission denied
root[~]# /etc/rc.d/rc.b43 restart
bash: /etc/rc.d/rc.b43: Permission denied
root[~]# /etc/rc.d/rc.b43 stop
bash: /etc/rc.d/rc.b43: Permission denied
root[~]# /etc/rc.d/rc.b43 status
bash: /etc/rc.d/rc.b43: Permission denied
root[~]#

But after enabling b43 via the System services dialog it's all went back to normal
Thats because you remove the executable attribute from the script when you disable it!
Image
User avatar
zAchAry
Posts: 804
Joined: 11. May 2010, 09:02
Location: Israel

Re: b43-fwcutter and b43-firmware

Post by zAchAry »

pwatk wrote:Thats because you remove the executable attribute from the script when you disable it!
Oh, lol, ok! :P (I'll have a look into it again)

Please join: b43-fwcutter-013-i486-1pw.txz + SLKBUILD for b43-firmware
Image
Help to make Slackware easier Donate to Salix
User avatar
pwatk
Posts: 474
Joined: 14. Mar 2010, 23:56
Location: United Kingdom

Re: b43-fwcutter and b43-firmware

Post by pwatk »

I updated the b43-firmware package to include a much less verbose rc script. I now consider it final and I'm not going touching it until there is a version update.

I've also done this for the broadcom-sta package but that package is just guess work since no one has given any feedback.
Image
Post Reply