diff options
Diffstat (limited to 'package/broadcom-wl/files/etc/init.d')
| -rwxr-xr-x | package/broadcom-wl/files/etc/init.d/wlunbind | 14 | 
1 files changed, 10 insertions, 4 deletions
| diff --git a/package/broadcom-wl/files/etc/init.d/wlunbind b/package/broadcom-wl/files/etc/init.d/wlunbind index 80a8f0e60..0a29db565 100755 --- a/package/broadcom-wl/files/etc/init.d/wlunbind +++ b/package/broadcom-wl/files/etc/init.d/wlunbind @@ -1,17 +1,18 @@  #!/bin/sh /etc/rc.common -# Copyright (C) 2010 OpenWrt.org +# Copyright (C) 2010-2011 OpenWrt.org  START=09 -boot() { -	local sysfs=/sys/bus/pci/drivers/b43-pci-bridge +unbind_driver() { +	local driver="$1" +	local sysfs="/sys/bus/pci/drivers/$driver"  	if [ -d "$sysfs" ]; then  		local lnk  		for lnk in $sysfs/*; do  			[ -h "$lnk" ] || continue  			case "${lnk##*/}" in  				*:*:*.*) -					logger "Unbinding WL PCI device ${lnk##*/} from B43 SSB bridge" +					logger "Unbinding WL PCI device ${lnk##*/} from $driver"  					echo -n "${lnk##*/}" > "$sysfs/unbind"  				;;  			esac @@ -19,5 +20,10 @@ boot() {  	fi  } +boot() { +	unbind_driver b43-pci-bridge +	unbind_driver bcma-pci-bridge +} +  start() { :; }  stop() { :; } | 
