Surface Pro 3 Wifi stopped working once I updated my system

I was just answering the more general question of how to manage kernels. If one doesn’t work you try another.

Are you trying to remove linux-firmware?

If so just install the marvell one alongside it. I don’t have a surface, but linux-firmware-marvell didn’t try to remove anything on my system.

Please post the commands you use and output you get, makes it easier to figure out what’s happening.

I know if I just install the newest kernel and firmware it will stop the wifi from working. selari says he realized that it was the marvell firmware that we needed. I don’t want to loose wifi and would like to get updates but when I try to install it I get the following…

[claw@claw-surfacepro3 ~]$ sudo pacman -Sy linux-firmware-marvell
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
resolving dependencies...
looking for conflicting packages...

Packages (2) linux-firmware-whence-20220119.0c6a7b3-3
             linux-firmware-marvell-20220119.0c6a7b3-3

Total Installed Size:  52.72 MiB

:: Proceed with installation? [Y/n] y
(2/2) checking keys in keyring                     [######################] 100%
(2/2) checking package integrity                   [######################] 100%
(2/2) loading package files                        [######################] 100%
(2/2) checking for file conflicts                  [######################] 100%
error: failed to commit transaction (conflicting files)
linux-firmware-marvell: /usr/lib/firmware/libertas/cf8381.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/cf8381_helper.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/cf8385.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/cf8385_helper.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/gspi8682.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/gspi8682_helper.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/gspi8686_v9.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/gspi8686_v9_helper.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/gspi8688.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/gspi8688_helper.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/lbtf_sdio.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/sd8385.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/sd8385_helper.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/sd8682.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/sd8682_helper.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/sd8686_v8.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/sd8686_v8_helper.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/sd8686_v9.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/sd8686_v9_helper.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/sd8688.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/sd8688_helper.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/usb8388_olpc.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/usb8388_v5.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/usb8388_v9.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/libertas/usb8682.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/pcie8897_uapsta.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/pcie8997_wlan_v4.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/pcieuart8997_combo_v4.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/pcieusb8997_combo_v4.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/prestera/mvsw_prestera_fw-v2.0.img exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/prestera/mvsw_prestera_fw-v3.0.img exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/prestera/mvsw_prestera_fw-v4.0.img exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/sd8688.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/sd8688_helper.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/sd8787_uapsta.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/sd8797_uapsta.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/sd8801_uapsta.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/sd8887_uapsta.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/sd8897_uapsta.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/sdsd8977_combo_v2.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/sdsd8997_combo_v4.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/usb8766_uapsta.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/usb8797_uapsta.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/usb8801_uapsta.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/usb8897_uapsta.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mrvl/usbusb8997_combo_v4.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mwl8k/fmimage_8366.fw exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mwl8k/fmimage_8366_ap-1.fw exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mwl8k/fmimage_8366_ap-2.fw exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mwl8k/fmimage_8366_ap-3.fw exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mwl8k/fmimage_8687.fw exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mwl8k/fmimage_8764_ap-1.fw exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mwl8k/helper_8366.fw exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mwl8k/helper_8687.fw exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mwlwifi/88W8864.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/lib/firmware/mwlwifi/88W8897.bin exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/share/licenses/linux-firmware/LICENCE.Marvell exists in filesystem (owned by linux-firmware)
linux-firmware-marvell: /usr/share/licenses/linux-firmware/LICENCE.NXP exists in filesystem (owned by linux-firmware)
Errors occurred, no packages were upgraded.

DrClaw

No one said to do that, but if you want to try the newer kernel and not re-install (hopefully) then you can install a different kernel and then update and if it stops working use the other kernel, maybe it works. :slight_smile:

We can override it, not something that should be done without consideration, the true ownership should be checked first so we know we’re fixing and not breaking.

I didn’t check them all but at least 2 of them are owned by linux-firmware-marvell, according to pacman, probably best to check a few more.

sudo pacman -Fy /usr/lib/firmware/libertas/gspi8682.bin

Assuming all the files belong to marvell, which seems pretty likely (if not tell us what belongs to what):

sudo pacman -S linux-firmware-marvell --overwrite="*"

The pacman -Fy command only works for the single file. and it is owned by marvell. I have a timeshift so figures I would give it a go anyway and tried the second command. It didn’t look like it did anything. I then figured I would just do the update and then see if it showed the marvell firmware was still installed. It was rebooted and no internet. Timeshift restored back to the way it was and that worked.

Wish there was a discord. I really want to learn more about this and what I’m doing with the commands I put in.

DrClaw

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.