Debian 8.2 com o Kernel 4.2 no Dell XPS 13 9343

0

Eu segui o guia em

link

e conseguiu fazer tudo funcionar. (Eu instalei um pacote extra para o Wi-Fi depois).

Então eu decidi instalar o mais novo kernel do Linux (4.2) e usei o pré-compilado aqui:

link

Após a instalação, o Wi-Fi e o áudio não funcionam mais.

Eu tentei instalar o módulo WiFi novamente com o novo kernel, mas aqui está o que eu recebi:

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

Sobre o áudio, posso ver o ícone no canto superior direito, mas meu dispositivo de áudio não está listado. Aqui está a saída de 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

UPDATE: Eu tentei baixar o driver oficial de 64 bits do linux do site oficial da broadcom (versão 6.30.223.248). Aqui está a saída do comando 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
    
por Mario Villani 11.09.2015 / 15:23

3 respostas

0

Consegui corrigir os meus problemas. Eu atualizei o Debian Debian oficial com algumas novas instruções para uma configuração perfeita. Aqui está o link:

link

Em particular, contribuí com:

  • uma seção "Inicialização dupla com o Windows", na qual eu explico alguns problemas comuns e como corrigi-los.
  • eu adicionei outras instruções para instalar o Wifi descrevendo o que fazer com a sua placa wifi atual (broadcom ou intel). Eu expliquei como instalar drivers de placa Intel para o kernel Debian padrão e o kernel atualizado 4.2
  • adicionei uma seção economizadora de energia, na qual explico como aumentar a duração da bateria.
por 18.09.2015 / 19:32
1

Estou usando o kernel 4.2 no meu Dell XPS 9343 .

Eu desisti de instalar a placa Broadcom Wi-Fi e instalei a placa Intel 7265, que é uma opção para algumas configurações.

Meu áudio não funcionou, não importando quantas botas foram usadas até hoje, onde usei alsamixer do console e não mudo / alternou todos os canais no dispositivo - especialmente os que não são visíveis por padrão - do lado direito da tela.

Eu ouvi um "pop" ao fazer isso e agora meu áudio está funcionando.

    
por 18.09.2015 / 02:12
1

O driver Debian broadcom-sta pode ser corrigido para suportar o kernel 4.2, eu escolhi o patch do Arch e adicionei-o à versão do Stretch e disponibilizou aqui .

Aqui está o deb do dkms se você não quiser usar a pasta debian para criar seus próprios pacotes.

    
por 22.09.2015 / 00:47