1

I have a dual-boot system - an HP EliteBook 840 G4 - with Windows 10 and Ubuntu 20.04. If I hibernate Windows and then boot into Ubuntu, Ubuntu can't see the wifi - it is still visible in lspci but reports no internet connection and it doens't appear in the settings application. If I restart or shutdown Windows first then it works fine. What could be causing this and how do I prevent it?

6
  • Hibernating can be tricky on some machines / models. Update BIOS for the machine, and Chipset, Power Driver for Windows. Restart the entire machine and then try hibernating Windows with Ubuntu running.
    – anon
    Commented Jun 10, 2020 at 13:36
  • @John all BIOS and drivers are up to date.
    – Darren
    Commented Jun 10, 2020 at 14:01
  • 2
    Putting one OS or the other in hibernation, then booting from grub onto the other can affect some peripherals, whose state is locked by the hibernated OS. As John suggested, the best way to solve the issue is to restart your PC. Disabling Fast Startup in Windows can help too, because it basically copies to disk the kernel files and the drivers in use when you shutdown your Windows copy. This can leave a non-Windows driver at a loss when trying to activate a peripheral whose firmware was previously called by a Windows driver. Can happen with Bluetooth, too. Restart is king here.
    – user1019780
    Commented Jun 10, 2020 at 14:25
  • 1
    [support.microsoft.com/en-us/help/920730/… Disable Windows 10 hibernation on dual-boot systems.
    – Peleion
    Commented Jun 10, 2020 at 17:12
  • When you switch OSes, does the laptop get fully powered down? You are not in a sleep mode correct? The NIC drivers will get confused if they see a "partially configured" device. If you turn off your PC, when you turn it back on, BIOS will reset all the peripherals which should scrub out any state stored in them by the windows device driver.
    – Andy
    Commented Jun 11, 2020 at 14:20

2 Answers 2

2

Your drivers just don't support what you are trying to do. For some reason your NIC remembers it has been (partially) configured by another driver in another operating system. When the Linux driver reads the state of your NIC it does not understand why the NIC is already configured. This will cause the driver to enter an error state and the driver will not present the device to the operating system.

You'll have to live without hibernation.

1
  • See answer below: On Windows: disable WiFi, hibernate; reboot in Ubuntu. Now WiFi should work! Commented Jun 5 at 2:47
1

I know the topic is a bit old, but I can't see you mentioning if you turned off WiFi on Windows 10 before hibernating and running Ubuntu.

I also have Dual Boot using GRUB on my Lenovo ThinkPad L490, and Ubuntu sees WiFi only when I disable it on Windows before hibernating. Maybe that will help?

1
  • Thanks that worked! Disable WiFi; hibernate; start Ubuntu (with WiFi) Commented Jun 5 at 2:46

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .