1

I'm on a relatively new Dell XPS running Ubuntu 18.04. It has an Intel VGA controller and an Nvidia 3D controller.

The laptop got stuck in 960x540 resolution a few days ago, so I installed Nvidia driver v390 via NVIDIA-Linux-x86_64-390.116.run from https://www.nvidia.com/object/unix.html. (Signing the kernel module for secure UEFI boot was an adventure).

EDIT 2: I disabled secure boot, removed the manually-installed nvidia-390, and used

sudo add-apt-repository ppa:oibaf/graphics-drivers && sudo apt update

, followed by sudo ubuntu-drivers-autoinstall instead. This resulted in no change, except the nvidia kernel module is now loaded in gpu-manager.log (noted below).

I disabled Wayland as XDG_SESSION_TYPE, blacklisted nouveau, etc etc.

My system booted successfully and gave me various resolution options last night. However, today, booting the laptop sent me to a black screen (though it made the annoyingly loud sound that the login screen usually makes.)

I managed to Ctrl-Alt-F4 into a terminal and mess around a bit, but to no avail. I ended up being able to start the X server when I booted in recovery mode on my previous kernel version.

EDIT: rebooted into the bad state and got all the actual info, which is now posted below.

Here are the outputs of some relevant commands.

System Info

$ uname -r
4.18.0-22-generic
$ lspci -k | grep -A 2 VGA
00:02.0 VGA compatible controller: Intel Corporation Device 3e9b
    Subsystem: Dell Device 087c
    Kernel modules: i915
$ lspci -k | grep -A 2 3D
01:00.0 3D controller: NVIDIA Corporation GP107M [GeForce GTX 1050 Ti Mobile] (rev a1)
    Subsystem: Dell GP107M [GeForce GTX 1050 Ti Mobile]
    Kernel driver in use: nvidia
$ lshw -c video
  *-display
       description: 3D controller
       product: GP107M [GeForce GTX 1050 Ti Mobile]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list rom
       configuration: driver=nvidia latency=0
       resources: irq:145 memory:ec000000-ecffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:3000(size=128) memory:ed000000-ed07ffff
  *-display UNCLAIMED
       description: VGA compatible controller
       product: Intel Corporation
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress msi pm vga_controller bus_master cap_list
       configuration: latency=0
       resources: memory:eb000000-ebffffff memory:80000000-8fffffff ioport:4000(size=64) memory:c0000-dffff
$ lsmod | grep i915
i915                 1740800  0
i2c_algo_bit           16384  1 i915
drm_kms_helper        172032  2 nvidia_drm,i915
drm                   458752  5 drm_kms_helper,nvidia_drm,i915
video                  45056  3 dell_wmi,dell_laptop,i915

$ lsmod | grep nvidia
nvidia_drm             40960  1
nvidia_modeset       1048576  2 nvidia_drm
nvidia              14376960  62 nvidia_modeset
ipmi_msghandler       102400  2 ipmi_devintf,nvidia
drm_kms_helper        172032  2 nvidia_drm,i915
drm                   458752  5 drm_kms_helper,nvidia_drm,i915

Logs

$ cat /var/log/gpu-manager.log
log_file: /var/log/gpu-manager.log
last_boot_file: /var/lib/ubuntu-drivers-common/last_gfx_boot
new_boot_file: /var/lib/ubuntu-drivers-common/last_gfx_boot
can't access /opt/amdgpu-pro/bin/amdgpu-pro-px
Looking for nvidia modules in /lib/modules/4.18.0-22-generic/updates/dkms
Looking for amdgpu modules in /lib/modules/4.18.0-22-generic/updates/dkms
Is nvidia loaded? yes
Was nvidia unloaded? no
Is nvidia blacklisted? no
Is intel loaded? yes
Is radeon loaded? no
Is radeon blacklisted? no
Is amdgpu loaded? no
Is amdgpu blacklisted? no
Is amdgpu versioned? no
Is amdgpu pro stack? no
Is nouveau loaded? no
Is nouveau blacklisted? yes
Is nvidia kernel module available? yes ### Changed no -> yes after `ubuntu-drivers autoinstall`
Is amdgpu kernel module available? no
Vendor/Device Id: 8086:3e9b
BusID "PCI:0@0:2:0"
Is boot vga? yes
Error: can't access /sys/bus/pci/devices/0000:00:02.0/driver
The device is not bound to any driver.
Vendor/Device Id: 10de:1c8c
BusID "PCI:1@0:0:0"
Is boot vga? no
Skipping "/dev/dri/card0", driven by "nvidia-drm"
Skipping "/dev/dri/card0", driven by "nvidia-drm"
Skipping "/dev/dri/card0", driven by "nvidia-drm"
Skipping "/dev/dri/card0", driven by "nvidia-drm"
Does it require offloading? no
last cards number = 2
Has amd? no
Has intel? yes
Has nvidia? yes
How many cards? 2
Has the system changed? No
Intel IGP detected
Desktop system detected
or laptop with open drivers
Nothing to do
$ grep "intel" /var/log/Xorg.0.log
[    17.851] (II) LoadModule: "intel"
[    17.851] (II) Loading /usr/lib/xorg/modules/drivers/intel_drv.so
[    17.853] (II) Module intel: vendor="X.Org Foundation"
[    17.854] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets:
[    17.854] (II) intel: Driver for Intel(R) HD Graphics
[    17.854] (II) intel: Driver for Intel(R) Iris(TM) Graphics
[    17.854] (II) intel: Driver for Intel(R) Iris(TM) Pro Graphics
[    17.885] (II) UnloadModule: "intel"
[    17.885] (II) Unloading intel

$ grep -i "nvidia" /var/log/Xorg.0.log
[    17.824] (**) OutputClass "Nvidia Prime" ModulePath extended to "/x86_64-linux-gnu/nvidia/xorg,/usr/lib/xorg/modules"
[    17.847] (II) LoadModule: "nvidia"
[    17.847] (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
[    17.851] (II) Module nvidia: vendor="NVIDIA Corporation"
[    17.911] (II) NVIDIA(0): [DRI2]   VDPAU driver: nvidia

Finally, a selection from dmesg | grep -i intel:

[    0.000000] Reserving Intel graphics memory at [mem 0x7b800000-0x7f7fffff]]
...
[   16.776901] snd_hda_intel 0000:00:1f.3: enabling device (0000 -> 0002)
[   16.788741] snd_hda_intel 0000:00:1f.3: failed to add i915 component master (-19)

Question

What appears to be happening is that the nvidia drivers load successfully, but for some reason intel drivers aren't being associated with the Intel VGA device, and I have no clue why.

How do I get Ubuntu to bind the intel driver to my VGA card again? Pointers in the correct direction would be helpful.

jiangty
  • 871
  • 1
  • 9
  • 15

1 Answers1

1

Aha, it's because I set nomodeset in /etc/default/grub in the line

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset i915.alpha_support=1"

and the i915 driver needs to be able to set modes. Thanks to the archlinux wiki for pointing this out: https://wiki.archlinux.org/index.php/Intel_graphics#Loading

On the other hand, I'm now back to the problem where my max resolution is 960x540, but that's a different matter...

jiangty
  • 871
  • 1
  • 9
  • 15