имеем-с
user@host
#iwconfig
Код: Выделить всё
lo no wireless extensions
eth0 no wireless extensions
user@host
#ifconfig
user@host
#iwlist
user@host
#lshw -C network
Код: Выделить всё
*-network UNCLAIMED
description: Network controller
product: BCM4312 802.11b/g
vendor: Broadcom Corporation
physical id: 0
bus inf: pci@0000:10:00.0
version: 01
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list
configuration: latency=0
user@host
#lspci -vnn | grep 14e4
Код: Выделить всё
10:00.0 Network controller [0280]: Broadcom Corporation BCM4312 802.11b/g [14e4:4315] (rev 01)
на странице http://linuxwireless.org/en/users/Drivers/...KnownPCIdevices видим, что я попадаю в "not supported", с драйверами b43 не по пути.
c ndiswrapper и вариантами вроде http://easylinux.ru/node/201 (http://linuxforum.ru/index.php?showtopic=81897) пока связываться не хочу, т.к., например, в ubuntu 8.10, насколько я вычитал, вшит подходящий драйвер. сеть именно на этом лэптопе поднимается "из коробки". т.е. 100% имеется работоспособный под linux.
в итоге я нашел http://www.broadcom.com/support/802.11/linux_sta.php - оффициальные broadcom драйверы. скачал последние, т.е. 5.10.91.9.
действовал по _аналогии_ этого руководства: http://jomcode.com/fadhil/?p=59 .
пошагово:
1. скачал, распаковал драйвер.
2.
user@host
#make -C /lib/modules/`uname -r`/build M=`pwd`
заканчивается c ошибками
Код:
make: Entering directory `/usr/src/linux-headers-2.6.29-2-686'
CC [M] /UNPACKED/src/w1/sys/w1_linux.o
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_attach':
/UNPACKED/src/wl/sys/wl_linux.c:362: error: implicit declaration of function 'ieee80211_get_crypto_ops'
/UNPACKED/src/wl/sys/wl_linux.c:362: warning: assignment makes pointer from integer without a cast
/UNPACKED/src/wl/sys/wl_linux.c:365: warning: assignment makes pointer from integer without a cast
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_free':
/UNPACKED/src/wl/sys/wl_linux.c:634: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c:669: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c:685: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c:689: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_open':
/UNPACKED/src/wl/sys/wl_linux.c:714: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_close':
/UNPACKED/src/wl/sys/wl_linux.c:742: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_start':
/UNPACKED/src/wl/sys/wl_linux.c:765: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_alloc_if':
/UNPACKED/src/wl/sys/wl_linux.c:850: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_get_driver_info':
/UNPACKED/src/wl/sys/wl_linux.c:1030: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_ioctl':
/UNPACKED/src/wl/sys/wl_linux.c:1118: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c:1119: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_get_stats':
/UNPACKED/src/wl/sys/wl_linux.c:1204: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_get_wireless_stats':
/UNPACKED/src/wl/sys/wl_linux.c:1236: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c:1237: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_set_mac_address':
/UNPACKED/src/wl/sys/wl_linux.c:1304: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c:1312: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c: In function '_wl_set_multicast_list':
/UNPACKED/src/wl/sys/wl_linux.c:1335: error: 'struct net_device' has no member named 'priv'
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_tkip_miccheck':
/UNPACKED/src/wl/sys/wl_linux.c:1726: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c:1729: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_tkip_micadd':
/UNPACKED/src/wl/sys/wl_linux.c:1748: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_tkip_encrypt':
/UNPACKED/src/wl/sys/wl_linux.c:1768: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_tkip_decrypt':
/UNPACKED/src/wl/sys/wl_linux.c:1790: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c:1792: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_tkip_keyset':
/UNPACKED/src/wl/sys/wl_linux.c:1834: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c:1844: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c:1851: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c:1861: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c:1871: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c:1878: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c: In function 'wl_tkip_printstats':
/UNPACKED/src/wl/sys/wl_linux.c:1897: error: dereferencing pointer to incomplete type
/UNPACKED/src/wl/sys/wl_linux.c:1899: error: dereferencing pointer to incomplete type
make[3]: *** [/UNPACKED/src/wl/sys/wl_linux.o] Error 1
make[2]: *** [_module_/UNPACKED] Error 2
make[1]: *** [sub-make] Error 2
make: *** [all] Error 2
make: Leaving directory...
3. погуглил, понял, ошибка из-за изменения названий модулей в ядре. нашел соответствующую заплатку - broadcom-sta-5.10.91.9-linux-2.6.29.patch, установил:
user@host
#patch -p1 -d /UNPACKED/src/wl/sys/ < broadcom-sta-5.10.91.9-linux-2.6.29.patch
Код: Выделить всё
patching file wl_iw.c
patching file wl_linux.c
patching file wl_linux.h
4. после установки
user@host
#make -C /lib/modules/`uname -r`/build M=`pwd`
Код: Выделить всё
make: Entering directory `/usr/src/linux-headers-2.6.29-2-686'
CC [M] /UNPACKED/src/wl/sys/wl_linux.o
CC [M] /UNPACKED/src/wl/sys/wl_iw.o
CC [M] /UNPACKED/src/wl/sys/linux_osl.o
LD [M] /UNPACKED/src/wl/sys/wl.o
Building modules, stage 2.
MODPOST 1 modules
WARNING: modpost: missing MODULE_LICENSE () in /UNPACKED/wl.o
see include/linux/module.h for more information
CC /UNPACKED/src/wl/sys/wl.mod.o
LD [M] /UNPACKED/src/wl/sys/wl.ko
make: Leaving directory....
5. далее по гайду проверил, не осталось ли модулей b43:
user@host
#rmmod bcm43xx; rmmod b43; rmmod b43legacy
и ndiswrapper:
user@host
#rmmod ndiswrapper
убедился, что в /proc/modules их не существует.
"...Now load the module ieee80211_crypt_tkip: modprobe ieee80211_crypt_tkip..."
user@host
#modprobe ieee80211_crypt_tkip
Код: Выделить всё
FATAL: Module ieee80211_crypt_tkip not found
на этом и застрял. что делать, не знаю. если пропустить этот шаг, перейти к следующему и сделать
"...And finally load the wl.ko module: insmod wl.ko..."
user@host
#insmod wl.ko
то наблюдаю бурный лог неясно чего на экран, на какой-то строке система виснет и перестает реагировать на клавиши. длительным удержанием powerbutton выключаю машину, завожу снова.
прошу помощи и совета (любые дельные принимаются с благодарностью). пойду, конечно, читать, но что-то я совсем в своих силах не уверен. для меня глубоковато дальше...
заранее признателен за отклик. ссылки в т.ч.