External Monitors and Laptop Screen Won't Wake from Power-Saving Mode

Hi all,

I'm really having trouble figuring this out. I'm using Garuda KDE on a laptop connected to two monitors via Thunderbolt. Sometimes when the monitors turn off and go into power-saving mode, I'm unable to get any screen (including the laptop's screen after disconnecting from Thunderbolt) to turn back on. I'm not using sleep mode at all (I turned that off).

The odd thing is, I can hear the "hardware disconnected" and "hardware connected" sound when I disconnect and reconnect Thunderbolt, even though all the screens are black. I can't even get the laptop screen to turn on after I disconnect it from Thunderbolt. The only way I can use my system is if I hold the power button on the laptop to force a shutdown.

I'm wondering if it's an issue with KDE (maybe Cinnamon would work better?). Or perhaps Thunderbolt just doesn't work very well with Garuda or Linux generally.

I really like Garuda a lot, so I'm praying this is a solvable issue.

I'm a dumb noob if you couldn't tell, but here is the output from "garuda-inxi":
System:
Kernel: 6.2.2-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 12.2.1
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=9cf6ce54-9154-4a11-a235-61b09fc57d7e rw [email protected]
quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
loglevel=3 ibt=off
Desktop: KDE Plasma v: 5.27.2 tk: Qt v: 5.15.8 info: latte-dock
wm: kwin_x11 vt: 1 dm: SDDM Distro: Garuda Linux base: Arch Linux
Machine:
Type: Laptop System: LENOVO product: 20TD003KUS v: ThinkPad E15 Gen 2
serial: Chassis: type: 10 serial:
Mobo: LENOVO model: 20TD003KUS v: SDK0J40697 WIN
serial: UEFI: LENOVO v: R1EET45W(1.45 )
date: 10/27/2021
Battery:
ID-1: BAT0 charge: 42.3 Wh (94.0%) condition: 45.0/45.0 Wh (100.1%)
volts: 12.1 min: 11.1 model: Sunwoda 5B10X025 type: Li-poly serial:
status: discharging cycles: 30
CPU:
Info: model: 11th Gen Intel Core i5-1135G7 bits: 64 type: MT MCP
arch: Tiger Lake gen: core 11 level: v4 note: check built: 2020
process: Intel 10nm family: 6 model-id: 0x8C (140) stepping: 1
microcode: 0xA6
Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
L1: 320 KiB desc: d-4x48 KiB; i-4x32 KiB L2: 5 MiB desc: 4x1.2 MiB L3: 8 MiB
desc: 1x8 MiB
Speed (MHz): avg: 2083 high: 2400 min/max: 400/4200 scaling:
driver: intel_pstate governor: powersave cores: 1: 1103 2: 2400 3: 2400
4: 2400 5: 2400 6: 2400 7: 1166 8: 2400 bogomips: 38707
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Vulnerabilities:
Graphics:
Device-1: Intel TigerLake-LP GT2 [Iris Xe Graphics] vendor: Lenovo
driver: i915 v: kernel arch: Gen-12.1 process: Intel 10nm built: 2020-21
ports: active: eDP-1 empty: DP-1, DP-2, DP-3, DP-4, HDMI-A-1
bus-ID: 00:02.0 chip-ID: 8086:9a49 class-ID: 0300
Device-2: Luxvisions Innotech Integrated Camera type: USB driver: uvcvideo
bus-ID: 2-8:2 chip-ID: 30c9:003a class-ID: fe01 serial:
Display: x11 server: X.Org v: 21.1.7 with: Xwayland v: 22.1.8
compositor: kwin_x11 driver: X: loaded: modesetting
alternate: fbdev,intel,vesa dri: iris gpu: i915 display-ID: :0 screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.00x11.22")
s-diag: 582mm (22.93")
Monitor-1: eDP-1 model: BOE Display 0x085e built: 2018 res: 1920x1080
hz: 60 dpi: 142 gamma: 1.2 size: 344x194mm (13.54x7.64") diag: 395mm (15.5")
ratio: 16:9 modes: 1920x1080
API: OpenGL v: 4.6 Mesa 22.3.6 renderer: Mesa Intel Xe Graphics (TGL GT2)
direct-render: Yes
Audio:
Device-1: Intel Tiger Lake-LP Smart Sound Audio vendor: Lenovo
driver: sof-audio-pci-intel-tgl
alternate: snd_hda_intel,snd_sof_pci_intel_tgl bus-ID: 00:1f.3
chip-ID: 8086:a0c8 class-ID: 0401
Sound API: ALSA v: k6.2.2-zen1-1-zen running: yes
Sound Server-1: PulseAudio v: 16.1 running: no
Sound Server-2: PipeWire v: 0.3.66 running: yes
Network:
Device-1: Intel Wi-Fi 6 AX201 driver: iwlwifi v: kernel bus-ID: 00:14.3
chip-ID: 8086:a0f0 class-ID: 0280
IF: wlp0s20f3 state: up mac:
Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
vendor: Lenovo driver: r8169 v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1
port: 3000 bus-ID: 04:00.0 chip-ID: 10ec:8168 class-ID: 0200
IF: enp4s0 state: down mac:
Bluetooth:
Device-1: Intel AX201 Bluetooth type: USB driver: btusb v: 0.8
bus-ID: 2-10:3 chip-ID: 8087:0026 class-ID: e001
Report: bt-adapter ID: hci0 rfk-id: 1 state: up address:
Drives:
Local Storage: total: 476.95 GiB used: 80.23 GiB (16.8%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:2 vendor: Samsung
model: MZVLQ256HAJD-00000 size: 238.47 GiB block-size: physical: 512 B
logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD serial:
rev: FXV7101Q temp: 36.9 C scheme: GPT
ID-2: /dev/nvme1n1 maj-min: 259:0 vendor: Samsung
model: MZALQ256HAJD-000L1 size: 238.47 GiB block-size: physical: 512 B
logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD serial:
rev: EL1QFXV7 temp: 29.9 C scheme: GPT
Partition:
ID-1: / raw-size: 238.17 GiB size: 238.17 GiB (100.00%)
used: 80.23 GiB (33.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 608 KiB (0.2%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:3
ID-3: /home raw-size: 238.17 GiB size: 238.17 GiB (100.00%)
used: 80.23 GiB (33.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-4: /var/log raw-size: 238.17 GiB size: 238.17 GiB (100.00%)
used: 80.23 GiB (33.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-5: /var/tmp raw-size: 238.17 GiB size: 238.17 GiB (100.00%)
used: 80.23 GiB (33.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 15.33 GiB used: 0 KiB (0.0%) priority: 100
dev: /dev/zram0
Sensors:
System Temperatures: cpu: 48.0 C mobo: N/A
Fan Speeds (RPM): fan-1: 0 fan-2: 0
Info:
Processes: 280 Uptime: 3m wakeups: 878 Memory: 15.33 GiB
used: 3.34 GiB (21.8%) Init: systemd v: 253 default: graphical
tool: systemctl Compilers: gcc: 12.2.1 Packages: pm: pacman pkgs: 1363
libs: 366 tools: octopi,paru Shell: fish v: 3.6.0 default: Bash v: 5.1.16
running-in: konsole inxi: 3.3.25
Garuda (2.6.15-1):
System install date: 2023-02-12
Last full system update: 2023-03-04
Is partially upgraded: No
Relevant software: snapper NetworkManager mkinitcpio
Windows dual boot: Probably (Run as root to verify)
Failed units: