Fixing Black Screen by editing mkinitcpio.conf -- What am I doing?

The purpose of this thread is two-fold, I want to inform the community of a way that I use to fix a problem that appears whenever I clean install Manjaro and to ask the more experience user why it works . Excuse me if this isn’t the proper way to show this in the forum.

Whenever I clean install, I get a black screen immediately after boot. Then I have to access the terminal and type startx whenever I boot. I think the problem is due to the my graphics card set up. I have: Intel UHD Graphics 620 (integrated) and AMD Lexa PRO (dedicated) running in a Lenovo ThinkPad E580.

To solve this issue I edit mkinitcpio.conf by adding amdgpu i915 to the MODULES field. From my readings I reckon that I’m loading the graphics cards modules before the proper boot up.

My questions are: are these modules loaded just for booting up purposes and are re-loaded afterwards? Or are loaded just this one time? Does this have some side effects graphics-wise?

I’ve been testing this for some months and I don’t thing there are any major problems. I just wanted to share this and learn more about Manjaro while I contribute to this amazing community!

Here is my inxi -F just in case:

System:
  Host: 20ks0039pg Kernel: 5.10.52-1-MANJARO x86_64 bits: 64 
  Desktop: GNOME 40.3 Distro: Manjaro Linux 
Machine:
  Type: Laptop System: LENOVO product: 20KS0039PG v: ThinkPad E580 
  serial: <superuser required> 
  Mobo: LENOVO model: 20KS0039PG v: SDK0J40697 WIN 
  serial: <superuser required> UEFI: LENOVO v: R0PET47W (1.24 ) 
  date: 08/29/2018 
Battery:
  ID-1: BAT0 charge: 41.2 Wh (100.0%) condition: 41.2/45.7 Wh (90.2%) 
CPU:
  Info: Quad Core model: Intel Core i7-8550U bits: 64 type: MT MCP cache: 
  L2: 8 MiB 
  Speed: 2171 MHz min/max: 400/4000 MHz Core speeds (MHz): 1: 2171 2: 2007 
  3: 2203 4: 1997 5: 2167 6: 2244 7: 2384 8: 2088 
Graphics:
  Device-1: Intel UHD Graphics 620 driver: i915 v: kernel 
  Device-2: AMD Lexa PRO [Radeon 540/540X/550/550X / RX 540X/550/550X] 
  driver: amdgpu v: kernel 
  Device-3: IMC Networks Integrated Camera type: USB driver: uvcvideo 
  Display: wayland server: X.org 1.20.11 driver: loaded: amdgpu,ati,intel 
  unloaded: modesetting resolution: <missing: xdpyinfo> 
  OpenGL: renderer: Mesa Intel UHD Graphics 620 (KBL GT2) 
  v: 4.6 Mesa 21.1.5 
Audio:
  Device-1: Intel Sunrise Point-LP HD Audio driver: snd_hda_intel 
  Sound Server-1: ALSA v: k5.10.52-1-MANJARO running: yes 
  Sound Server-2: PulseAudio v: 14.2 running: yes 
Network:
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet 
  driver: r8169 
  IF: enp3s0 state: down mac: e8:6a:64:5d:67:6e 
  Device-2: Intel Dual Band Wireless-AC 3165 Plus Bluetooth 
  driver: iwlwifi 
  IF: wlp5s0 state: up mac: 1c:1b:b5:90:55:a1 
Bluetooth:
  Device-1: Intel Bluetooth wireless interface type: USB driver: btusb 
  Report: rfkill ID: hci0 state: up address: see --recommends 
Drives:
  Local Storage: total: 1.14 TiB used: 330.97 GiB (28.3%) 
  ID-1: /dev/nvme0n1 vendor: Lenovo model: LENSE30256GMSP34MEAT3TA 
  size: 238.47 GiB 
  ID-2: /dev/sda vendor: Seagate model: ST1000LM035-1RK172 
  size: 931.51 GiB 
Partition:
  ID-1: / size: 48.83 GiB used: 27.9 GiB (57.1%) fs: btrfs 
  dev: /dev/nvme0n1p3 
  ID-2: /boot/efi size: 511 MiB used: 568 KiB (0.1%) fs: vfat 
  dev: /dev/nvme0n1p1 
  ID-3: /home size: 184.16 GiB used: 129.69 GiB (70.4%) fs: btrfs 
  dev: /dev/nvme0n1p4 
  ID-4: /var/log size: 48.83 GiB used: 27.9 GiB (57.1%) fs: btrfs 
  dev: /dev/nvme0n1p3 
Swap:
  ID-1: swap-1 type: partition size: 4.98 GiB used: 990 MiB (19.4%) 
  dev: /dev/nvme0n1p2 
Sensors:
  System Temperatures: cpu: 46.0 C mobo: 0.0 C gpu: amdgpu temp: 39.0 C 
  Fan Speeds (RPM): cpu: 0 
Info:
  Processes: 348 Uptime: 4h 48m Memory: 7.54 GiB used: 3.4 GiB (45.2%) 
  Shell: Zsh inxi: 3.3.06

The modules are loaded at boot time and will remain in use as long as the system is running.

They are included into the initramfs (ram disk), therefore loaded explicitly and not loaded when needed what could result in crashes since GDM does not wait so long for the driver become ready.

No…

Thank you for your replies!

I’ve just tried it with just i915 in the MODULE and it still works. I’ll have to test it but according to what you are saying, I could just load i915 into the initramfs to solve my problem that then the amdgpu one will get loaded when I run DRI_PRIME=1 for example?

Including a module via mkinitcpio.conf is the usual approach to solve boot issues, so if adding i915 let you boot properly you should be fine and leave it that way.

1 Like

I don’t know if it fits in the Forum’s code of conduct to reply saying just thank you, but thank you all :smiley:.

2 Likes

It would of course be nice, both to ourselves and toward other people stumbling upon this thread, if you were to mark the post that solved the issue as the solution. That way, a link to that post will be added to your opening post, so that people can quickly see that the matter has been solved, and how.

Just click the three horizontally aligned dots at the bottom of the post that solved your problem, or the post that put you on your way to solving the problem, and then tick the checkbox labeled “Solution”. :wink:

3 Likes

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