I don't know why the firmware downgrade helps you; none of the GPU
firmware loads for your hardware. From you your log I gather your
machine has a 7800XT. Mapping that over to
https://docs.kernel.org/gpu/amdgpu/amd-hardware-list-info.html this is
GC 11.0.2 and DC 3.2.0.
None of those files changed.
❯ git diff --oneline
Ubuntu-20240318.git3b128b60-0ubuntu2.17..Ubuntu-20240318.git3b128b60-0ubuntu2.19
amdgpu/ | grep Binary
Binary files a/amdgpu/dcn_3_1_4_dmcub.bin and b/amdgpu/dcn_3_1_4_dmcub.bin
differ
Binary files a/amdgpu/dcn_3_5_1_dmcub.bin and b/amdgpu/dcn_3_5_1_dmcub.bin
differ
Binary files a/amdgpu/dcn_3_5_dmcub.bin and b/amdgpu/dcn_3_5_dmcub.bin differ
Binary files a/amdgpu/dcn_3_6_dmcub.bin and b/amdgpu/dcn_3_6_dmcub.bin differ
Binary files a/amdgpu/gc_11_5_2_imu.bin and b/amdgpu/gc_11_5_2_imu.bin differ
Binary files a/amdgpu/gc_11_5_2_me.bin and b/amdgpu/gc_11_5_2_me.bin differ
Binary files a/amdgpu/gc_11_5_2_mec.bin and b/amdgpu/gc_11_5_2_mec.bin differ
Binary files a/amdgpu/gc_11_5_2_mes1.bin and b/amdgpu/gc_11_5_2_mes1.bin differ
Binary files a/amdgpu/gc_11_5_2_mes_2.bin and b/amdgpu/gc_11_5_2_mes_2.bin
differ
Binary files a/amdgpu/gc_11_5_2_pfp.bin and b/amdgpu/gc_11_5_2_pfp.bin differ
Binary files a/amdgpu/gc_11_5_2_rlc.bin and b/amdgpu/gc_11_5_2_rlc.bin differ
Besides that there are WLAN, audio amp and Xe changes:
❯ git diff --oneline
Ubuntu-20240318.git3b128b60-0ubuntu2.17..Ubuntu-20240318.git3b128b60-0ubuntu2.19
| grep -v amdgpu| grep Binary
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cbd-spkid0-l0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cbd-spkid0-r0.bin differ
Binary files a/cirrus/cs35l41-dsp1-spk-prot-10280cbd-spkid0.bin and /dev/null
differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cbd-spkid1-l0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cbd-spkid1-r0.bin differ
Binary files a/cirrus/cs35l41-dsp1-spk-prot-10280cbd-spkid1.bin and /dev/null
differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cbf-spkid0-l0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cbf-spkid0-r0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cbf-spkid1-l0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cbf-spkid1-r0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc1-spkid0-l0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc1-spkid0-r0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc1-spkid1-l0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc1-spkid1-r0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc3-spkid0-l0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc3-spkid0-r0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc3-spkid1-l0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc3-spkid1-r0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc4-spkid0-l0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc4-spkid0-r0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc4-spkid1-l0.bin differ
Binary files /dev/null and
b/cirrus/cs35l41-dsp1-spk-prot-10280cc4-spkid1-r0.bin differ
Binary files /dev/null and b/cirrus/cs35l41-dsp1-spk-prot-103c8d9b-spkid0.bin
differ
Binary files /dev/null and b/cirrus/cs35l41-dsp1-spk-prot-103c8d9b-spkid1.bin
differ
Binary files /dev/null and b/cirrus/cs35l41-dsp1-spk-prot-103c8d9f-spkid0.bin
differ
Binary files /dev/null and b/cirrus/cs35l41-dsp1-spk-prot-103c8d9f-spkid1.bin
differ
Binary files /dev/null and b/cirrus/cs35l41-dsp1-spk-prot-103c8da0-spkid0.bin
differ
Binary files /dev/null and b/cirrus/cs35l41-dsp1-spk-prot-103c8da0-spkid1.bin
differ
Binary files /dev/null and b/cirrus/cs35l41-dsp1-spk-prot-103c8e11-spkid0.bin
differ
Binary files /dev/null and b/cirrus/cs35l41-dsp1-spk-prot-103c8e11-spkid1.bin
differ
Binary files /dev/null and b/cirrus/cs35l41/bincfgs/cs35l41-dsp1-14_5dB.bincfg
differ
Binary files /dev/null and b/cirrus/cs35l41/bincfgs/cs35l41-dsp1-16_5dB.bincfg
differ
Binary files /dev/null and b/cirrus/cs35l41/bincfgs/cs35l41-dsp1-19_5dB.bincfg
differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce5-spkid0-amp1.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce5-spkid0-amp2.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce5-spkid0-amp3.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce5-spkid0-amp4.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce5-spkid1-amp1.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce5-spkid1-amp2.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce5-spkid1-amp3.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce5-spkid1-amp4.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce6-spkid0-amp1.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce6-spkid0-amp2.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce6-spkid0-amp3.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce6-spkid0-amp4.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce6-spkid1-amp1.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce6-spkid1-amp2.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce6-spkid1-amp3.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce6-spkid1-amp4.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce7-spkid0-amp1.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce7-spkid0-amp2.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce7-spkid0-amp3.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce7-spkid0-amp4.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce7-spkid1-amp1.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce7-spkid1-amp2.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce7-spkid1-amp3.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280ce7-spkid1-amp4.bin differ
Binary files a/cirrus/cs35l56-b0-dsp1-misc-10280d12-spkid0-amp1.bin and
b/cirrus/cs35l56-b0-dsp1-misc-10280d12-spkid0-amp1.bin differ
Binary files a/cirrus/cs35l56-b0-dsp1-misc-10280d12-spkid0-amp2.bin and
b/cirrus/cs35l56-b0-dsp1-misc-10280d12-spkid0-amp2.bin differ
Binary files a/cirrus/cs35l56-b0-dsp1-misc-10280d12-spkid1-amp1.bin and
b/cirrus/cs35l56-b0-dsp1-misc-10280d12-spkid1-amp1.bin differ
Binary files a/cirrus/cs35l56-b0-dsp1-misc-10280d12-spkid1-amp2.bin and
b/cirrus/cs35l56-b0-dsp1-misc-10280d12-spkid1-amp2.bin differ
Binary files a/cirrus/cs35l56-b0-dsp1-misc-10280d13-spkid0-amp1.bin and
b/cirrus/cs35l56-b0-dsp1-misc-10280d13-spkid0-amp1.bin differ
Binary files a/cirrus/cs35l56-b0-dsp1-misc-10280d13-spkid0-amp2.bin and
b/cirrus/cs35l56-b0-dsp1-misc-10280d13-spkid0-amp2.bin differ
Binary files a/cirrus/cs35l56-b0-dsp1-misc-10280d13-spkid1-amp1.bin and
b/cirrus/cs35l56-b0-dsp1-misc-10280d13-spkid1-amp1.bin differ
Binary files a/cirrus/cs35l56-b0-dsp1-misc-10280d13-spkid1-amp2.bin and
b/cirrus/cs35l56-b0-dsp1-misc-10280d13-spkid1-amp2.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d32-spkid0-amp1.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d32-spkid0-amp2.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d32-spkid0-amp3.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d32-spkid0-amp4.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d32-spkid1-amp1.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d32-spkid1-amp2.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d32-spkid1-amp3.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d32-spkid1-amp4.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d33-spkid0-amp1.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d33-spkid0-amp2.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d33-spkid0-amp3.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d33-spkid0-amp4.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d33-spkid1-amp1.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d33-spkid1-amp2.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d33-spkid1-amp3.bin differ
Binary files /dev/null and
b/cirrus/cs35l56-b0-dsp1-misc-10280d33-spkid1-amp4.bin differ
Binary files /dev/null and b/cirrus/cs35l56-b0-dsp1-misc-17aa2347-amp1.bin
differ
Binary files /dev/null and b/cirrus/cs35l56-b0-dsp1-misc-17aa2347-amp2.bin
differ
Binary files /dev/null and b/cirrus/cs35l56-b0-dsp1-misc-17aa2348-amp1.bin
differ
Binary files /dev/null and b/cirrus/cs35l56-b0-dsp1-misc-17aa2348-amp2.bin
differ
Binary files /dev/null and b/cirrus/cs35l56-b0-dsp1-misc-17aa2349-amp1.bin
differ
Binary files /dev/null and b/cirrus/cs35l56-b0-dsp1-misc-17aa2349-amp2.bin
differ
Binary files a/cirrus/cs35l56/CS35L56_Rev3.11.27.wmfw and /dev/null differ
Binary files /dev/null and b/cirrus/cs35l56/CS35L56_Rev3.11.28B.wmfw differ
Binary files /dev/null and b/cirrus/cs35l56/CS35L56_Rev3.13.3R.wmfw differ
Binary files a/mediatek/mt7925/BT_RAM_CODE_MT7925_1_1_hdr.bin and
b/mediatek/mt7925/BT_RAM_CODE_MT7925_1_1_hdr.bin differ
Binary files a/mediatek/mt7925/WIFI_MT7925_PATCH_MCU_1_1_hdr.bin and
b/mediatek/mt7925/WIFI_MT7925_PATCH_MCU_1_1_hdr.bin differ
Binary files a/mediatek/mt7925/WIFI_RAM_CODE_MT7925_1_1.bin and
b/mediatek/mt7925/WIFI_RAM_CODE_MT7925_1_1.bin differ
Binary files /dev/null and b/xe/ptl_guc_70.bin differ
Binary files /dev/null and b/xe/ptl_huc.bin differ
None of that should change anything with your display.
Right now I suspect this is actually a compositor (mutter) bug and the
increased size of the initramfs is just changing the "timing" of when
gdm starts.
I'll add a mutter task for now until we can better understand what's
going on.
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux-firmware in Ubuntu.
https://bugs.launchpad.net/bugs/2128883
Title:
linux-firmware 20240318.git3b128b60-0ubuntu2.19 causes black screen on
login with dual 4K monitors at 200% scaling on Wayland (AMD GPU)
Status in linux-firmware package in Ubuntu:
Confirmed
Status in mutter package in Ubuntu:
New
Bug description:
Summary:
After automatic update from linux-firmware version .17 to .19 on October 17,
2025, Ubuntu 24.04 displays black screen on login when using dual LG ULTRAFINE
4K monitors with 200% fractional scaling on Wayland. The issue specifically
occurs when GNOME/GDM attempts to initialize displays at 200% scaling during
boot.
Hardware:
- CPU: AMD Ryzen 16-core
- GPU: AMD (integrated graphics)
- Monitors: 2x LG ULTRAFINE 4K (3840x2160) via DisplayPort
- Display Server: Wayland
- Desktop: GNOME
Steps to Reproduce:
1. Have dual 4K monitors configured at 200% fractional scaling
2. Update linux-firmware from .17 to .19
3. Save display configuration at 200% scaling
4. Reboot
5. Attempt to login
Expected Result:
Desktop should load normally with both monitors displaying correctly at 200%
scaling
Actual Result:
Black screen after login when monitors.xml contains 200% scaling configuration
Key Diagnostic Findings:
- Deleting ~/.config/monitors.xml allows login at 100% default scaling
- Changing to 200% scaling AFTER login works perfectly
- Problem only occurs when GDM/GNOME loads 200% scaling during boot
initialization
- Rebooting after setting 200% recreates the black screen issue
- This is a boot-time initialization bug, not a runtime scaling bug
Workaround:
Deleting ~/.config/monitors.xml before each login allows access, but requires
manual reconfiguration to 200% each session (unsustainable for daily use)
Fix:
Downgrading to linux-firmware=20240318.git3b128b60-0ubuntu2.17 resolves the
issue completely. All scaling levels work correctly with firmware .17.
Additional Information:
- Wayland is required for this hardware setup (X11 has display issues with
dual 4K monitors even on firmware .17)
- Single monitor configuration was not tested
- Issue appeared immediately after firmware update on Oct 17, 2025
- Firmware .17 works perfectly with Wayland + dual 4K + 200% scaling at all
times (boot and runtime)
- Bug is specific to boot-time display initialization with 200% fractional
scaling in firmware .19
System Information:
- Ubuntu Version: 24.04.3 LTS
- linux-firmware installed: 20240318.git3b128b60-0ubuntu2.17 (working -
currently held)
- linux-firmware candidate: 20240318.git3b128b60-0ubuntu2.19 (broken - causes
black screen)
ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: linux-firmware 20240318.git3b128b60-0ubuntu2.17
ProcVersionSignature: Ubuntu 6.14.0-33.33~24.04.1-generic 6.14.11
Uname: Linux 6.14.0-33-generic x86_64
ApportVersion: 2.28.1-0ubuntu3.8
Architecture: amd64
AudioDevicesInUse:
USER PID ACCESS COMMAND
/dev/snd/controlC1: joe 2802 F.... wireplumber
/dev/snd/controlC0: joe 2802 F.... wireplumber
/dev/snd/seq: joe 2797 F.... pipewire
CRDA: N/A
CasperMD5CheckResult: pass
CurrentDesktop: ubuntu:GNOME
Date: Sat Oct 18 10:25:24 2025
Dependencies: firmware-sof-signed 2023.12.1-1ubuntu1.10
InstallationDate: Installed on 2025-10-15 (3 days ago)
InstallationMedia: Ubuntu 24.04.3 LTS "Noble Numbat" - Release amd64
(20250805.1)
MachineType: ASUS System Product Name
ProcEnviron:
LANG=en_US.UTF-8
PATH=(custom, no user)
SHELL=/bin/bash
TERM=xterm-256color
XDG_RUNTIME_DIR=<set>
ProcFB: 0 amdgpudrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-6.14.0-33-generic
root=UUID=50126da2-dd87-4955-8708-1ecb4482ba78 ro quiet splash
RelatedPackageVersions:
linux-restricted-modules-6.14.0-33-generic N/A
linux-backports-modules-6.14.0-33-generic N/A
linux-firmware 20240318.git3b128b60-0ubuntu2.17
RfKill:
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
SourcePackage: linux-firmware
UpgradeStatus: No upgrade log present (probably fresh install)
acpidump: Error: command ['pkexec', '/usr/share/apport/dump_acpi_tables.py']
failed with exit code 126: Error executing command as another user: Request
dismissed
dmi.bios.date: 07/14/2025
dmi.bios.release: 10.78
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 1078
dmi.board.asset.tag: Default string
dmi.board.name: ROG STRIX B850-A GAMING WIFI
dmi.board.vendor: ASUSTeK COMPUTER INC.
dmi.board.version: Rev 1.xx
dmi.chassis.asset.tag: Default string
dmi.chassis.type: 3
dmi.chassis.vendor: Default string
dmi.chassis.version: Default string
dmi.modalias:
dmi:bvnAmericanMegatrendsInc.:bvr1078:bd07/14/2025:br10.78:svnASUS:pnSystemProductName:pvrSystemVersion:rvnASUSTeKCOMPUTERINC.:rnROGSTRIXB850-AGAMINGWIFI:rvrRev1.xx:cvnDefaultstring:ct3:cvrDefaultstring:skuSKU:
dmi.product.family: To be filled by O.E.M.
dmi.product.name: System Product Name
dmi.product.sku: SKU
dmi.product.version: System Version
dmi.sys.vendor: ASUS
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-firmware/+bug/2128883/+subscriptions
--
Mailing list: https://launchpad.net/~kernel-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help : https://help.launchpad.net/ListHelp