1

I have a problem with my wifi in Ubuntu. It works well in W10 but in Ubuntu there is no a visible adapter. I tried different versions of Ubuntu, now I'm with 20.04.

uname -a

Linux F6-Plus 5.4.0-42-generic #46-Ubuntu SMP Fri Jul 10 00:24:02 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

When I execute lspci in terminal there are no information about the network controller.

After that I execute:

echo 1 | sudo tee /sys/bus/pci/rescan

If I execute lspci after that, shows information about the network controler

02:00.0 Network controller: Intel Corporation Wireless 3165 (rev 79)

Still Wi-Fi doesn't work but it seems the controller is there. If I restart and execute lspci there's no information about the network controller again.

I'm very lost I don't know what to do to solve that.

Thanks

Edit1 to add more information

sudo dmesg modprobe iwlwifi && dmesg | grep -e wlp -e iwl

Nothing.

After doing echo 1 | sudo tee /sys/bus/pci/rescan

sudo dmesg modprobe iwlwifi && dmesg | grep -e wlp -e iwl
[  159.974862] iwlwifi 0000:02:00.0: enabling device (0000 -> 0002)
[  159.975268] iwlwifi 0000:02:00.0: HW_REV=0xFFFFFFFF, PCI issues?
[  159.998862] iwlwifi: probe of 0000:02:00.0 failed with error -5
dmesg | grep 02:00
[    4.545917] Goodix-TS i2c-GDIX1002:00: i2c-GDIX1002:00 supply AVDD28 not found, using dummy regulator
[    4.545940] Goodix-TS i2c-GDIX1002:00: i2c-GDIX1002:00 supply VDDIO not found, using dummy regulator
[    4.548360] Goodix-TS i2c-GDIX1002:00: i2c test failed attempt 1: -121
[    4.573798] Goodix-TS i2c-GDIX1002:00: i2c test failed attempt 2: -121
[    4.601624] Goodix-TS i2c-GDIX1002:00: I2C communication failure: -121
[    4.601749] Goodix-TS: probe of i2c-GDIX1002:00 failed with error -121
[  159.971421] pci 0000:02:00.0: [8086:3165] type 00 class 0x028000
[  159.971817] pci 0000:02:00.0: reg 0x10: [mem 0x00000000-0x00001fff 64bit]
[  159.972300] pci 0000:02:00.0: Upstream bridge's Max Payload Size set to 128 (was 256, max 256)
[  159.972318] pci 0000:02:00.0: Max Payload Size set to 128 (was 128, max 128)
[  159.973158] pci 0000:02:00.0: PME# supported from D0 D3hot D3cold
[  159.974677] pci 0000:02:00.0: BAR 0: assigned [mem 0x80100000-0x80101fff 64bit]
[  159.974862] iwlwifi 0000:02:00.0: enabling device (0000 -> 0002)
[  159.975268] iwlwifi 0000:02:00.0: HW_REV=0xFFFFFFFF, PCI issues?
[  159.998862] iwlwifi: probe of 0000:02:00.0 failed with error -5

Wireless card is solded to the board, it is not external pci adapter.

12
  • Possibly helpful: wireless.wiki.kernel.org/en/users/drivers/…
    – chili555
    Aug 12, 2020 at 18:24
  • I have tried doing that but no difference. Still no adapter when I turn on. @chili555
    – baltuna
    Aug 12, 2020 at 18:44
  • Please clarify. Please turn OFF fast boot within Windows 10 and reboot. Next edit your question to show us: sudo dmesg modprobe iwlwifi && dmesg | grep -e wlp -e iwl Welcome to Ask Ubuntu.
    – chili555
    Aug 12, 2020 at 20:07
  • Edited to add your proposal. And yes I turned OFF fast boot in W10. Thank you for your welcome @chili555
    – baltuna
    Aug 12, 2020 at 20:26
  • Please excuse my mis-step. I should have said: sudo modprobe iwlwifi && dmesg | grep -e wlp -e iwl Please try again. Sorry.
    – chili555
    Aug 12, 2020 at 20:43

1 Answer 1

0

I finally made my adapter work on my Teclast F6 plus.

The key is to update BIOS settings. Here is a configuration that works for me :

BIOS

  • make sure D3Cold is enabled (default configuration is fine)
  • chipset > PCI Express configuration > PCI Express Root Port 2 (this is the one used by the card)
    • Hot plug: enabled
    • Transmitter Half Swing: enabled
    • Extra Bus Reserved: 7

enter image description here

Force PCI rescan

As the OP says, the card is not listed unless a pci rescan is forced.

I set up a small systemd service to enable at start

/opt/pci/rescan.sh

#!/bin/sh

set -e

echo 1 | tee /sys/bus/pci/rescan
lspci | grep 02:00.0

/etc/systemd/system/pci-rescan.service

[Unit]
Description=PCI rescan

[Service]
Type=oneshot
ExecStart=/opt/pci/rescan.sh
RemainAfterExit=true

[Install]
WantedBy=multi-user.target
# setup and enable as root
chmod a+x /opt/pci/rescan.sh
systemctl enable pci-rescan
systemctl start pci-rescan

The interface now appears and I can use it (named wls1 on my Arch system). Using nmcli for instance:

nmcli d wifi connect <SSID> password <password> ifname wls1
1
  • Thank you very much! Now my adapter also works! After lots of months...
    – baltuna
    Mar 28, 2021 at 6:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.