Я следовал за гидом в

https://wiki.debian.org/InstallingDebianOn/Dell/Dell%20XPS%2013%209343

и удалось заставить все работать. (Я установил дополнительный пакет для Wi-Fi позже.)

Затем я решил установить новейшее ядро Linux (4.2) и использовал скомпилированное здесь:

http://news.softpedia.com/news/how-to-install-linux-kernel-4-2-on-ubuntu-debian-and-linux-mint-490702.shtml

После установки Wi-Fi и аудио больше не работают.

Я попытался установить модуль WiFi снова с новым ядром, но вот что я получил:

DKMS make.log for broadcom-sta-6.30.223.248 for kernel 4.2.0-7-exton (x86_64)
    mer  9 set 2015, 17.42.58, CEST
    /bin/sh: 1: [: Illegal number: 
    /bin/sh: 1: [: Illegal number: 
    Wireless Extension is the only possible API for this kernel version
    Using Wireless Extension API
    KBUILD_NOPEDANTIC=1 make -C /lib/modules/4.2.0-7-exton/build M=`pwd`
    make[1]: ingresso nella directory "/usr/src/linux-headers-4.2.0-7-exton"
    CFG80211 API is prefered for this kernel version
    Using CFG80211 API
    Kernel architecture is X86_64
      LD      /var/lib/dkms/broadcom-sta/6.30.223.248/build/built-in.o
      CC [M]  /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/shared/linux_osl.o
      CC [M]  /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_linux.o
      CC [M]  /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_iw.o
      CC [M]  /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.o
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c: In function ‘wl_cfg80211_get_key’:
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:1390:9: warning: passing argument 1 of ‘memcpy’ discards ‘const’ qualifier from pointer target type
      memcpy(params.key, key.data, params.key_len);
         ^
    In file included from ./arch/x86/include/asm/string.h:4:0,
                 from include/linux/string.h:17,
                 from include/linux/bitmap.h:8,
                 from include/linux/cpumask.h:11,
                 from ./arch/x86/include/asm/cpumask.h:4,
                 from ./arch/x86/include/asm/msr.h:10,
                 from ./arch/x86/include/asm/processor.h:20,
                 from ./arch/x86/include/asm/thread_info.h:49,
                 from include/linux/thread_info.h:54,
                 from ./arch/x86/include/asm/preempt.h:6,
                 from include/linux/preempt.h:64,
                 from include/linux/spinlock.h:50,
                 from include/linux/seqlock.h:35,
                 from include/linux/time.h:5,
                 from include/linux/stat.h:18,
                 from include/linux/module.h:10,
                 from /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/include/linuxver.h:40,
                 from /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:26:
    ./arch/x86/include/asm/string_64.h:34:14: note: expected ‘void *’ but argument is of type ‘const u8 *’
     extern void *memcpy(void *to, const void *from, size_t len);
              ^
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c: In function ‘wl_cfg80211_get_station’:
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:1444:20: error: ‘STATION_INFO_TX_BITRATE’ undeclared (first use in this function)
       sinfo->filled |= STATION_INFO_TX_BITRATE;
                    ^
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:1444:20: note: each undeclared identifier is reported only once for each function it appears in
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:1457:20: error: ‘STATION_INFO_SIGNAL’ undeclared (first use in this function)
       sinfo->filled |= STATION_INFO_SIGNAL;
                    ^
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c: At top level:
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:1778:2: warning: initialization from incompatible pointer type
      .get_station = wl_cfg80211_get_station,
      ^
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:1778:2: warning: (near initialization for ‘wl_cfg80211_ops.get_station’)
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c: In function ‘wl_inform_single_bss’:
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:2013:9: error: incompatible type for argument 3 of ‘cfg80211_inform_bss’
      cbss = cfg80211_inform_bss(wiphy, channel, (const u8 *)(bi->BSSID.octet),
         ^
    In file included from /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:33:0:
    include/net/cfg80211.h:4029:1: note: expected ‘enum cfg80211_bss_frame_type’ but argument is of type ‘const u8 *’
     cfg80211_inform_bss(struct wiphy *wiphy,
     ^
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:2015:3: warning: passing argument 7 of ‘cfg80211_inform_bss’ makes integer from pointer without a cast
       (const u8 *)notify_ie, notify_ielen, signal, GFP_KERNEL);
       ^
    In file included from /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:33:0:
    include/net/cfg80211.h:4029:1: note: expected ‘u16’ but argument is of type ‘const u8 *’
     cfg80211_inform_bss(struct wiphy *wiphy,
     ^
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:2015:26: warning: passing argument 8 of ‘cfg80211_inform_bss’ makes pointer from integer without a cast
       (const u8 *)notify_ie, notify_ielen, signal, GFP_KERNEL);
                          ^
    In file included from /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:33:0:
    include/net/cfg80211.h:4029:1: note: expected ‘const u8 *’ but argument is of type ‘size_t’
     cfg80211_inform_bss(struct wiphy *wiphy,
     ^
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:2013:9: error: too few arguments to function ‘cfg80211_inform_bss’
      cbss = cfg80211_inform_bss(wiphy, channel, (const u8 *)(bi->BSSID.octet),
         ^
    In file included from /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:33:0:
    include/net/cfg80211.h:4029:1: note: declared here
     cfg80211_inform_bss(struct wiphy *wiphy,
     ^
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c: In function ‘wl_notify_connect_status’:
    /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:2050:4: error: too few arguments to function ‘cfg80211_disconnected’
        cfg80211_disconnected(ndev, 0, NULL, 0, GFP_KERNEL);
        ^
    In file included from /var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.c:33:0:
    include/net/cfg80211.h:4584:6: note: declared here
     void cfg80211_disconnected(struct net_device *dev, u16 reason,
          ^
    scripts/Makefile.build:258: set di istruzioni per l'obiettivo "/var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.o" non riuscito
    make[2]: *** [/var/lib/dkms/broadcom-sta/6.30.223.248/build/src/wl/sys/wl_cfg80211_hybrid.o] Errore 1
    Makefile:1398: set di istruzioni per l'obiettivo "_module_/var/lib/dkms/broadcom-sta/6.30.223.248/build" non riuscito
    make[1]: *** [_module_/var/lib/dkms/broadcom-sta/6.30.223.248/build] Errore 2
    make[1]: uscita dalla directory "/usr/src/linux-headers-4.2.0-7-exton"
    Makefile:158: set di istruzioni per l'obiettivo "all" non riuscito
    make: *** [all] Errore 2

Что касается аудио, я вижу значок в правом верхнем углу, но мое аудиоустройство не указано в списке. Вот aplay -l :

**** List of PLAYBACK Hardware Devices ****
card 0: HDMI [HDA Intel HDMI], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel HDMI], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

ОБНОВЛЕНИЕ: Я попытался загрузить официальный 64-битный драйвер linux с официального сайта Broadcom (версия 6.30.223.248). Вот вывод команды make:

KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: ingresso nella directory "/usr/src/linux-headers-4.2.0-7-exton"
CFG80211 API is prefered for this kernel version
Using CFG80211 API
  CC [M]  /home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248/src/wl/sys/wl_linux.o
/home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248/src/wl/sys/wl_linux.c: In function ‘wl_alloc_linux_if’:
/home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248/src/wl/sys/wl_linux.c:1310:64: error: macro "alloc_netdev" requires 4 arguments, but only 3 given
  dev = alloc_netdev(sizeof(priv_link_t), intf_name, ether_setup);
                                                                ^
/home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248/src/wl/sys/wl_linux.c:1310:8: error: ‘alloc_netdev’ undeclared (first use in this function)
  dev = alloc_netdev(sizeof(priv_link_t), intf_name, ether_setup);
        ^
/home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248/src/wl/sys/wl_linux.c:1310:8: note: each undeclared identifier is reported only once for each function it appears in
/home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248/src/wl/sys/wl_linux.c: In function ‘wl_dump_ver’:
/home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248/src/wl/sys/wl_linux.c:2049:3: error: macro "__DATE__" might prevent reproducible builds [-Werror=date-time]
   __DATE__, __TIME__, EPI_VERSION_STR);
   ^
/home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248/src/wl/sys/wl_linux.c:2049:13: error: macro "__TIME__" might prevent reproducible builds [-Werror=date-time]
   __DATE__, __TIME__, EPI_VERSION_STR);
             ^
cc1: some warnings being treated as errors
scripts/Makefile.build:258: set di istruzioni per l'obiettivo "/home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248/src/wl/sys/wl_linux.o" non riuscito
make[2]: *** [/home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248/src/wl/sys/wl_linux.o] Errore 1
Makefile:1398: set di istruzioni per l'obiettivo "_module_/home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248" non riuscito
make[1]: *** [_module_/home/mario/Scaricati/hybrid-v35_64-nodebug-pcoem-6_30_223_248] Errore 2
make[1]: uscita dalla directory "/usr/src/linux-headers-4.2.0-7-exton"
Makefile:140: set di istruzioni per l'obiettivo "all" non riuscito
make: *** [all] Errore 2

3 ответа3

1

Драйвер Debian broadcom-sta может быть исправлен для поддержки ядра 4.2, я выбрал патч от Arch, добавил его в версию Stretch и сделал его доступным здесь.

Вот dkms deb, если вы не хотите использовать папку debian для сборки ваших собственных пакетов.

1

Я использую ядро 4.2 на моем Dell XPS 9343.

Я отказался от работы платы Broadcom Wi-Fi и установил плату Intel 7265, которая является опцией для некоторых конфигураций.

Мой звук не работал, независимо от того, сколько «холодных» загрузок я делал до сегодняшнего дня, когда я использовал alsamixer с консоли и включал / выключал все каналы на устройстве - особенно те, которые не видны по умолчанию - с правой стороны экрана.

Когда я это делал, я услышал «поп», и теперь мой звук работает.

0

Мне удалось исправить мои проблемы. Я обновил официальную вики Debian новыми инструкциями для идеальной конфигурации. Вот ссылка:

https://wiki.debian.org/InstallingDebianOn/Dell/Dell%20XPS%2013%209343

В частности, я внес вклад с:

  • раздел "Двойная загрузка с Windows", где я объясняю некоторые распространенные проблемы и способы их устранения.
  • Я добавил другую инструкцию для установки Wifi, описывающую, что делать с вашей текущей картой Wi-Fi (Broadcom или Intel). Я объяснил, как установить драйверы карты Intel для стандартного ядра Debian и обновленное ядро 4.2
  • Я добавил раздел энергосбережения, где я объясняю, как увеличить время работы от батареи.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .