Purism Librem 11 with Fedora using kernel v6.6 and later

I got myself a Librem 11, but found it would be working (somewhat) better with Fedora and it did. However, beginning with the v6.6 kernels, booting is a short-lived endeavor since it does not appear to even get to the LUKS decryption screen, leaving the display black with some white artifacts resembling horizontal lines at the top of the display (looking closer, they are not lines though).

Hooking up an external display, it appears to actually show the decryption passphrase field, but typing in text into the box is offset by approximately 3-5 seconds (instead of instant).
The boot process thereafter mirrors this delay and is extremely sluggish, never reaching the graphical UI until my patience ran out (that is, waiting for about 5 minutes after the last update of the boot screen messages appeared).

To narrow the issue, I downloaded all previously released v6.6 kernels from koji, but all exploited the same behavior.
The last v5.5 kernel (v5.5.12) appears to work, making it a clear break in the kernel versions of where it worked and stopped to work.

The newer kernels can be started by adding the kernel parameter nomodeset, but the GUI will not start at that point (lightdm will coredump).

I have files for dmesg and /var/log/boot.log using kernel 6.7.3 with nomodeset, if they help, but would not know where to upload/attach them here. Any alternatives are welcome. Help on the subject, of course, as well.

I suspect that the GPU is one that is not properly supported by the default drivers in fedora with the newer kernels.

Please post the output of inxi -Fzxx as preformatted text so we may see what the hardware is and maybe provide helpful suggestions.

Here is the output of inxi -Fzxx:

System:
  Kernel: 6.5.12-300.fc39.x86_64 arch: x86_64 bits: 64 compiler: gcc v: 2.40-13.fc39
    Console: pty pts/1 DM: LightDM Distro: Fedora release 39 (Thirty Nine)
Machine:
  Type: Detachable System: Purism product: librem_11 v: 1.0 serial: <filter> Chassis: type: 32
    serial: N/A
  Mobo: Purism model: librem_11 v: 1.0 serial: <filter> BIOS: coreboot v: PureBoot-Release-28.1
    date: 01/01/1970
Battery:
  ID-1: BAT0 charge: 93% condition: N/A volts: 8.1 min: N/A model: BAT serial: <filter>
    status: discharging
CPU:
  Info: quad core model: Intel Celeron N5100 bits: 64 type: MCP arch: Alder Lake rev: 0 cache:
    L1: 256 KiB L2: 1.5 MiB L3: 4 MiB
  Speed (MHz): avg: 1471 high: 2524 min/max: 800/2800 cores: 1: 800 2: 533 3: 2027 4: 2524
    bogomips: 8908
  Flags: ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
  Device-1: Intel JasperLake [UHD Graphics] driver: i915 v: kernel arch: Gen-11 ports:
    active: eDP-1 empty: DP-1, DP-2, HDMI-A-1, HDMI-A-2 bus-ID: 00:02.0 chip-ID: 8086:4e61
  Device-2: Sunplus Innovation HK 5M CAM driver: uvcvideo type: USB rev: 2.0 speed: 480 Mb/s
    lanes: 1 bus-ID: 1-6.1:5 chip-ID: 1bcf:28c4
  Device-3: Microdia Hy-HD-Camera driver: uvcvideo type: USB rev: 2.0 speed: 480 Mb/s lanes: 1
    bus-ID: 1-6.2:7 chip-ID: 0c45:636b
  Display: x11 server: X.org v: 1.20.14 with: Xwayland v: 23.2.4 driver: X: loaded: modesetting
    unloaded: fbdev,vesa dri: iris gpu: i915 tty: 140x34
  Monitor-1: eDP-1 model: ZC-QHD-OLED res: 2560x1600 dpi: 260 diag: 292mm (11.5")
  API: OpenGL Message: GL data unavailable in console for root.
Use of uninitialized value $val2 in string eq at /usr/bin/inxi line 7464.
Use of uninitialized value $val2 in split at /usr/bin/inxi line 7469.
Use of uninitialized value $val2 in concatenation (.) or string at /usr/bin/inxi line 7472.
Use of uninitialized value $val2 in concatenation (.) or string at /usr/bin/inxi line 7475.
Use of uninitialized value $val2 in concatenation (.) or string at /usr/bin/inxi line 7476.
  API: EGL Message:
Audio:
  Device-1: Intel JasperLake IPU driver: N/A bus-ID: 00:05.0 chip-ID: 8086:4e19
  Device-2: Intel Jasper Lake HD Audio driver: snd_hda_intel v: kernel bus-ID: 00:1f.3
    chip-ID: 8086:4dc8
  API: ALSA v: k6.5.12-300.fc39.x86_64 status: kernel-api
  Server-1: JACK v: 1.9.22 status: off
  Server-2: PipeWire v: 1.0.3 status: n/a (root, process) with: 1: pipewire-pulse status: active
    2: wireplumber status: active 3: pipewire-alsa type: plugin
Network:
  Device-1: Intel Wi-Fi 6 AX201 160MHz driver: iwlwifi v: kernel bus-ID: 00:14.3
    chip-ID: 8086:4df0
  IF: wlp0s20f3 state: up mac: <filter>
Bluetooth:
  Device-1: Intel Bluetooth 9460/9560 Jefferson Peak (JfP) driver: btusb v: 0.8 type: USB rev: 2.0
    speed: 12 Mb/s lanes: 1 bus-ID: 1-8:6 chip-ID: 8087:0aaa
  Report: btmgmt ID: hci0 rfk-id: 0 state: up address: <filter> bt-v: 5.1 lmp-v: 10
Drives:
  Local Storage: total: 1013.35 GiB used: 75.43 GiB (7.4%)
  ID-1: /dev/nvme0n1 vendor: Kingston model: SKC3000S1024G size: 953.87 GiB speed: 63.2 Gb/s
    lanes: 4 serial: <filter> temp: 19.9 C
  ID-2: /dev/sda vendor: Generic model: STORAGE size: 59.48 GiB type: USB rev: 2.0 spd: 480 Mb/s
    lanes: 1 serial: <filter>
Partition:
  ID-1: / size: 952.85 GiB used: 65.14 GiB (6.8%) fs: btrfs dev: /dev/dm-0 mapped: Librem11
  ID-2: /boot size: 987.4 MiB used: 313.7 MiB (31.8%) fs: ext4 dev: /dev/nvme0n1p2
Swap:
  ID-1: swap-1 type: zram size: 7.6 GiB used: 0 KiB (0.0%) priority: 100 dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 48.0 C mobo: N/A
  Fan Speeds (rpm): N/A
Info:
  Processes: 316 Uptime: 7m Memory: total: 8 GiB available: 7.6 GiB used: 3.83 GiB (50.4%)
  igpu: 60 MiB Init: systemd v: 254 target: graphical (5) default: graphical Compilers:
  gcc: 13.2.1 Packages: pm: rpm pkgs: N/A note: see --rpm Shell: Bash v: 5.2.26
  running-in: pty pts/1 inxi: 3.3.31

The built-in graphics is an Intel UHD Graphics chip built into the processor (Intel Celeron N5100). According to Wikipedia, it is an Intel HD Graphics (Gen11).

It would appear that you ran inxi as root, which caused the errors noted under the Monitor-1 section.

It also appears that my premise may have been in error since you have no additional GPU, but still may be correct in that the system with the celeron processor may not be properly supported by the newer kernel and the related i915 driver.

That is correct. Not running it as root had other omitted data, which felt like important information. So, I re-ran it as root to include this information.

Considering the missing/lacking drivers, do you know if the support had been removed (intentionally) or if this is a bug worth reporting? In either way, would you know of an alternative to get it going again?

Running as root gave this.
The -z option excluded things such as serial numbers so it was not required to run as root. As your regular user inxi would have included the info that was excluded.

The only thing I see other than the older CPU and GPU is the limited (8 GB) ram. One thing that may be of concern is the limited RAM which is shared 100% with zram so it may become overloaded quickly, especially since the ram is shared with the OS, swap, and GPU. The fact that the issue seems to be related to starting the gui desktop also points to having limited ram and not enough to share with all that requires it. The newer kernels do require more RAM.

Here is the output of inxi -Fzxx again, this time run from the logged in user:

System:
  Kernel: 6.5.12-300.fc39.x86_64 arch: x86_64 bits: 64 compiler: gcc
    v: 2.40-13.fc39 Desktop: Cinnamon v: 6.0.4 tk: GTK v: 3.24.41 wm: muffin
    dm: LightDM Distro: Fedora release 39 (Thirty Nine)
Machine:
  Type: Detachable System: Purism product: librem_11 v: 1.0
    serial: <superuser required> Chassis: type: 32 serial: <superuser required>
  Mobo: Purism model: librem_11 v: 1.0 serial: <superuser required>
    BIOS: coreboot v: PureBoot-Release-28.1 date: 01/01/1970
Battery:
  ID-1: BAT0 charge: 45% condition: N/A volts: 7.3 min: N/A model: BAT
    serial: <filter> status: discharging
CPU:
  Info: quad core model: Intel Celeron N5100 bits: 64 type: MCP
    arch: Alder Lake rev: 0 cache: L1: 256 KiB L2: 1.5 MiB L3: 4 MiB
  Speed (MHz): avg: 1287 high: 2483 min/max: 800/2800 cores: 1: 1068 2: 800
    3: 800 4: 2483 bogomips: 8908
  Flags: ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
  Device-1: Intel JasperLake [UHD Graphics] driver: i915 v: kernel
    arch: Gen-11 ports: active: eDP-1 empty: DP-1, DP-2, HDMI-A-1, HDMI-A-2
    bus-ID: 00:02.0 chip-ID: 8086:4e61
  Device-2: Sunplus Innovation HK 5M CAM driver: uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 bus-ID: 1-6.1:5 chip-ID: 1bcf:28c4
  Device-3: Microdia Hy-HD-Camera driver: uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 bus-ID: 1-6.2:7 chip-ID: 0c45:636b
  Display: x11 server: X.Org v: 1.20.14 with: Xwayland v: 23.2.4 driver: X:
    loaded: modesetting unloaded: fbdev,vesa dri: iris gpu: i915 display-ID: :0
    screens: 1
  Screen-1: 0 s-res: 3408x2130 s-dpi: 144
  Monitor-1: eDP-1 model: ZC-QHD-OLED res: 3408x2130 dpi: 135
    diag: 292mm (11.5")
  API: OpenGL v: 4.6 vendor: intel mesa v: 23.3.5 glx-v: 1.4 es-v: 3.2
    direct-render: yes renderer: Mesa Intel UHD Graphics (JSL)
    device-ID: 8086:4e61
  API: EGL Message: EGL data requires eglinfo. Check --recommends.
Audio:
  Device-1: Intel JasperLake IPU driver: N/A bus-ID: 00:05.0
    chip-ID: 8086:4e19
  Device-2: Intel Jasper Lake HD Audio driver: snd_hda_intel v: kernel
    bus-ID: 00:1f.3 chip-ID: 8086:4dc8
  API: ALSA v: k6.5.12-300.fc39.x86_64 status: kernel-api
  Server-1: JACK v: 1.9.22 status: off
  Server-2: PipeWire v: 1.0.3 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
Network:
  Device-1: Intel Wi-Fi 6 AX201 160MHz driver: iwlwifi v: kernel
    bus-ID: 00:14.3 chip-ID: 8086:4df0
  IF: wlp0s20f3 state: up mac: <filter>
Bluetooth:
  Device-1: Intel Bluetooth 9460/9560 Jefferson Peak (JfP) driver: btusb
    v: 0.8 type: USB rev: 2.0 speed: 12 Mb/s lanes: 1 bus-ID: 1-8:6
    chip-ID: 8087:0aaa
  Report: btmgmt ID: hci0 rfk-id: 0 state: up address: <filter> bt-v: 5.1
    lmp-v: 10
Drives:
  Local Storage: total: 1013.35 GiB used: 75.31 GiB (7.4%)
  ID-1: /dev/nvme0n1 vendor: Kingston model: SKC3000S1024G size: 953.87 GiB
    speed: 63.2 Gb/s lanes: 4 serial: <filter> temp: 19.9 C
  ID-2: /dev/sda vendor: Generic model: STORAGE size: 59.48 GiB type: USB
    rev: 2.0 spd: 480 Mb/s lanes: 1 serial: <filter>
Partition:
  ID-1: / size: 952.85 GiB used: 65.02 GiB (6.8%) fs: btrfs dev: /dev/dm-0
    mapped: Librem11
  ID-2: /boot size: 987.4 MiB used: 313.7 MiB (31.8%) fs: ext4
    dev: /dev/nvme0n1p2
Swap:
  ID-1: swap-1 type: zram size: 7.6 GiB used: 0 KiB (0.0%) priority: 100
    dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 52.0 C mobo: N/A
  Fan Speeds (rpm): N/A
Info:
  Processes: 320 Uptime: 3m Memory: total: 8 GiB available: 7.6 GiB
  used: 3.4 GiB (44.8%) Init: systemd v: 254 target: graphical (5)
  default: graphical Compilers: gcc: 13.2.1 Packages: pm: rpm pkgs: N/A
  note: see --rpm Shell: Bash v: 5.2.26 running-in: gnome-terminal
  inxi: 3.3.31

When normally booted using kernel v6.5.12 with just my startup items opened (Evolution & Telegram being likely the largest), I use 2.4G RAM out of 8.2G shown (~28%). Your explanation, however, suggests that kernel v6.6 and later requires the remainder of the 8.2GB (minus reservation for swap and graphics) just to start the graphics environment alone (without logging in or starting applications thereafter), effectively overloading the capacities of the Librem 11. This I find hard to believe.

I rather believe that your earlier statement about kernel support is more accurate:

As such, I am interested in

  1. finding out whether support has intentionally been withdrawn or if this is a bug, and
  2. if this is a bug finding alternatives/workarounds until it is (hopefully) fixed.