Як встановити Broadcom BCM4360 на debian на Macbook pro


10

Я намагаюся встановити драйвери бездротового зв’язку, оскільки у мого macbook pro немає порта Ethernet, тоді я монтую 3 debian isos, як локальні сховища, щоб встановити майже всі залежності.

Отже, що я намагався зробити, щоб встановити ширококамеру 4360

https://wiki.debian.org/bcm43xx

https://wiki.debian.org/wl

Коли я намагаюся встановити це:

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

У мене виникають такі проблеми:

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  

Тож якщо хтось встановив драйвери Broadcom 4360 на mac з debian, скажіть, будь ласка, як і які інші рекомендації рекомендують мені


Я вважаю, що пристрій використовує драйвер "wl" ubuntuforums.org/showthread.php?t=2205494
mchid

Відповіді:


13

EDIT

Broadcom 4360 фактично поставляється з будь-яким з двох чіпів, 14E4: 4360 та 14E4: 43A0. У Linux немає драйвера для першого, а wl - відповідний драйвер для другого. Ви можете визначити, який у вас є, за допомогою наступної команди:

 lspci -vnn | grep -i net

Якщо замість цього ви хочете зробити це в Mac OS, натисніть Apple -> About this Mac -> More Info-> System Info, а потім натисніть Wi-Fi. Ви знайдете такий рядок

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

на якому відображаються код постачальника (14E4) та Product (117, в моєму випадку) карти Wi-Fi.


Підтримка Broadcom 4360 14E4: 4360 в Linux не підтримується. Остаточним посібником з цих питань є Linux Wireless , який дає в цій таблиці список усіх бездротових мікросхем Broadcomm та наявні драйвери Linux. Як бачите, жоден драйвер не вказаний під BCM4360 14E4: 4360.

Два рядки нижче в цій же таблиці показано, що інший чіп, з яким виробляється 4360, 14E4: 43A0, замість цього підтримується власним драйвером wl . Правильна процедура встановлення цього драйвера описана тут, у Debian Wiki . Для Wheezy слід додати цей рядок

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

у файл /etc/apt/sources.list, потім запустіть

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

і нарешті, вам потрібно буде видалити деякі конфліктні драйвери, які попередньо встановлені в Debian:

 modprobe -r b44 b43 b43legacy ssb brcmsmac

Тепер вам добре піти:

 modprobe wl

Також слід пам’ятати про таке: про драйвер wl , про це має сказати постійно інформативна вікі Arch Linux :

Попередження : Незважаючи на те, що цей драйвер протягом багатьох років дорослішав і працює досить добре, його використання рекомендується використовувати лише тоді, коли жоден із двох драйверів з відкритим кодом не підтримує ваш пристрій. Перегляньте сторінку проекту b43 для переліку підтримуваних пристроїв.


Це була правильна відповідь для мене. ПРИМІТКА для тих, хто, як і я, мав проблеми з надійним підключенням до локальної мережі, на якому використовувати apt-get: мені потрібен був повний завантажуваний пакет, включаючи залежності для налаштування wifi в debian на моєму кінці 2014 року macbook pro 13 дюйм (з BCM4360 14E4: 43A0 чіп), і я не зміг знайти такий пакет. Таким чином, компілюючи .deb файли, завантажені вручну для debian jessie, я створив власний маленький сценарій налаштування Wi-Fi. Якщо комусь це сподобається, ось це: dropbox.com/s/00doasn3b3zh7eh/MacbookDebianWifi.zip?dl=0 Витягнути та запустити WifiSetup.sh
Майк Терлі

@MikeTurley посилання більше не діє. Я намагаюся встановити Qubes OS на свій macbook pro в середині 2014 року, і це посилання звучить як саме те, що мені потрібно! Я вже вимкнув свій VM-систему для debian9. Тому все, що мені потрібно, - це скопіювати драйвери.
eduncan911

Єдиний спосіб працював для мене, встановивши BCM4360 на один завантажувальний сервер kali linux в ефірі macbook 2017 року ... Очевидно, додавання невільних деп з офіційної документації Kali, а не деб деп !!! Upvote for you :)
Роберто Манфреда

4

Ніколи не слухайте тих, хто говорить вам, що ви не можете щось робити в Linux, саме тому я більше не використовую Windows. : P

По-перше, увімкніть невільні репости. Додавши " non-free" у свій " /etc/apt/sources.list" файл.

Потім запустіть такі команди:

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

Не забудьте команду -a в трійнику або ви перезапишете весь файл !!

Якщо це не працює відразу, перезавантажте і це повинно бути добре.

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
Ви частково праві, в повному обсязі: BROADCOM 4360 поставляється з двома чіпами (! Мій поганий, я не помітив), один 14E4: 4360 , до якого відноситься те , що я сказав, і один 14E4: 43A0 , для яких з.д. дійсно відповідний драйвер . Я просто сподіваюсь на ОП, що він має останній.
MariusMatutiae

він був абсолютно правий. lol 2014 відповідь, це OG
Bent Cardan

Нещодавно я взяв Apple Broadcom BCM94360CD для подвійного завантаження Linux / hackintosh. Запуск Zoron OS (варіант Ubuntu) не повинен був додавати до списку невільне репо, все працювало нормально.
Пол Дж.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.