Need Help with Display Issue

Hi,

I have an Asus ROG Strix G15 Advantage Edition 2021 laptop. I’m currently running Fedora Workstation on it, but I was running Arch on it up until a month ago.

I have this intermittent issue where the laptop fully boots up but the display does not turn on at all, not even the backlight. This happens about 50% of the time I boot the laptop. I noticed it happens more often when the laptop has not been turned on for more than an hour or so, but that’s not set in stone either.

I have re-seated the internal eDP cable on the motherboard and checked it for damage, and everything seemed fine on the motherboard side of the cable. There is some part of the cable in the hinge and behind the display as well, but of course I did not want to mess with that. The display is 1440p 165Hz, and a replacement costs more than $250. I did not want to damage the display.

For a while I believed it was eDP cable damage inside the hinge, and that might still be the case. But I saw something in software that is making me question it.

When the screen does not turn on, I can connect the laptop to an external display (a cheap mini-projector I have). In settings, I can see that the external display is connected but the internal display is nowhere to be found. This is not very useful information. But today, I ran this command:

find /sys/devices -name "edid"

And I got this

/sys/devices/pci0000:00/0000:00:08.1/0000:08:00.0/drm/card1/card1-HDMI-A-1/edid

/sys/devices/pci0000:00/0000:00:08.1/0000:08:00.0/drm/card1/card1-eDP-1/edid

/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/drm/card0/card0-Writeback-1/edid

/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/drm/card0/card0-DP-1/edid

Rebooting once, after closing and reopening the lid of the laptop, the display turned on again and I ran the command again, and got this instead.

/sys/devices/pci0000:00/0000:00:08.1/0000:08:00.0/drm/card2/card2-HDMI-A-1/edid

/sys/devices/pci0000:00/0000:00:08.1/0000:08:00.0/drm/card2/card2-eDP-1/edid

/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/drm/card1/card1-Writeback-1/edid

/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/drm/card1/card1-DP-1/edid

The difference in the outputs is that when the display does not turn on, the iGPU is recognized as card1 and dGPU as card0, but when the display works, the iGPU is recognized as card2 and dGPU as card1.

When I run this command when the display is working:

cat /sys/devices/pci0000:00/0000:00:08.1/0000:08:00.0/drm/card2/card2-eDP-1/status

The result is

connected

But when I run this command when the display is working:

cat /sys/devices/pci0000:00/0000:00:08.1/0000:08:00.0/drm/card1/card1-eDP-1/status

The result is

cat: '/sys/devices/pci0000:00/0000:00:08.1/0000:08:00.0/drm/card1/card1-eDP-1/status': No such file or directory

When I run the card1 status command when the display is not working, I get connected.

From what I can gather, somewhere along the boot process, the GPUs get assigned different names (but not different PCI IDs). The eDP display data is expected to be received through the dGPU which is not connected by a cable through a display; it routes the signal through the iGPU. This might be why the display does not turn on when the dGPU is assigned card1 instead of the iGPU.

Is there a way for this to be avoided? Do you know of any similar issues?

I would really like my laptop to reliably turn on every time.

Thanks for all the help :slight_smile:

Did Arch also have this problem or did it first appear with Fedora? If it is specific to Fedora, did it appear with a particular update? Does the system boot another OS?

Please post (as pre-formatted text) the output from running inxi -Fzxx in a terminal. This may help others with the issue find this thread with web searches.

You may find useful details by comparing journalctl output for boots where the display fails with those where it works. Here (with only i915 iGPU) I see:

Aug 28 10:27:06 gnome-shell[1471]: Device '/dev/dri/card1' prefers shadow buffer
Aug 28 10:27:06 gnome-shell[1471]: Added device '/dev/dri/card1' (i915) using atomic mode setting.
Aug 28 10:27:06 gnome-shell[1471]: Created gbm renderer for '/dev/dri/card1'
Aug 28 10:27:06 gnome-shell[1471]: Boot VGA GPU /dev/dri/card1 selected as primary

You may also be able to use journalctl to determine when the issue first appeared and then which update was responsible.

