You are not logged in.

#1 2016-06-05 05:50:59

syercv
Member
Registered: 2016-06-05
Posts: 3

Surface Pro 3 - Wireless not showing up in lspci after upgrade

I just ran pacman -Syu on my Surface Pro 3, and after a reboot, WIFI has stopped working. Interestingly, the wireless device/card is not showing up in lspci.

I'm using the surfacepro3 kernel from AUR:

$ uname -a
Linux surface 4.4.1-2-surfacepro3 #1 SMP PREEMPT Fri Mar 25 19:16:58 AEDT 2016 x86_64 GNU/Linux

Here is what I think the output of lspci SHOULD look like with all hardware discovered (according to the net: https://bugzilla.redhat.com/show_bug.cgi?id=1171293)

00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 0b)
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b)
00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 0b)
00:14.0 USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
00:16.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04)
00:1b.0 Audio device: Intel Corporation 8 Series HD Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 3 (rev e4)
00:1f.0 ISA bridge: Intel Corporation 8 Series LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 8 Series SATA Controller 1 [AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 8 Series SMBus Controller (rev 04)
01:00.0 Ethernet controller: Marvell Technology Group Ltd. Device 2b38

Both the PCI bridge and the Ethernet controller are missing from my own lspci output:

00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 0b)
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b)
00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 0b)
00:14.0 USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
00:16.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04)
00:1b.0 Audio device: Intel Corporation 8 Series HD Audio Controller (rev 04)
00:1f.0 ISA bridge: Intel Corporation 8 Series LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 8 Series SATA Controller 1 [AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 8 Series SMBus Controller (rev 04)

I believe the mwifiex_pcie driver should be loaded on boot, but it is not. I can load the module manually, but dmesg still shows no activity from the driver:

$ modprobe mwifiex_pcie
$ lsmod|grep mwif
mwifiex_pcie           32768  0
mwifiex               258048  1 mwifiex_pcie
cfg80211              475136  1 mwifiex
$ dmesg|grep mwif
-- no output --

My next move was going to be to reboot into the UEFI menu to disable/reenable wireless but there was no menu option for this which means I may have old firmware.

My last resort is to reboot into Windows and download the latest firmware for the UEFI menu, but it is a last resort because every time I reboot into Windows, it overwrites the boot order that I had set with efibootmgr, and I can't boot back into Arch Linux without the help of a USB thumb drive which I currently don't have.

Before that, is there anything else that I might be able to do, or is there anything else that can be concluded from the above output? For example, I'm not exactly sure whether this is a driver issue or an UEFI issue or a hardware issue or something else.

Thanks for any tips you might be able to give.

Offline

#2 2016-06-05 15:51:04

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,732
Website

Re: Surface Pro 3 - Wireless not showing up in lspci after upgrade

syercv wrote:

My last resort is to reboot into Windows and download the latest firmware for the UEFI menu, but it is a last resort because every time I reboot into Windows, it overwrites the boot order that I had set with efibootmgr, and I can't boot back into Arch Linux without the help of a USB thumb drive which I currently don't have.

See https://wiki.archlinux.org/index.php/Un … boot_order

Can you "see" the card if you load up a live ISO image?

Offline

#3 2016-06-05 18:49:34

mich41
Member
Registered: 2012-06-22
Posts: 796

Re: Surface Pro 3 - Wireless not showing up in lspci after upgrade

There is /var/cache/pacman/pkg if you quickly need a working system back.

Offline

#4 2016-06-06 12:48:02

syercv
Member
Registered: 2016-06-05
Posts: 3

Re: Surface Pro 3 - Wireless not showing up in lspci after upgrade

Head_on_a_Stick wrote:

Can you "see" the card if you load up a live ISO image?

The SP3 has no CDROM drive, but when I eventually get a USB thumb drive, this is definitely one of the things I would like to test. I'll write back with the results. It's quite baffling that hardware has gone missing from lspci suddenly, and it's highlighted an annoying hole in my understanding of how hardware is discovered. I feel I need to understand this better.

As for the boot order issue, thanks for the link. I believe Windows 10 has a whole other workaround than the one outlined on that link, which also didn't work for me. Although I'm not too bothered by it since I never (apart from extremely rare occasions like this) use Windows :-)

Offline

#5 2016-06-06 18:13:33

mike_r
Member
Registered: 2009-01-22
Posts: 114

Re: Surface Pro 3 - Wireless not showing up in lspci after upgrade

syercv wrote:

I just ran pacman -Syu on my Surface Pro 3, and after a reboot, WIFI has stopped working. Interestingly, the wireless device/card is not showing up in lspci.

I'm using the surfacepro3 kernel from AUR:

$ uname -a
Linux surface 4.4.1-2-surfacepro3 #1 SMP PREEMPT Fri Mar 25 19:16:58 AEDT 2016 x86_64 GNU/Linux

linux-surfacepro3 is now up to linux-4.6. This has fixes for the WIFI regression introduced in 4.4. Try rebuilding with 4.6 to see if that fixes it.


Linux User #353 - SLS -> Slackware -> Red Hat -> Mandrake -> Fedora -> Arch

Offline

#6 2016-06-09 15:34:10

syercv
Member
Registered: 2016-06-05
Posts: 3

Re: Surface Pro 3 - Wireless not showing up in lspci after upgrade

mike_r wrote:

linux-surfacepro3 is now up to linux-4.6. This has fixes for the WIFI regression introduced in 4.4. Try rebuilding with 4.6 to see if that fixes it.

I tried installing the latest with:

$ pacman -Syu
$ yaourt surfacepro3

But got several compile errors such as:

In file included from /usr/include/gelf.h:32:0,
                 from arch/x86/../../elf.h:22,
                 from arch/x86/decode.c:26:
/usr/include/libelf.h:46:4: error: unknown type name ‘Elf32_Word’
    Elf32_Word   ch_type;        /* Compression format.  */
    ^~~~~~~~~~

and

arch/x86/decode.c:32:2: error: switch missing default case [-Werror=switch-default]
  switch (elf->ehdr.e_machine) {
  ^~~~~~
arch/x86/decode.c:41:1: error: control reaches end of non-void function [-Werror=return-type]
 }
 ^

Is there anything special I need to do before the compile will work?

Offline

#7 2016-06-09 23:58:16

mike_r
Member
Registered: 2009-01-22
Posts: 114

Re: Surface Pro 3 - Wireless not showing up in lspci after upgrade

I assume you meant "yaourt -S linux-surfacepro3"? That's essentially what I did (yes, I'm one of those heathen yaourt users as well), but I had no trouble with it. Do you have the complete base-devel collection installed? You wisely updated your system before trying, but it looks like something in the compiler is missing/corrupt. You might also try doing it by hand with makepkg, breaking it up to ensure that all the patches applied correctly; e.g

makepkg -o
makepkg -e
makepkg -i

(Doublecheck the makepkg man page.)


Linux User #353 - SLS -> Slackware -> Red Hat -> Mandrake -> Fedora -> Arch

Offline

Board footer

Powered by FluxBB