66 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						|
# Copyright 2007	Luis R. Rodriguez <mcgrof@winlab.rutgers.edu>
 | 
						|
#
 | 
						|
# Loads new broadcom drivers (b43 and b43legacy) or the old ones (bcm43xx)
 | 
						|
 | 
						|
. /usr/lib/compat-wireless/modlib.sh
 | 
						|
 | 
						|
if [[ $UID -ne 0 ]]; then
 | 
						|
	echo "Run with root privileges"
 | 
						|
	exit
 | 
						|
fi
 | 
						|
 | 
						|
 | 
						|
USAGE="Usage: $0 [ b43 | bcm43xx ]"
 | 
						|
 | 
						|
# Default behavior: unload bcm43xx and load b43 and b43legacy
 | 
						|
if [ $# -eq 0 ]; then
 | 
						|
	1=b43
 | 
						|
elif [ $# -ne 1 ]; then
 | 
						|
	echo "$USAGE"
 | 
						|
	exit
 | 
						|
fi
 | 
						|
 | 
						|
MODULE=$1
 | 
						|
if [ "$MODULE" == "b43" ]; then
 | 
						|
        grep bcm43xx /proc/modules 2>&1 > /dev/null
 | 
						|
        if [ $? -eq 0 ]; then
 | 
						|
                echo Unloading $i...
 | 
						|
		modprobe -r --ignore-remove bcm43xx
 | 
						|
        fi
 | 
						|
	# Enables both b43 and b43legacy
 | 
						|
	b43enable b43
 | 
						|
	modprobe b43
 | 
						|
	modprobe b43legacy
 | 
						|
	CHECK=`modprobe -l b43`
 | 
						|
	if [ ! -z $CHECK ]; then
 | 
						|
		echo "b43 loaded successfully"
 | 
						|
	fi
 | 
						|
	CHECK=`modprobe -l b43legacy`
 | 
						|
	if [ ! -z $CHECK ]; then
 | 
						|
		echo "b43legacy loaded successfully"
 | 
						|
	fi
 | 
						|
elif [ "$MODULE" == "bcm43xx" ]; then
 | 
						|
	CHECK=`modprobe -l b43`
 | 
						|
	if [ ! -z $CHECK ]; then
 | 
						|
		echo "b43 currently loaded, going to try to unload the module..."
 | 
						|
		modprobe -r --ignore-remove b43
 | 
						|
	fi
 | 
						|
	CHECK=`modprobe -l b43legacy`
 | 
						|
	if [ ! -z $CHECK ]; then
 | 
						|
		echo "b43legacy currently loaded, going to try to unload the module..."
 | 
						|
		modprobe -r --ignore-remove b43legacy
 | 
						|
	fi
 | 
						|
	b43enable bcm43xx
 | 
						|
	# bcm43xx may be loaded already lets remove them first
 | 
						|
	modprobe -r --ignore-remov bcm43xx 2>&1 > /dev/null
 | 
						|
	modprobe bcm43xx
 | 
						|
	CHECK=`modprobe -l bcm43xx`
 | 
						|
	if [ ! -z $CHECK ]; then
 | 
						|
		echo "bcm43xx loaded successfully!"
 | 
						|
	fi
 | 
						|
else
 | 
						|
	echo "$USAGE"
 | 
						|
	exit
 | 
						|
fi
 |