I recently replaced my AMD Framework 13’s screen with the new 2.8K one. Since then I’ve run into a few issues initializing it:
- Sometimes, especially when an external monitor is connected, when I start X my laptop’s screen will stay black with some flickering static color bands.
- ABM doesn’t do anything (comparing
/sys/class/drm/card0/card0-eDP-1/amdgpu_bl0/actual_brightness
and/sys/class/drm/card0/card0-eDP-1/amdgpu_bl0/brightness
) even when enabled. - I see the attached log when I boot.
I can fix 1 & 2 by turning my laptop’s screen off and on again (e.g., with xset dpms force off
).
The only relevant upstream report I can find is Kernel warning in psr_su_set_dsc_slice_height and dsc2_disable at boot (#3027) · Issues · drm / amd · GitLab, but this was apparently fixed? Maybe we need a new BIOS update for the new screen?
dmesg
[ 1.900219] amdgpu: Virtual CRAT table created for CPU
[ 1.900234] amdgpu: Topology: Add CPU node
[ 1.900467] [drm] initializing kernel modesetting (IP DISCOVERY 0x1002:0x15BF 0xF111:0x0006 0xC4).
[ 1.900681] [drm] register mmio base: 0x90500000
[ 1.900683] [drm] register mmio size: 524288
[ 1.905032] [drm] add ip block number 0
[ 1.905033] [drm] add ip block number 1
[ 1.905035] [drm] add ip block number 2
[ 1.905036] [drm] add ip block number 3
[ 1.905037] [drm] add ip block number 4
[ 1.905039] [drm] add ip block number 5
[ 1.905040] [drm] add ip block number 6
[ 1.905041] [drm] add ip block number 7
[ 1.905043] [drm] add ip block number 8
[ 1.905044] [drm] add ip block number 9
[ 1.905045] [drm] add ip block number 10
[ 1.905063] amdgpu 0000:c1:00.0: amdgpu: Fetched VBIOS from VFCT
[ 1.905066] amdgpu: ATOM BIOS: 113-PHXGENERIC-001
[ 1.906332] [drm] VCN(0) encode/decode are enabled in VM mode
[ 1.906611] amdgpu 0000:c1:00.0: [drm:jpeg_v4_0_early_init] JPEG decode is enabled in VM mode
[ 1.907451] amdgpu 0000:c1:00.0: vgaarb: deactivate vga console
[ 1.907455] amdgpu 0000:c1:00.0: amdgpu: Trusted Memory Zone (TMZ) feature enabled
[ 1.907504] [drm] vm size is 262144 GB, 4 levels, block size is 9-bit, fragment size is 9-bit
[ 1.907526] amdgpu 0000:c1:00.0: amdgpu: VRAM: 4096M 0x0000008000000000 - 0x00000080FFFFFFFF (4096M used)
[ 1.907528] amdgpu 0000:c1:00.0: amdgpu: GART: 512M 0x00007FFF00000000 - 0x00007FFF1FFFFFFF
[ 1.907541] [drm] Detected VRAM RAM=4096M, BAR=4096M
[ 1.907542] [drm] RAM width 128bits DDR5
[ 1.907761] [drm] amdgpu: 4096M of VRAM memory ready
[ 1.907763] [drm] amdgpu: 30037M of GTT memory ready.
[ 1.907780] [drm] GART: num cpu pages 131072, num gpu pages 131072
[ 1.908276] [drm] PCIE GART of 512M enabled (table at 0x00000080FFD00000).
[ 1.908975] [drm] Loading DMUB firmware via PSP: version=0x08004000
[ 1.909300] [drm] Found VCN firmware Version ENC: 1.22 DEC: 8 VEP: 0 Revision: 3
[ 1.909306] amdgpu 0000:c1:00.0: amdgpu: Will use PSP to load VCN firmware
[ 1.934964] amdgpu 0000:c1:00.0: amdgpu: reserve 0x4000000 from 0x80f8000000 for PSP TMR
[ 2.492649] amdgpu 0000:c1:00.0: amdgpu: RAS: optional ras ta ucode is not available
[ 2.500959] amdgpu 0000:c1:00.0: amdgpu: RAP: optional rap ta ucode is not available
[ 2.500962] amdgpu 0000:c1:00.0: amdgpu: SECUREDISPLAY: securedisplay ta ucode is not available
[ 2.536609] amdgpu 0000:c1:00.0: amdgpu: SMU is initialized successfully!
[ 2.536613] [drm] Seamless boot condition check passed
[ 2.537865] [drm] Display Core v3.2.281 initialized on DCN 3.1.4
[ 2.537868] [drm] DP-HDMI FRL PCON supported
[ 2.540407] [drm] DMUB hardware initialized: version=0x08004000
[ 2.647832] [drm] PSR support 1, DC PSR ver 0, sink PSR ver 3 DPCD caps 0x3a su_y_granularity 4
[ 2.650103] [drm] kiq ring mec 3 pipe 1 q 0
[ 2.653074] amdgpu 0000:c1:00.0: [drm:jpeg_v4_0_hw_init] JPEG decode initialized successfully.
[ 2.655177] kfd kfd: amdgpu: Allocated 3969056 bytes on gart
[ 2.655190] kfd kfd: amdgpu: Total number of KFD nodes to be created: 1
[ 2.655314] amdgpu: Virtual CRAT table created for GPU
[ 2.655470] amdgpu: Topology: Add dGPU node [0x15bf:0x1002]
[ 2.655472] kfd kfd: amdgpu: added device 1002:15bf
[ 2.655484] amdgpu 0000:c1:00.0: amdgpu: SE 1, SH per SE 2, CU per SH 6, active_cu_number 12
[ 2.655488] amdgpu 0000:c1:00.0: amdgpu: ring gfx_0.0.0 uses VM inv eng 0 on hub 0
[ 2.655490] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.0.0 uses VM inv eng 1 on hub 0
[ 2.655491] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.1.0 uses VM inv eng 4 on hub 0
[ 2.655492] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.2.0 uses VM inv eng 6 on hub 0
[ 2.655493] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.3.0 uses VM inv eng 7 on hub 0
[ 2.655494] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.0.1 uses VM inv eng 8 on hub 0
[ 2.655495] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.1.1 uses VM inv eng 9 on hub 0
[ 2.655496] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.2.1 uses VM inv eng 10 on hub 0
[ 2.655497] amdgpu 0000:c1:00.0: amdgpu: ring comp_1.3.1 uses VM inv eng 11 on hub 0
[ 2.655498] amdgpu 0000:c1:00.0: amdgpu: ring sdma0 uses VM inv eng 12 on hub 0
[ 2.655499] amdgpu 0000:c1:00.0: amdgpu: ring vcn_unified_0 uses VM inv eng 0 on hub 8
[ 2.655500] amdgpu 0000:c1:00.0: amdgpu: ring jpeg_dec uses VM inv eng 1 on hub 8
[ 2.655501] amdgpu 0000:c1:00.0: amdgpu: ring mes_kiq_3.1.0 uses VM inv eng 13 on hub 0
[ 2.656825] [drm] ring gfx_32768.1.1 was added
[ 2.657440] [drm] ring compute_32768.2.2 was added
[ 2.658040] [drm] ring sdma_32768.3.3 was added
[ 2.658104] [drm] ring gfx_32768.1.1 ib test pass
[ 2.658166] [drm] ring compute_32768.2.2 ib test pass
[ 2.658239] [drm] ring sdma_32768.3.3 ib test pass
[ 2.660636] amdgpu 0000:c1:00.0: amdgpu: Runtime PM not available
[ 2.661738] [drm] Initialized amdgpu 3.57.0 20150101 for 0000:c1:00.0 on minor 0
[ 2.668496] fbcon: amdgpudrmfb (fb0) is primary device
[ 2.668499] fbcon: Deferring console take-over
[ 2.668501] amdgpu 0000:c1:00.0: [drm] fb0: amdgpudrmfb frame buffer device
[ 2.724824] [drm] DSC precompute is not needed.
[ 2.777986] ------------[ cut here ]------------
[ 2.777993] WARNING: CPU: 6 PID: 290 at drivers/gpu/drm/amd/amdgpu/../display/dc/dsc/dcn20/dcn20_dsc.c:272 dsc2_disable+0x114/0x190 [amdgpu]
[ 2.778327] Modules linked in: hid_generic usbhid dm_mod amdgpu crct10dif_pclmul crc32_pclmul crc32c_intel polyval_clmulni drm_buddy drm_suballoc_helper polyval_generic drm_ttm_helper ghash_clmulni_intel sha512_ssse3 ttm serio_raw sha256_ssse3 atkbd drm_exec sha1_ssse3 i2c_algo_bit libps2 vivaldi_fmap aesni_intel gpu_sched nvme gf128mul amdxcp crypto_simd drm_display_helper nvme_core cryptd xhci_pci i8042 ccp cec video xhci_pci_renesas nvme_auth serio wmi
[ 2.778377] CPU: 6 PID: 290 Comm: plymouthd Not tainted 6.10.5-2-cachyos-lto #1 9e43d025b31658ff3e63d737c764412a97636536
[ 2.778383] Hardware name: Framework Laptop 13 (AMD Ryzen 7040Series)/FRANMDCP07, BIOS 03.05 03/29/2024
[ 2.778385] RIP: 0010:dsc2_disable+0x114/0x190 [amdgpu]
[ 2.778642] Code: 00 48 85 c0 74 06 48 8b 70 08 eb 02 31 f6 44 8b 43 10 44 8b 4c 24 04 ba 08 00 00 00 48 c7 c1 3f a3 04 c1 31 ff e8 7c db cc ec <0f> 0b 48 8b 43 18 4c 8b 53 20 48 8b 7b 08 ba 01 00 00 00 45 31 c9
[ 2.778645] RSP: 0018:ffffb7aec0ac74b8 EFLAGS: 00010246
[ 2.778649] RAX: 04ff6612fbe6c300 RBX: ffff9bec11993a00 RCX: ffffffffc104a33f
[ 2.778651] RDX: 0000000000000008 RSI: ffff9bec01d920c8 RDI: 0000000000000000
[ 2.778653] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000
[ 2.778655] R10: ffffb7aec0ac74bc R11: ffffffffc07edfe0 R12: ffff9bec18830000
[ 2.778656] R13: ffff9bec18830000 R14: ffff9bec1e0402d8 R15: ffff9bec132a6660
[ 2.778658] FS: 00007f434c90f440(0000) GS:ffff9bfa61d00000(0000) knlGS:0000000000000000
[ 2.778661] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 2.778663] CR2: 00007f4348e68000 CR3: 0000000103b46000 CR4: 0000000000f50ef0
[ 2.778666] PKRU: 55555554
[ 2.778667] Call Trace:
[ 2.778672]
[ 2.778677] ? __warn+0xd0/0x1c0
[ 2.778683] ? dsc2_disable+0x114/0x190 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.778898] ? report_bug+0x141/0x1e0
[ 2.778905] ? handle_bug+0x42/0x70
[ 2.778908] ? exc_invalid_op+0x1a/0x50
[ 2.778911] ? asm_exc_invalid_op+0x1a/0x20
[ 2.778916] ? __pfx_amdgpu_cgs_read_register+0x10/0x10 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.779123] ? dsc2_disable+0x114/0x190 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.779330] ? dsc2_disable+0x114/0x190 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.779565] link_set_dsc_on_stream+0x3f4/0x660 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.779715] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.779717] ? drm_dp_dpcd_write+0xc3/0xe0 [drm_display_helper f81fd68a4706c0111b81b5036914a16504dfac30]
[ 2.779728] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.779729] ? dm_helpers_dp_write_dsc_enable+0x373/0x3f0 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.779838] link_set_dpms_off+0x83b/0x910 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.779949] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.779950] ? dmub_srv_get_fw_boot_status+0x2f/0x50 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.780070] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780071] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780073] ? dm_read_reg_func+0x61/0xd0 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.780183] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780185] dc_commit_state_no_check+0x34a/0x1c80 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.780301] dc_commit_streams+0x4dc/0x6d0 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.780415] amdgpu_dm_atomic_commit_tail+0x6ad/0x3b20 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.780531] ? __kmalloc_noprof+0x17e/0x3a0
[ 2.780535] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780536] ? dcn314_validate_bandwidth+0x341/0x3c0 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.780649] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780651] ? dma_resv_get_fences+0xce/0x4e0
[ 2.780654] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780656] ? ttm_resource_compatible+0xc5/0xf0 [ttm 05b608daed87c74ff35ac56005172bf872a16247]
[ 2.780664] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780665] ? wait_for_common+0x188/0x1c0
[ 2.780669] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780671] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780672] ? drm_crtc_commit_wait+0x36/0x90
[ 2.780676] commit_tail+0x22f/0x2c0
[ 2.780679] drm_atomic_helper_commit+0x262/0x270
[ 2.780681] drm_atomic_commit+0xaf/0xe0
[ 2.780683] ? __pfx___drm_printfn_info+0x10/0x10
[ 2.780686] drm_atomic_helper_set_config+0x54/0xa0
[ 2.780688] drm_mode_setcrtc+0x352/0x8a0
[ 2.780695] ? __pfx_drm_mode_setcrtc+0x10/0x10
[ 2.780696] drm_ioctl_kernel+0xbf/0x100
[ 2.780700] drm_ioctl+0x34d/0x4d0
[ 2.780701] ? __pfx_drm_mode_setcrtc+0x10/0x10
[ 2.780705] amdgpu_drm_ioctl+0x45/0x80 [amdgpu b7e0d82352bcd306f596b77ca9fd98742f970f7a]
[ 2.780811] __x64_sys_ioctl+0x73/0xc0
[ 2.780814] do_syscall_64+0x8e/0x170
[ 2.780817] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780818] ? do_user_addr_fault+0x41f/0x730
[ 2.780822] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780823] ? srso_alias_return_thunk+0x5/0xfbef5
[ 2.780825] entry_SYSCALL_64_after_hwframe+0x76/0x7e
[ 2.780827] RIP: 0033:0x7f434cbed30f
[ 2.780844] Code: 00 48 89 44 24 18 31 c0 c7 04 24 10 00 00 00 48 8d 44 24 60 48 89 44 24 08 48 8d 44 24 20 48 89 44 24 10 b8 10 00 00 00 0f 05 <89> c2 3d 00 f0 ff ff 77 18 48 8b 44 24 18 64 48 2b 04 25 28 00 00
[ 2.780845] RSP: 002b:00007fffdf2a8760 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
[ 2.780847] RAX: ffffffffffffffda RBX: 00007f434c90f3c8 RCX: 00007f434cbed30f
[ 2.780848] RDX: 00007fffdf2a87f0 RSI: 00000000c06864a2 RDI: 000000000000000f
[ 2.780849] RBP: 00007fffdf2a87f0 R08: 0000000000000000 R09: 00005fd5453aaa70
[ 2.780850] R10: 0000000000000000 R11: 0000000000000246 R12: 00000000c06864a2
[ 2.780851] R13: 000000000000000f R14: 00005fd5453632e0 R15: 00005fd5453632a0
[ 2.780854]
[ 2.780854] ---[ end trace 0000000000000000 ]---
Distro: CachyOS (Arch + special sauce, I can try with a vanilla Arch kernel if that would help).
Kernel: 6.10.5-2-cachyos-lto
Kernel Commandline:
tsc=nowatchdog
transparent_hugepage=always
zswap.enabled=0
preempt=full
rcu_nocbs=all
rcutree.enable_rcu_lazy=1
psi=0
nowatchdog
lockdown=integrity
amd_iommu=on
module.sig_enforce=1
debugfs=on
iommu=pt
quiet
splash
video=efifb:nobgrt
loglevel=3
rd.systemd.show_status=0
systemd.show_status=0
rd.udev.log-priority=3
vt.global_cursor_default=0