I have had some issues installing Fedora 30 on a Dell Precision 7530 with integrated Intel 630 and Quadro P1000 (black screens, hangs), which I thought might eventually be remedied by the right combination of drivers and kernel options. However, I have noticed an odd behavior and was wondering if someone might help me to determine whether Linux or faulty hardware is to blame.
The laptop often loses track of the NVIDIA card on boot. When this happens, the intel drivers load in Linux, and lspci does not show the NVIDIA card at all. I can see when this will occur by checking the BIOS settings on boot. The BIOS menu for “switchable graphics” that normally allows me to toggle switchable graphics disappears completely as if no discrete card is installed. If the menu does appear, then I am usually able to disable switchable graphics and use the NVIDIA card alone as expected. The NVIDIA drivers seem to function normally as far as I can tell. However, earlier today, even after I had set the BIOS to disable switchable graphics, I noticed that the intel drivers were in use. Sure enough, when I rebooted and checked the BIOS, the switchable graphics menu had disappeared again.
So far I have been able to get the switchable graphics menu (and the functionality of the NVIDIA card) to return by power cycling, often waiting a few minutes before starting up again.
Note that at some point I have successfully booted with switchable graphics enabled to see both the integrated and discrete cards active, though I did not see any mention of PRIME in nvidia-settings.
As of now, I cannot identify a cause for the NVIDIA card to disappear. I installed the nvidia drivers from the RPMFusion repository. However, this issue has persisted even on trying out other Linux distributions.
I contacted Dell support about this since the issue can be identified in the BIOS, and they seem to suggest that it is a Linux issue. However, I do not understand how Linux could prevent the BIOS from seeing the NVIDIA card on a cold boot. I can provide nvidia-bug-report logs if they might be helpful, but my question for now is the fundamental one of whether Linux software could cause such a problem or if it must be hardware-related.