You should make sure Fedora and system firmware are fully updated: a) the problem may have been solved, and b) to make it easier for others to duplicate your configuration.

Arch also had this issue. I read somewhere that a newer kernel has a different way of assigning GPUs. I’m also exploring hardware related solutions, by giving my laptop to technicians for diagnosis.

The output of inxi -Fzxx is

System:
  Kernel: 6.10.6-200.fc40.x86_64 arch: x86_64 bits: 64 compiler: gcc
    v: 2.41-37.fc40
  Desktop: GNOME v: 46.4 tk: GTK v: 3.24.43 wm: gnome-shell dm: GDM
    Distro: Fedora Linux 40 (Workstation Edition)
Machine:
  Type: Laptop System: ASUSTeK product: ROG Strix G513QY_G513QY v: 1.0
    serial: <superuser required>
  Mobo: ASUSTeK model: G513QY v: 1.0 serial: <superuser required>
    UEFI: American Megatrends LLC. v: G513QY.331 date: 02/24/2023
Battery:
  ID-1: BAT0 charge: 62.7 Wh (84.0%) condition: 74.6/90.0 Wh (82.9%)
    volts: 16.4 min: 15.9 model: AS3GWYF3KC GA50358 serial: <filter>
    status: not charging
CPU:
  Info: 8-core model: AMD Ryzen 9 5900HX with Radeon Graphics bits: 64
    type: MT MCP arch: Zen 3 rev: 0 cache: L1: 512 KiB L2: 4 MiB L3: 16 MiB
  Speed (MHz): avg: 2099 high: 4566 min/max: 400/4890 cores: 1: 400 2: 4566
    3: 3245 4: 400 5: 3243 6: 400 7: 3238 8: 400 9: 3344 10: 400 11: 400
    12: 3246 13: 3416 14: 400 15: 3244 16: 3243 bogomips: 105401
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
  Device-1: AMD Navi 22 [Radeon RX 6700/6700 XT/6750 XT / 6800M/6850M XT]
    vendor: ASUSTeK driver: amdgpu v: kernel arch: RDNA-2 pcie: speed: 16 GT/s
    lanes: 16 ports: active: none empty: DP-1,Writeback-1 bus-ID: 03:00.0
    chip-ID: 1002:73df
  Device-2: AMD Cezanne [Radeon Vega Series / Radeon Mobile Series]
    vendor: ASUSTeK driver: amdgpu v: kernel arch: GCN-5 pcie: speed: 8 GT/s
    lanes: 16 ports: active: eDP-1 empty: HDMI-A-1 bus-ID: 08:00.0
    chip-ID: 1002:1638 temp: 53.0 C
  Display: wayland server: X.org v: 1.20.14 with: Xwayland v: 24.1.2
    compositor: gnome-shell driver: gpu: amdgpu display-ID: 0
  Monitor-1: eDP-1 model: ChiMei InnoLux 0x1540 res: 2560x1440 dpi: 189
    diag: 394mm (15.5")
  API: OpenGL v: 4.6 vendor: amd mesa v: 24.1.6 glx-v: 1.4 es-v: 3.2
    direct-render: yes renderer: AMD Radeon Graphics (radeonsi renoir LLVM
    18.1.6 DRM 3.57 6.10.6-200.fc40.x86_64) device-ID: 1002:1638
    display-ID: :0.0
  API: Vulkan v: 1.3.290 surfaces: xcb,xlib,wayland device: 0
    type: integrated-gpu driver: N/A device-ID: 1002:1638 device: 1
    type: discrete-gpu driver: N/A device-ID: 1002:73df device: 2 type: cpu
    driver: N/A device-ID: 10005:0000
  API: EGL Message: EGL data requires eglinfo. Check --recommends.
Audio:
  Device-1: AMD Navi 21/23 HDMI/DP Audio vendor: ASUSTeK driver: snd_hda_intel
    v: kernel pcie: speed: 16 GT/s lanes: 16 bus-ID: 03:00.1 chip-ID: 1002:ab28
  Device-2: AMD Renoir Radeon High Definition Audio vendor: ASUSTeK
    driver: snd_hda_intel v: kernel pcie: speed: 8 GT/s lanes: 16
    bus-ID: 08:00.1 chip-ID: 1002:1637
  Device-3: AMD ACP/ACP3X/ACP6x Audio Coprocessor vendor: ASUSTeK
    driver: N/A pcie: speed: 8 GT/s lanes: 16 bus-ID: 08:00.5 chip-ID: 1022:15e2
  Device-4: AMD Family 17h/19h HD Audio vendor: ASUSTeK
    driver: snd_hda_intel v: kernel pcie: speed: 8 GT/s lanes: 16
    bus-ID: 08:00.6 chip-ID: 1022:15e3
  API: ALSA v: k6.10.6-200.fc40.x86_64 status: kernel-api
  Server-1: JACK v: 1.9.22 status: off
  Server-2: PipeWire v: 1.0.7 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
Network:
  Device-1: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
    vendor: ASUSTeK driver: r8169 v: kernel pcie: speed: 2.5 GT/s lanes: 1
    port: f000 bus-ID: 04:00.0 chip-ID: 10ec:8168
  IF: enp4s0 state: down mac: <filter>
  Device-2: Intel Wi-Fi 6E AX210/AX1675 2x2 [Typhoon Peak]
    vendor: Rivet Networks Killer driver: iwlwifi v: kernel pcie: speed: 5 GT/s
    lanes: 1 bus-ID: 05:00.0 chip-ID: 8086:2725
  IF: wlp5s0 state: up mac: <filter>
Bluetooth:
  Device-1: Intel AX210 Bluetooth driver: btusb v: 0.8 type: USB rev: 2.0
    speed: 12 Mb/s lanes: 1 bus-ID: 3-4:2 chip-ID: 8087:0032
  Report: btmgmt ID: hci0 rfk-id: 0 state: up address: <filter> bt-v: 5.3
    lmp-v: 12
Drives:
  Local Storage: total: 1.84 TiB used: 838.5 GiB (44.5%)
  ID-1: /dev/nvme0n1 vendor: Kingston model: SNV2S1000G size: 931.51 GiB
    speed: 63.2 Gb/s lanes: 4 serial: <filter> temp: 33.9 C
  ID-2: /dev/nvme1n1 vendor: Intel model: SSDPEKNU010TZ size: 953.87 GiB
    speed: 31.6 Gb/s lanes: 4 serial: <filter> temp: 34.9 C
Partition:
  ID-1: / size: 952.28 GiB used: 424.08 GiB (44.5%) fs: btrfs
    dev: /dev/nvme1n1p3
  ID-2: /boot size: 973.4 MiB used: 405.7 MiB (41.7%) fs: ext4
    dev: /dev/nvme1n1p2
  ID-3: /boot/efi size: 598.8 MiB used: 19 MiB (3.2%) fs: vfat
    dev: /dev/nvme1n1p1
  ID-4: /home size: 952.28 GiB used: 424.08 GiB (44.5%) fs: btrfs
    dev: /dev/nvme1n1p3
Swap:
  ID-1: swap-1 type: zram size: 8 GiB used: 0 KiB (0.0%) priority: 100
    dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 68.2 C mobo: N/A
  Fan Speeds (rpm): cpu: 3300
  GPU: device: amdgpu temp: 48.0 C mem: 46.0 C fan: 0 device: amdgpu
    temp: 52.0 C
Info:
  Memory: total: 40 GiB note: est. available: 38.57 GiB used: 9.27 GiB (24.0%)
  Processes: 478 Power: uptime: 1h 41m wakeups: 0 Init: systemd v: 255
    target: graphical (5) default: graphical
  Packages: pm: flatpak pkgs: 61 Compilers: gcc: 14.2.1 Shell: Bash
    v: 5.2.26 running-in: flatpak-session inxi: 3.3.34

The system is fully updated.

When the display fails, I’ll get the output of journalctl and post it here as well.

Note that I edited your post for formatting.
The use of the </> button works best if you first paste the text then highlight it before clicking that button so it looks as it does now.