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

Reply via email to