Jak zainstalować Broadcom BCM4360 na Debianie na Macbooku Pro


10

Próbuję zainstalować sterowniki bezprzewodowe ponieważ mój MacBook Pro nie posiada port Ethernet, a potem zamontować 3 isos debian jak lokalnych repozytoriów zainstalować niemal wszystkich dependeces.

Więc co próbowałem zrobić, aby zainstalować broadcam 4360

https://wiki.debian.org/bcm43xx

https://wiki.debian.org/wl

Kiedy próbuję zainstalować to:

http://www.broadcom.com/support/802.11/linux_sta.php

Mam następujące problemy:

KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
make[1]: Entering directory '/usr/src/linux-headers-3.16-2-amd64'
make[1]: Entering directory `/usr/src/linux-headers-3.16-2-amd64'
CFG80211 API is prefered for this kernel version
Using CFG80211 API
  CC [M]  /home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.o
/home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.c: In function ‘wl_cfg80211_get_key’:
/home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.c:1390:2: warning: passing argument 1 of ‘memcpy’ discards ‘const’ qualifier from pointer target type [enabled by default]
  memcpy(params.key, key.data, params.key_len);
  ^
In file included from /usr/src/linux-headers-3.16-2-common/arch/x86/include/asm/string.h:4:0,
                 from /usr/src/linux-headers-3.16-2-common/include/linux/string.h:17,
                 from /usr/src/linux-headers-3.16-2-common/include/linux/bitmap.h:8,
                 from /usr/src/linux-headers-3.16-2-common/include/linux/cpumask.h:11,
                 from /usr/src/linux-headers-3.16-2-common/arch/x86/include/asm/cpumask.h:4,
                 from /usr/src/linux-headers-3.16-2-common/arch/x86/include/asm/msr.h:10,
                 from /usr/src/linux-headers-3.16-2-common/arch/x86/include/asm/processor.h:20,
                 from /usr/src/linux-headers-3.16-2-common/arch/x86/include/asm/thread_info.h:23,
                 from /usr/src/linux-headers-3.16-2-common/include/linux/thread_info.h:54,
                 from /usr/src/linux-headers-3.16-2-common/arch/x86/include/asm/preempt.h:6,
                 from /usr/src/linux-headers-3.16-2-common/include/linux/preempt.h:18,
                 from /usr/src/linux-headers-3.16-2-common/include/linux/spinlock.h:50,
                 from /usr/src/linux-headers-3.16-2-common/include/linux/seqlock.h:35,
                 from /usr/src/linux-headers-3.16-2-common/include/linux/time.h:5,
                 from /usr/src/linux-headers-3.16-2-common/include/linux/stat.h:18,
                 from /usr/src/linux-headers-3.16-2-common/include/linux/module.h:10,
                 from /home/cristian/Downloads/broadcom/src/include/linuxver.h:40,
                 from /home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.c:26:
/usr/src/linux-headers-3.16-2-common/arch/x86/include/asm/string_64.h:32:14: note: expected ‘void *’ but argument is of type ‘const u8 *’
 extern void *memcpy(void *to, const void *from, size_t len);
              ^
/home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.c: At top level:
/home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.c:1778:2: warning: initialization from incompatible pointer type [enabled by default]
  .get_station = wl_cfg80211_get_station,
  ^
/home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.c:1778:2: warning: (near initialization for ‘wl_cfg80211_ops.get_station’) [enabled by default]
/home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.c: In function ‘wl_notify_connect_status’:
/home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.c:2074:4: warning: passing argument 3 of ‘cfg80211_ibss_joined’ makes pointer from integer without a cast [enabled by default]
    cfg80211_ibss_joined(ndev, (u8 *)&wl->bssid, GFP_KERNEL);
    ^
In file included from /home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.c:33:0:
/usr/src/linux-headers-3.16-2-common/include/net/cfg80211.h:4002:6: note: expected ‘struct ieee80211_channel *’ but argument is of type ‘unsigned int’
 void cfg80211_ibss_joined(struct net_device *dev, const u8 *bssid,
      ^
/home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.c:2074:4: error: too few arguments to function ‘cfg80211_ibss_joined’
    cfg80211_ibss_joined(ndev, (u8 *)&wl->bssid, GFP_KERNEL);
    ^
In file included from /home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.c:33:0:
/usr/src/linux-headers-3.16-2-common/include/net/cfg80211.h:4002:6: note: declared here
 void cfg80211_ibss_joined(struct net_device *dev, const u8 *bssid,
      ^
/usr/src/linux-headers-3.16-2-common/scripts/Makefile.build:262: recipe for target '/home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.o' failed
make[4]: *** [/home/cristian/Downloads/broadcom/src/wl/sys/wl_cfg80211_hybrid.o] Error 1
/usr/src/linux-headers-3.16-2-common/Makefile:1350: recipe for target '_module_/home/cristian/Downloads/broadcom' failed
make[3]: *** [_module_/home/cristian/Downloads/broadcom] Error 2
Makefile:181: recipe for target 'sub-make' failed
make[2]: *** [sub-make] Error 2
Makefile:8: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-3.16-2-amd64'                                                                                                                                      
Makefile:140: recipe for target 'all' failed                                                                                                                                                          
make: *** [all] Error 2  

Więc jeśli ktoś zainstalował sterowniki do Broadcom 4360 na Macu z Debianem, proszę powiedz mi jak i jakie sugestie polecają mi inni


Uważam, że urządzenie używa sterownika „wl” ubuntuforums.org/showthread.php?t=2205494
mchid

Odpowiedzi:


13

EDYTOWAĆ

Broadcom 4360 jest wyposażony w jeden z dwóch odrębnych układów: 14E4: 4360 i 14E4: 43A0. W Linuksie nie ma sterownika dla pierwszego, a wl jest odpowiednim sterownikiem dla drugiego. Możesz ustalić, który z nich masz, za pomocą następującego polecenia:

 lspci -vnn | grep -i net

Jeśli zamiast tego chcesz to zrobić w systemie Mac OS, kliknij Apple -> O tym Macu -> Więcej informacji -> Informacje o systemie, a następnie kliknij Wi-Fi. Znajdziesz linię podobną do

 Card Type: AirPort Extreme  (0x14E4, 0x117)

która wyświetla kod dostawcy (14E4) i produktu (w moim przypadku 117) karty Wi-Fi.


Brak wsparcia dla Broadcom 4360 14E4: 4360 w systemie Linux. Ostatecznym przewodnikiem w tych sprawach jest Linux Wireless , który podaje w tej tabeli listę wszystkich bezprzewodowych układów Broadcomm i dostępnych sterowników Linux. Jak widać, żaden sterownik nie znajduje się na liście w BCM4360 14E4: 4360.

Dwa wiersze poniżej w tej samej tabeli pokazują, że drugi układ, z którym produkowany jest 4360, 14E4: 43A0, jest obsługiwany przez zastrzeżony sterownik wl . Prawidłowa procedura instalacji tego sterownika jest opisana tutaj, na Wiki Debiana . W przypadku Wheezy powinieneś dodać tę linię

   deb http://http.debian.net/debian/ wheezy main contrib non-free

do pliku /etc/apt/sources.list, a następnie uruchom

  apt-get update
  apt-get install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') broadcom-sta-dkms

i na koniec będziesz musiał usunąć niektóre sprzeczne sterowniki, które są wstępnie zainstalowane w Debianie:

 modprobe -r b44 b43 b43legacy ssb brcmsmac

Teraz możesz już iść:

 modprobe wl

Powinieneś również pamiętać o następujących kwestiach: o sterowniku wl , tak ma zawsze informująca wiki Arch Linux :

Ostrzeżenie : Mimo że ten sterownik dojrzał przez lata i działa całkiem dobrze, jego użycie jest zalecane tylko wtedy, gdy żaden z dwóch sterowników open source nie obsługuje twojego urządzenia. Lista obsługiwanych urządzeń znajduje się na stronie projektu b43.


To była dla mnie poprawna odpowiedź. UWAGA dla każdego, kto, podobnie jak ja, miał problem z niezawodnym połączeniem LAN do korzystania z apt-get: Potrzebowałem pełnego pakietu do pobrania zawierającego zależności do konfiguracji Wi-Fi w Debianie na moim MacBooku Pro 13 cali z końca 2014 roku (z BCM4360 14E4: 43A0) i nie mogłem znaleźć takiego pakietu. Tak więc, kompilując pliki .deb ręcznie pobrane dla Debiana Jessie, stworzyłem swój własny mały skrypt konfiguracji Wi-Fi. Jeśli komuś by się to spodobało, oto: dropbox.com/s/00doasn3b3zh7eh/MacbookDebianWifi.zip?dl=0 Wyodrębnij i uruchom WifiSetup.sh
Mike Turley

@MikeTurley link nie jest już prawidłowy. Próbuję zainstalować Qubes OS na moim MacBooku Pro w połowie 2014 roku i ten link brzmi dokładnie tak, jak potrzebuję! Już wyłączyłem moją maszynę wirtualną sys-net dla debian9. Więc wszystko, czego potrzebuję, to skopiować sterowniki.
eduncan911

Jedyny sposób, który zadziałał, to instalacja BCM4360 na pojedynczym rozruchu Kali Linux na MacBooku Air w 2017 roku ... Oczywiście dodanie niewolnych dep z oficjalnej dokumentacji Kali, a nie dep deb! Głosuję za ciebie :)
Roberto Manfreda

4

Nigdy nie słuchaj nikogo, kto mówi ci, że nie możesz zrobić czegoś w systemie Linux, właśnie dlatego nie używam już okien. : P

Najpierw włącz niewolne repozytorium. Dodając „ non-free” do /etc/apt/sources.listpliku „ ”.

Następnie uruchom następujące polecenia:

sudo apt-get update
sudo apt-get install broadcom-sta-*
sudo modprobe wl
echo "wl" | sudo tee -a /etc/modules

Nie zapomnij o -a w poleceniu tee, bo zastąpisz cały plik !!

Jeśli to nie zadziała od razu, uruchom ponownie i powinno być w porządku.

http://ubuntuforums.org/showthread.php?t=2205494

https://packages.debian.org/jessie/all/broadcom-sta-common/download

http://forums.linuxmint.com/viewtopic.php?f=194&t=175030


1
Masz częściowo rację, nie do końca: BROADCOM 4360 ma dwa chipy (mój zły, nie zauważyłem!), Jeden to 14E4: 4360, którego dotyczy to, co powiedziałem, a drugi 14E4: 43A0, dla którego wl jest rzeczywiście odpowiednim sterownikiem . Mam tylko nadzieję, że OP ma to drugie.
MariusMatutiae,

miał całkowitą rację. lol 2014 odpowiedź, to OG
Bent Cardan

Ostatnio wybrałem Apple Broadcom BCM94360CD do podwójnego uruchamiania Linux / Hackintosh. Działający system operacyjny Zoron (wariant Ubuntu) nie musiał dodawać do listy niewolnego repozytorium, wszystko działało dobrze.
Paul J
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.