Bug 211425
Summary: | [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting | ||
---|---|---|---|
Product: | Drivers | Reporter: | Andreas (icedragon.aw) |
Component: | Video(DRI - non Intel) | Assignee: | drivers_video-dri |
Status: | NEW --- | ||
Severity: | blocking | CC: | alexdeucher, barnoid, danielroschka+kernel, grigorije05, janboe.ye, t.clastres |
Priority: | P1 | ||
Hardware: | x86-64 | ||
OS: | Linux | ||
Kernel Version: | 5.15.10 | Subsystem: | |
Regression: | Yes | Bisected commit-id: |
Description
Andreas
2021-01-27 08:29:25 UTC
Kernel 5.10.11 (mainline) issues still persist: [ 181.977478] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting [ 181.977546] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B200 (len 3615, WS 8, PS 0) @ 0xB34E [ 181.977617] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B0F4 (len 268, WS 4, PS 0) @ 0xB147 [ 181.977689] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! [ 183.536107] [drm] amdgpu_dm_irq_schedule_work FAILED src 2 [ 203.878870] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting [ 203.878937] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B200 (len 3615, WS 8, PS 0) @ 0xB6EA [ 203.879009] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B0F4 (len 268, WS 4, PS 0) @ 0xB147 [ 203.879080] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! [ 206.105584] [drm] perform_link_training_with_retries: Link training attempt 1 of 4 failed [ 206.509404] [drm] perform_link_training_with_retries: Link training attempt 2 of 4 failed Kernel 5.10.12 (original mainline) issues still persist: [Di Feb 2 17:36:09 2021] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting [Di Feb 2 17:36:09 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B200 (len 3615, WS 8, PS 0) @ 0xB34E [Di Feb 2 17:36:09 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B0F4 (len 268, WS 4, PS 0) @ 0xB147 [Di Feb 2 17:36:09 2021] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! [Di Feb 2 17:36:10 2021] [drm] amdgpu_dm_irq_schedule_work FAILED src 2 [Di Feb 2 17:36:30 2021] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting [Di Feb 2 17:36:30 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B200 (len 3615, WS 8, PS 0) @ 0xB6EA [Di Feb 2 17:36:30 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B0F4 (len 268, WS 4, PS 0) @ 0xB147 [Di Feb 2 17:36:30 2021] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! [Di Feb 2 17:36:33 2021] [drm] perform_link_training_with_retries: Link training attempt 1 of 4 failed [Di Feb 2 17:36:33 2021] [drm] perform_link_training_with_retries: Link training attempt 2 of 4 failed Hi, it is still reproducibility with mainline kernel 5.10.13 - at least it takes the 20sec time to re-enable the screen - as mentioned in the error message below.: [Fr Feb 5 09:00:00 2021] [drm] perform_link_training_with_retries: Link training attempt 1 of 4 failed [Fr Feb 5 09:00:21 2021] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting [Fr Feb 5 09:00:21 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B200 (len 3615, WS 8, PS 0) @ 0xB34E [Fr Feb 5 09:00:21 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B0F4 (len 268, WS 4, PS 0) @ 0xB147 [Fr Feb 5 09:00:21 2021] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! Hi, it is still reproducibility with mainline kernel 5.10.14: [Di Feb 9 12:51:04 2021] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting [Di Feb 9 12:51:04 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B200 (len 3615, WS 8, PS 0) @ 0xB34E [Di Feb 9 12:51:04 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B0F4 (len 268, WS 4, PS 0) @ 0xB147 [Di Feb 9 12:51:04 2021] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! [Di Feb 9 12:51:06 2021] [drm] amdgpu_dm_irq_schedule_work FAILED src 2 ... [Di Feb 9 12:51:26 2021] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting [Di Feb 9 12:51:26 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B200 (len 3615, WS 8, PS 0) @ 0xB6EA [Di Feb 9 12:51:26 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B0F4 (len 268, WS 4, PS 0) @ 0xB147 [Di Feb 9 12:51:26 2021] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! If this is a regression can you bisect? (In reply to Alex Deucher from comment #5) > If this is a regression can you bisect? I can try to bisect at next weekend. OK, I could successfully bisect the right point. - last good kernel version was 5.8.18 (latest 5.8.) - first bad kernel version was 5.9.0 until latest 5.10.16! On the kernel 5.4 until 5.8.18 I could only get the 'warnings' like: [Sa Feb 13 20:37:08 2021] [drm] Failed to add display topology, DTM TA is not initialized. -> with kernel prior to and with 5.8.18 no real issue with resuming the screen (only the topology message above). Since 5.9.0: Feb 13 20:33:53 localhost kernel: [ 16.924598] [drm] Failed to add display topology, DTM TA is not initialized. Feb 13 20:33:53 localhost kernel: [ 71.826161] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting Feb 13 20:33:53 localhost kernel: [ 71.826168] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B200 (len 3615, WS 8, PS 0) @ 0xB34E Feb 13 20:33:53 localhost kernel: [ 71.826172] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B0F4 (len 268, WS 4, PS 0) @ 0xB147 Feb 13 20:33:53 localhost kernel: [ 71.826178] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! Feb 13 20:33:54 localhost kernel: [ 73.389814] [drm] amdgpu_dm_irq_schedule_work FAILED src 2 Also the current latest 5.10.16 produces the errors: Feb 13 17:41:21 localhost kernel: [ 92.580071] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting Feb 13 17:41:21 localhost kernel: [ 92.580079] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B200 (len 3615, WS 8, PS 0) @ 0xB34E Feb 13 17:41:21 localhost kernel: [ 92.580083] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B0F4 (len 268, WS 4, PS 0) @ 0xB147 Feb 13 17:41:21 localhost kernel: [ 92.580089] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! Feb 13 17:41:23 localhost kernel: [ 94.143214] [drm] amdgpu_dm_irq_schedule_work FAILED src 2 Can you narrow down the specific commit? https://www.kernel.org/doc/html/latest/admin-guide/bug-bisect.html This was my first patch bisection - after 14 rebuilds and reboots it says: 9555152beb1143c85c03f9b9de59863cbbe89f4b is the first bad commit commit 9555152beb1143c85c03f9b9de59863cbbe89f4b Merge: f75020fcb97a 7808363154d6 Author: Dave Airlie <airlied@redhat.com> Date: Thu Jul 2 15:17:31 2020 +1000 Merge tag 'amd-drm-next-5.9-2020-07-01' of git://people.freedesktop.org/~agd5f/linux into drm-next amd-drm-next-5.9-2020-07-01: amdgpu: - DC DMUB updates - HDCP fixes - Thermal interrupt fixes - Add initial support for Sienna Cichlid GPU - Add support for unique id on Arcturus - Major swSMU code cleanup - Skip BAR resizing if the bios already did id - Fixes for DCN bandwidth calculations - Runtime PM reference count fixes - Add initial UVD support for SI - Add support for ASSR on eDP links - Lots of misc fixes and cleanups - Enable runtime PM on vega10 boards that support BACO - RAS fixes - SR-IOV fixes - Use IP discovery table on renoir - DC stream synchronization fixes amdkfd: - Track SDMA usage per process - Fix GCC10 compiler warnings - Locking fix radeon: - Default to on chip GART for AGP boards on all arches - Runtime PM reference count fixes UAPI: - Update comments to clarify MTYPE From: Alex Deucher <alexdeucher@gmail.com> Link: https://patchwork.freedesktop.org/patch/msgid/20200701155041.1102829-1-alexander.deucher@amd.com Signed-off-by: Dave Airlie <airlied@redhat.com> drivers/gpu/drm/amd/amdgpu/Makefile | 30 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 11 +- drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c | 73 +- .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10_3.c | 834 + drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c | 5 - drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.c | 79 +- drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.h | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c | 16 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 106 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 134 +- drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_doorbell.h | 11 +- drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.c | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 18 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 33 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fru_eeprom.c | 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fru_eeprom.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 3 + drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c | 2 - drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c | 12 +- drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 15 +- drivers/gpu/drm/amd/amdgpu/amdgpu_jpeg.c | 16 +- drivers/gpu/drm/amd/amdgpu/amdgpu_jpeg.h | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 43 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h | 45 +- drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 300 +- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 126 +- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 12 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 30 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c | 33 +- drivers/gpu/drm/amd/amdgpu/amdgpu_sync.h | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 115 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c | 39 + drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h | 9 + drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 26 + drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 8 + drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.h | 25 +- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c | 178 +- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.h | 30 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | 2 - drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 5 - drivers/gpu/drm/amd/amdgpu/athub_v2_1.c | 100 + drivers/gpu/drm/amd/amdgpu/athub_v2_1.h | 30 + drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/df_v3_6.c | 2 +- drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 527 +- drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 4 +- drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 12 +- drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.c | 4 + drivers/gpu/drm/amd/amdgpu/gfxhub_v2_1.c | 411 + drivers/gpu/drm/amd/amdgpu/gfxhub_v2_1.h | 39 + drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c | 94 +- drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c | 1 + drivers/gpu/drm/amd/amdgpu/jpeg_v2_0.c | 15 +- drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.c | 8 +- drivers/gpu/drm/amd/amdgpu/jpeg_v3_0.c | 613 + drivers/gpu/drm/amd/amdgpu/jpeg_v3_0.h | 29 + drivers/gpu/drm/amd/amdgpu/mes_api_def.h | 443 + drivers/gpu/drm/amd/amdgpu/mes_v10_1.c | 664 +- drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.c | 76 +- drivers/gpu/drm/amd/amdgpu/navi10_ih.c | 21 +- drivers/gpu/drm/amd/amdgpu/nbio_v2_3.c | 14 +- drivers/gpu/drm/amd/amdgpu/nv.c | 103 +- drivers/gpu/drm/amd/amdgpu/nv.h | 1 + drivers/gpu/drm/amd/amdgpu/psp_gfx_if.h | 8 + drivers/gpu/drm/amd/amdgpu/psp_v11_0.c | 92 +- drivers/gpu/drm/amd/amdgpu/sdma_common.h | 42 + drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 47 +- drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c | 7 +- drivers/gpu/drm/amd/amdgpu/sdma_v5_0.h | 15 - drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c | 1757 + drivers/gpu/drm/amd/amdgpu/sdma_v5_2.h | 30 + drivers/gpu/drm/amd/amdgpu/si.c | 33 +- drivers/gpu/drm/amd/amdgpu/si_dpm.h | 2 +- drivers/gpu/drm/amd/amdgpu/si_ih.c | 2 + drivers/gpu/drm/amd/amdgpu/sid.h | 26 +- .../gpu/drm/amd/amdgpu/sienna_cichlid_reg_init.c | 54 + drivers/gpu/drm/amd/amdgpu/soc15.c | 16 +- drivers/gpu/drm/amd/amdgpu/soc15_common.h | 15 +- drivers/gpu/drm/amd/amdgpu/uvd_v3_1.c | 793 + drivers/gpu/drm/amd/amdgpu/uvd_v3_1.h | 29 + drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c | 148 +- drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c | 127 +- drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c | 122 +- drivers/gpu/drm/amd/amdgpu/vcn_v3_0.c | 1684 + drivers/gpu/drm/amd/amdgpu/vcn_v3_0.h | 29 + drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler.h | 877 +- .../gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx10.asm | 301 +- drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 1 + drivers/gpu/drm/amd/amdkfd/kfd_device.c | 28 + .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 63 +- .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 1 + drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c | 1 + drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 1 + drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 21 +- drivers/gpu/drm/amd/amdkfd/kfd_process.c | 246 +- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 295 +- drivers/gpu/drm/amd/display/Kconfig | 8 + drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 100 +- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 2 + .../drm/amd/display/amdgpu_dm/amdgpu_dm_color.c | 10 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 8 +- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_hdcp.c | 43 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 20 + .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 19 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_pp_smu.c | 30 +- .../drm/amd/display/amdgpu_dm/amdgpu_dm_services.c | 25 - drivers/gpu/drm/amd/display/dc/Makefile | 4 + drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c | 204 + .../amd/display/dc/bios/command_table_helper2.c | 5 + .../dc/bios/dce112/command_table_helper2_dce112.c | 40 + .../dc/bios/dce112/command_table_helper2_dce112.h | 3 + .../gpu/drm/amd/display/dc/calcs/dcn_calc_auto.c | 6 +- drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c | 18 +- drivers/gpu/drm/amd/display/dc/clk_mgr/Makefile | 10 + drivers/gpu/drm/amd/display/dc/clk_mgr/clk_mgr.c | 22 + .../amd/display/dc/clk_mgr/dcn20/dcn20_clk_mgr.c | 18 +- .../drm/amd/display/dc/clk_mgr/dcn21/rn_clk_mgr.c | 3 +- .../gpu/drm/amd/display/dc/clk_mgr/dcn30/dalsmc.h | 60 + .../amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c | 543 + .../amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.h | 38 + .../dc/clk_mgr/dcn30/dcn30_clk_mgr_smu_msg.c | 255 + .../dc/clk_mgr/dcn30/dcn30_clk_mgr_smu_msg.h | 108 + drivers/gpu/drm/amd/display/dc/core/dc.c | 137 +- drivers/gpu/drm/amd/display/dc/core/dc_debug.c | 59 + drivers/gpu/drm/amd/display/dc/core/dc_link.c | 43 +- drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c | 42 +- drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c | 163 +- drivers/gpu/drm/amd/display/dc/core/dc_link_hwss.c | 8 +- drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 40 +- drivers/gpu/drm/amd/display/dc/core/dc_stream.c | 37 + drivers/gpu/drm/amd/display/dc/core/dc_vm_helper.c | 3 - drivers/gpu/drm/amd/display/dc/dc.h | 65 +- drivers/gpu/drm/amd/display/dc/dc_bios_types.h | 5 +- drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c | 28 +- drivers/gpu/drm/amd/display/dc/dc_dmub_srv.h | 2 + drivers/gpu/drm/amd/display/dc/dc_hw_types.h | 75 + drivers/gpu/drm/amd/display/dc/dc_link.h | 6 +- drivers/gpu/drm/amd/display/dc/dc_stream.h | 15 + drivers/gpu/drm/amd/display/dc/dc_types.h | 36 + drivers/gpu/drm/amd/display/dc/dce/Makefile | 3 +- drivers/gpu/drm/amd/display/dc/dce/dce_abm.h | 20 + drivers/gpu/drm/amd/display/dc/dce/dce_audio.c | 4 +- .../gpu/drm/amd/display/dc/dce/dce_clock_source.c | 153 +- .../gpu/drm/amd/display/dc/dce/dce_clock_source.h | 42 + drivers/gpu/drm/amd/display/dc/dce/dce_hwseq.h | 46 + .../gpu/drm/amd/display/dc/dce/dce_panel_cntl.c | 10 +- drivers/gpu/drm/amd/display/dc/dce/dmub_abm.c | 92 - .../gpu/drm/amd/display/dc/dce/dmub_hw_lock_mgr.c | 57 + .../gpu/drm/amd/display/dc/dce/dmub_hw_lock_mgr.h | 39 + drivers/gpu/drm/amd/display/dc/dce/dmub_psr.c | 3 +- .../amd/display/dc/dce110/dce110_hw_sequencer.c | 28 +- .../amd/display/dc/dce110/dce110_hw_sequencer.h | 1 + drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hubp.c | 12 + .../drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 37 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_init.c | 1 + .../drm/amd/display/dc/dcn10/dcn10_link_encoder.c | 7 + .../drm/amd/display/dc/dcn10/dcn10_link_encoder.h | 6 + drivers/gpu/drm/amd/display/dc/dcn10/dcn10_optc.c | 13 +- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_optc.h | 62 + .../amd/display/dc/dcn10/dcn10_stream_encoder.h | 42 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dccg.h | 22 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dpp.c | 4 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dsc.c | 17 - drivers/gpu/drm/amd/display/dc/dcn20/dcn20_dsc.h | 12 - .../gpu/drm/amd/display/dc/dcn20/dcn20_hubbub.c | 9 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hubp.c | 20 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hubp.h | 41 + drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c | 134 +- drivers/gpu/drm/amd/display/dc/dcn20/dcn20_init.c | 1 + .../drm/amd/display/dc/dcn20/dcn20_link_encoder.h | 7 +- .../gpu/drm/amd/display/dc/dcn20/dcn20_resource.c | 93 +- drivers/gpu/drm/amd/display/dc/dcn21/dcn21_hubp.c | 121 +- drivers/gpu/drm/amd/display/dc/dcn21/dcn21_hwseq.c | 89 + drivers/gpu/drm/amd/display/dc/dcn21/dcn21_hwseq.h | 6 + drivers/gpu/drm/amd/display/dc/dcn21/dcn21_init.c | 5 +- .../gpu/drm/amd/display/dc/dcn21/dcn21_resource.c | 4 +- drivers/gpu/drm/amd/display/dc/dcn30/Makefile | 54 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_afmt.c | 206 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_afmt.h | 230 + .../gpu/drm/amd/display/dc/dcn30/dcn30_cm_common.c | 640 + .../gpu/drm/amd/display/dc/dcn30/dcn30_cm_common.h | 78 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dccg.c | 100 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dccg.h | 66 + .../amd/display/dc/dcn30/dcn30_dio_link_encoder.c | 205 + .../amd/display/dc/dcn30/dcn30_dio_link_encoder.h | 76 + .../display/dc/dcn30/dcn30_dio_stream_encoder.c | 851 + .../display/dc/dcn30/dcn30_dio_stream_encoder.h | 269 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dpp.c | 1414 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dpp.h | 608 + .../gpu/drm/amd/display/dc/dcn30/dcn30_dpp_cm.c | 410 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dwb.c | 264 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dwb.h | 923 + .../gpu/drm/amd/display/dc/dcn30/dcn30_dwb_cm.c | 354 + .../gpu/drm/amd/display/dc/dcn30/dcn30_hubbub.c | 417 + .../gpu/drm/amd/display/dc/dcn30/dcn30_hubbub.h | 119 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubp.c | 532 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubp.h | 292 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hwseq.c | 719 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hwseq.h | 70 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_init.c | 141 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_init.h | 33 + .../gpu/drm/amd/display/dc/dcn30/dcn30_mmhubbub.c | 239 + .../gpu/drm/amd/display/dc/dcn30/dcn30_mmhubbub.h | 463 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_mpc.c | 1409 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_mpc.h | 665 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_opp.h | 36 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_optc.c | 365 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_optc.h | 333 + .../gpu/drm/amd/display/dc/dcn30/dcn30_resource.c | 2691 + .../gpu/drm/amd/display/dc/dcn30/dcn30_resource.h | 82 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_vpg.c | 194 + drivers/gpu/drm/amd/display/dc/dcn30/dcn30_vpg.h | 133 + drivers/gpu/drm/amd/display/dc/dm_cp_psp.h | 1 + drivers/gpu/drm/amd/display/dc/dm_helpers.h | 23 + drivers/gpu/drm/amd/display/dc/dm_services.h | 69 - drivers/gpu/drm/amd/display/dc/dml/Makefile | 7 + .../display/dc/dml/dcn20/display_rq_dlg_calc_20.c | 33 +- .../dc/dml/dcn20/display_rq_dlg_calc_20v2.c | 33 +- .../display/dc/dml/dcn21/display_rq_dlg_calc_21.c | 36 +- .../amd/display/dc/dml/dcn30/display_mode_vba_30.c | 6865 ++ .../amd/display/dc/dml/dcn30/display_mode_vba_30.h | 43 + .../display/dc/dml/dcn30/display_rq_dlg_calc_30.c | 1868 + .../display/dc/dml/dcn30/display_rq_dlg_calc_30.h | 69 + .../drm/amd/display/dc/dml/display_mode_enums.h | 6 + .../gpu/drm/amd/display/dc/dml/display_mode_lib.c | 181 + .../gpu/drm/amd/display/dc/dml/display_mode_lib.h | 11 + .../drm/amd/display/dc/dml/display_mode_structs.h | 14 + .../gpu/drm/amd/display/dc/dml/display_mode_vba.c | 67 +- .../gpu/drm/amd/display/dc/dml/display_mode_vba.h | 230 +- .../gpu/drm/amd/display/dc/dml/dml_inline_defs.h | 18 +- drivers/gpu/drm/amd/display/dc/dsc/rc_calc.c | 8 +- drivers/gpu/drm/amd/display/dc/gpio/Makefile | 10 + .../amd/display/dc/gpio/dcn30/hw_factory_dcn30.c | 257 + .../amd/display/dc/gpio/dcn30/hw_factory_dcn30.h | 33 + .../amd/display/dc/gpio/dcn30/hw_translate_dcn30.c | 387 + .../amd/display/dc/gpio/dcn30/hw_translate_dcn30.h | 35 + drivers/gpu/drm/amd/display/dc/gpio/hw_factory.c | 9 +- drivers/gpu/drm/amd/display/dc/gpio/hw_translate.c | 8 + drivers/gpu/drm/amd/display/dc/inc/core_status.h | 2 + drivers/gpu/drm/amd/display/dc/inc/core_types.h | 31 +- drivers/gpu/drm/amd/display/dc/inc/dc_link_ddc.h | 2 +- drivers/gpu/drm/amd/display/dc/inc/dc_link_dp.h | 2 +- drivers/gpu/drm/amd/display/dc/inc/hw/clk_mgr.h | 75 + .../drm/amd/display/dc/inc/hw/clk_mgr_internal.h | 14 + drivers/gpu/drm/amd/display/dc/inc/hw/dchubbub.h | 6 + drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h | 7 + drivers/gpu/drm/amd/display/dc/inc/hw/dwb.h | 83 + drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h | 7 +- drivers/gpu/drm/amd/display/dc/inc/hw/hw_shared.h | 9 + drivers/gpu/drm/amd/display/dc/inc/hw/mcif_wb.h | 8 + drivers/gpu/drm/amd/display/dc/inc/hw/mpc.h | 108 + .../gpu/drm/amd/display/dc/inc/hw/stream_encoder.h | 4 + .../drm/amd/display/dc/inc/hw/timing_generator.h | 19 + drivers/gpu/drm/amd/display/dc/inc/hw_sequencer.h | 6 + drivers/gpu/drm/amd/display/dc/inc/resource.h | 3 + drivers/gpu/drm/amd/display/dc/irq/Makefile | 10 + .../amd/display/dc/irq/dcn30/irq_service_dcn30.c | 384 + .../amd/display/dc/irq/dcn30/irq_service_dcn30.h | 37 + drivers/gpu/drm/amd/display/dc/os_types.h | 10 +- drivers/gpu/drm/amd/display/dmub/dmub_srv.h | 27 +- drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 500 +- .../gpu/drm/amd/display/dmub/inc/dmub_cmd_dal.h | 56 - .../gpu/drm/amd/display/dmub/inc/dmub_cmd_vbios.h | 41 - .../gpu/drm/amd/display/dmub/inc/dmub_fw_meta.h | 63 - .../gpu/drm/amd/display/dmub/inc/dmub_gpint_cmd.h | 75 - drivers/gpu/drm/amd/display/dmub/inc/dmub_rb.h | 152 - drivers/gpu/drm/amd/display/dmub/inc/dmub_types.h | 75 - drivers/gpu/drm/amd/display/dmub/src/Makefile | 3 + drivers/gpu/drm/amd/display/dmub/src/dmub_dcn20.c | 49 +- drivers/gpu/drm/amd/display/dmub/src/dmub_dcn20.h | 6 +- drivers/gpu/drm/amd/display/dmub/src/dmub_dcn21.c | 10 - drivers/gpu/drm/amd/display/dmub/src/dmub_dcn21.h | 6 - drivers/gpu/drm/amd/display/dmub/src/dmub_dcn30.c | 184 + drivers/gpu/drm/amd/display/dmub/src/dmub_dcn30.h | 50 + drivers/gpu/drm/amd/display/dmub/src/dmub_reg.h | 2 +- drivers/gpu/drm/amd/display/dmub/src/dmub_srv.c | 91 +- drivers/gpu/drm/amd/display/include/dal_asic_id.h | 4 + drivers/gpu/drm/amd/display/include/dal_types.h | 1 + .../amd/display/include/grph_object_ctrl_defs.h | 5 + drivers/gpu/drm/amd/display/modules/color/Makefile | 2 +- .../drm/amd/display/modules/color/color_gamma.c | 115 +- .../drm/amd/display/modules/color/color_gamma.h | 18 +- .../drm/amd/display/modules/color/color_table.c | 48 + .../drm/amd/display/modules/color/color_table.h | 47 + .../gpu/drm/amd/display/modules/inc/mod_stats.h | 8 +- .../drm/amd/display/modules/power/power_helpers.c | 96 +- .../include/asic_reg/athub/athub_2_1_0_offset.h | 523 + .../include/asic_reg/athub/athub_2_1_0_sh_mask.h | 2378 + .../amd/include/asic_reg/dcn/dcn_3_0_0_offset.h | 17880 +++++ .../amd/include/asic_reg/dcn/dcn_3_0_0_sh_mask.h | 70929 +++++++++++++++++++ .../amd/include/asic_reg/dcn/dpcs_3_0_0_offset.h | 573 + .../amd/include/asic_reg/dcn/dpcs_3_0_0_sh_mask.h | 3565 + .../drm/amd/include/asic_reg/gc/gc_10_1_0_offset.h | 6 +- .../amd/include/asic_reg/gc/gc_10_1_0_sh_mask.h | 36 + .../amd/include/asic_reg/gc/gc_10_3_0_default.h | 7272 ++ .../drm/amd/include/asic_reg/gc/gc_10_3_0_offset.h | 13473 ++++ .../amd/include/asic_reg/gc/gc_10_3_0_sh_mask.h | 47727 +++++++++++++ .../drm/amd/include/asic_reg/gc/gc_9_0_offset.h | 8 +- .../drm/amd/include/asic_reg/gc/gc_9_0_sh_mask.h | 27 + .../drm/amd/include/asic_reg/gc/gc_9_1_offset.h | 8 +- .../drm/amd/include/asic_reg/gc/gc_9_1_sh_mask.h | 26 + .../drm/amd/include/asic_reg/gc/gc_9_2_1_offset.h | 8 +- .../drm/amd/include/asic_reg/gc/gc_9_2_1_sh_mask.h | 26 + .../gpu/drm/amd/include/asic_reg/uvd/uvd_3_1_d.h | 98 + .../drm/amd/include/asic_reg/uvd/uvd_3_1_sh_mask.h | 804 + .../amd/include/asic_reg/vcn/vcn_3_0_0_offset.h | 1542 + .../amd/include/asic_reg/vcn/vcn_3_0_0_sh_mask.h | 5496 ++ drivers/gpu/drm/amd/include/atomfirmware.h | 283 + .../amd/include/ivsrcid/sdma2/irqsrcs_sdma2_5_0.h | 45 + .../amd/include/ivsrcid/sdma3/irqsrcs_sdma3_5_0.h | 45 + .../gpu/drm/amd/include/sienna_cichlid_ip_offset.h | 1168 + drivers/gpu/drm/amd/include/soc15_ih_clientid.h | 1 + drivers/gpu/drm/amd/powerplay/Makefile | 2 +- drivers/gpu/drm/amd/powerplay/amdgpu_smu.c | 1520 +- drivers/gpu/drm/amd/powerplay/arcturus_ppt.c | 1152 +- drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 8 +- drivers/gpu/drm/amd/powerplay/hwmgr/smu8_hwmgr.c | 2 +- drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c | 10 +- .../gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c | 4 +- drivers/gpu/drm/amd/powerplay/hwmgr/vega12_hwmgr.c | 4 +- .../amd/powerplay/hwmgr/vega12_processpptables.c | 2 +- .../gpu/drm/amd/powerplay/hwmgr/vega12_thermal.c | 4 +- drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c | 6 +- drivers/gpu/drm/amd/powerplay/inc/amdgpu_smu.h | 84 +- drivers/gpu/drm/amd/powerplay/inc/arcturus_ppsmc.h | 3 + .../amd/powerplay/inc/smu11_driver_if_arcturus.h | 12 +- .../powerplay/inc/smu11_driver_if_sienna_cichlid.h | 1220 + drivers/gpu/drm/amd/powerplay/inc/smu_types.h | 4 + drivers/gpu/drm/amd/powerplay/inc/smu_v11_0.h | 35 +- .../gpu/drm/amd/powerplay/inc/smu_v11_0_7_ppsmc.h | 139 + .../drm/amd/powerplay/inc/smu_v11_0_7_pptable.h | 196 + drivers/gpu/drm/amd/powerplay/inc/smu_v12_0.h | 2 +- drivers/gpu/drm/amd/powerplay/navi10_ppt.c | 747 +- drivers/gpu/drm/amd/powerplay/renoir_ppt.c | 31 +- drivers/gpu/drm/amd/powerplay/sienna_cichlid_ppt.c | 2640 + drivers/gpu/drm/amd/powerplay/sienna_cichlid_ppt.h | 37 + drivers/gpu/drm/amd/powerplay/smu_internal.h | 274 +- drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 633 +- drivers/gpu/drm/amd/powerplay/smu_v12_0.c | 54 +- drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/vega20_smumgr.c | 11 +- drivers/gpu/drm/amd/powerplay/vega20_ppt.c | 3288 - drivers/gpu/drm/amd/powerplay/vega20_ppt.h | 179 - drivers/gpu/drm/radeon/ci_dpm.c | 2 +- drivers/gpu/drm/radeon/ni_dpm.c | 9 +- drivers/gpu/drm/radeon/radeon_connectors.c | 20 +- drivers/gpu/drm/radeon/radeon_display.c | 4 +- drivers/gpu/drm/radeon/radeon_drv.c | 9 +- drivers/gpu/drm/radeon/radeon_kms.c | 4 +- include/drm/amd_asic_type.h | 1 + include/uapi/drm/amdgpu_drm.h | 10 +- 362 files changed, 222431 insertions(+), 8683 deletions(-) create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10_3.c create mode 100644 drivers/gpu/drm/amd/amdgpu/athub_v2_1.c create mode 100644 drivers/gpu/drm/amd/amdgpu/athub_v2_1.h create mode 100644 drivers/gpu/drm/amd/amdgpu/gfxhub_v2_1.c create mode 100644 drivers/gpu/drm/amd/amdgpu/gfxhub_v2_1.h create mode 100644 drivers/gpu/drm/amd/amdgpu/jpeg_v3_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/jpeg_v3_0.h create mode 100644 drivers/gpu/drm/amd/amdgpu/mes_api_def.h create mode 100644 drivers/gpu/drm/amd/amdgpu/sdma_common.h create mode 100644 drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c create mode 100644 drivers/gpu/drm/amd/amdgpu/sdma_v5_2.h create mode 100644 drivers/gpu/drm/amd/amdgpu/sienna_cichlid_reg_init.c create mode 100644 drivers/gpu/drm/amd/amdgpu/uvd_v3_1.c create mode 100644 drivers/gpu/drm/amd/amdgpu/uvd_v3_1.h create mode 100644 drivers/gpu/drm/amd/amdgpu/vcn_v3_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/vcn_v3_0.h create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dalsmc.h create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.c create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr.h create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr_smu_msg.c create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn30/dcn30_clk_mgr_smu_msg.h create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dmub_hw_lock_mgr.c create mode 100644 drivers/gpu/drm/amd/display/dc/dce/dmub_hw_lock_mgr.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/Makefile create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_afmt.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_afmt.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_cm_common.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_cm_common.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dccg.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dccg.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dio_link_encoder.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dio_link_encoder.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dio_stream_encoder.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dio_stream_encoder.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dpp.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dpp.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dpp_cm.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dwb.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dwb.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dwb_cm.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubbub.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubbub.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubp.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hubp.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hwseq.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_hwseq.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_init.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_init.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_mmhubbub.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_mmhubbub.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_mpc.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_mpc.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_opp.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_optc.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_optc.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_resource.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_resource.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_vpg.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn30/dcn30_vpg.h create mode 100644 drivers/gpu/drm/amd/display/dc/dml/dcn30/display_mode_vba_30.c create mode 100644 drivers/gpu/drm/amd/display/dc/dml/dcn30/display_mode_vba_30.h create mode 100644 drivers/gpu/drm/amd/display/dc/dml/dcn30/display_rq_dlg_calc_30.c create mode 100644 drivers/gpu/drm/amd/display/dc/dml/dcn30/display_rq_dlg_calc_30.h create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/dcn30/hw_factory_dcn30.c create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/dcn30/hw_factory_dcn30.h create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/dcn30/hw_translate_dcn30.c create mode 100644 drivers/gpu/drm/amd/display/dc/gpio/dcn30/hw_translate_dcn30.h create mode 100644 drivers/gpu/drm/amd/display/dc/irq/dcn30/irq_service_dcn30.c create mode 100644 drivers/gpu/drm/amd/display/dc/irq/dcn30/irq_service_dcn30.h delete mode 100644 drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd_dal.h delete mode 100644 drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd_vbios.h delete mode 100644 drivers/gpu/drm/amd/display/dmub/inc/dmub_fw_meta.h delete mode 100644 drivers/gpu/drm/amd/display/dmub/inc/dmub_gpint_cmd.h delete mode 100644 drivers/gpu/drm/amd/display/dmub/inc/dmub_rb.h delete mode 100644 drivers/gpu/drm/amd/display/dmub/inc/dmub_types.h create mode 100644 drivers/gpu/drm/amd/display/dmub/src/dmub_dcn30.c create mode 100644 drivers/gpu/drm/amd/display/dmub/src/dmub_dcn30.h create mode 100644 drivers/gpu/drm/amd/display/modules/color/color_table.c create mode 100644 drivers/gpu/drm/amd/display/modules/color/color_table.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/athub/athub_2_1_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/athub/athub_2_1_0_sh_mask.h create mode 100755 drivers/gpu/drm/amd/include/asic_reg/dcn/dcn_3_0_0_offset.h create mode 100755 drivers/gpu/drm/amd/include/asic_reg/dcn/dcn_3_0_0_sh_mask.h create mode 100755 drivers/gpu/drm/amd/include/asic_reg/dcn/dpcs_3_0_0_offset.h create mode 100755 drivers/gpu/drm/amd/include/asic_reg/dcn/dpcs_3_0_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/gc/gc_10_3_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/gc/gc_10_3_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/gc/gc_10_3_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/uvd/uvd_3_1_d.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/uvd/uvd_3_1_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vcn/vcn_3_0_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vcn/vcn_3_0_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/ivsrcid/sdma2/irqsrcs_sdma2_5_0.h create mode 100644 drivers/gpu/drm/amd/include/ivsrcid/sdma3/irqsrcs_sdma3_5_0.h create mode 100644 drivers/gpu/drm/amd/include/sienna_cichlid_ip_offset.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu11_driver_if_sienna_cichlid.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu_v11_0_7_ppsmc.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu_v11_0_7_pptable.h create mode 100644 drivers/gpu/drm/amd/powerplay/sienna_cichlid_ppt.c create mode 100644 drivers/gpu/drm/amd/powerplay/sienna_cichlid_ppt.h delete mode 100644 drivers/gpu/drm/amd/powerplay/vega20_ppt.c delete mode 100644 drivers/gpu/drm/amd/powerplay/vega20_ppt.h By the way - the last try was a good one, but it also shows the follwoing warnings triggered by the monitor off/on events: [Di Feb 16 18:53:41 2021] [drm:mod_hdcp_add_display_to_topology] *ERROR* Failed to add display topology, DTM TA is not initialized. [Di Feb 16 18:53:41 2021] [drm] [Link 0] WARNING MOD_HDCP_STATUS_FAILURE IN STATE HDCP_UNINITIALIZED STAY COUNT 0 FYI - also the last versions 5.10.17 and 5.11.0 are affected: Do Feb 18 18:05:34 2021] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting [Do Feb 18 18:05:34 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B200 (len 3615, WS 8, PS 0) @ 0xB34E [Do Feb 18 18:05:34 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B0F4 (len 268, WS 4, PS 0) @ 0xB147 [Do Feb 18 18:05:34 2021] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! Until 5.10.19 the issue is still persistent, but the screen recovers after a while. Bisection result can found in comment 9. !!!ATTENTION!!! BUT with kernel 5.11.0 to 5.11.2 the screen freezes after showing the content. In addition the keyboard seems also to be affected (only Magic SysRq keys working - but no screens witching). After reboot I could observer the old kernel messages from the crash: Feb 27 17:46:35 localhost kernel: [ 281.048286] [drm:drm_atomic_helper_wait_for_flip_done] *ERROR* [CRTC:67:crtc-0] flip_done timed out Feb 27 17:46:35 localhost kernel: [ 281.560277] [drm:amdgpu_dm_atomic_check] *ERROR* [CRTC:67:crtc-0] hw_done or flip_done timed out Feb 27 17:46:45 localhost kernel: [ 291.800273] [drm:drm_atomic_helper_wait_for_dependencies] *ERROR* [CRTC:67:crtc-0] flip_done timed out Feb 27 17:46:56 localhost kernel: [ 302.040411] [drm:drm_atomic_helper_wait_for_dependencies] *ERROR* [PLANE:55:plane-3] flip_done timed out Feb 27 17:46:56 localhost kernel: [ 302.124826] ------------[ cut here ]------------ Feb 27 17:46:56 localhost kernel: [ 302.124832] WARNING: CPU: 7 PID: 588 at amdgpu_dm_atomic_commit_tail+0x256a/0x25f0 Feb 27 17:46:56 localhost kernel: [ 302.124843] Modules linked in: snd_seq_dummy snd_hrtimer vmw_vsock_vmci_transport vsock vmw_vmci si2157 si2168 m88rs6000t a8293 cx25840 binfmt_misc nls_iso8859_1 wmi_bmof snd_hda_codec_hdmi snd_hda_intel snd_intel_dspcfg cx23885 snd_hda_codec tveeprom amd64_edac_mod snd_hwdep edac_mce_amd altera_ci snd_hda_core cx2341x tda18271 kvm_amd snd_seq_midi snd_pcm snd_seq_midi_event kvm altera_stapl snd_rawmidi rc_core videobuf2_dvb crct10dif_pclmul joydev videobuf2_dma_sg ghash_clmulni_intel m88ds3103 snd_seq i2c_mux dvb_core snd_seq_device rapl videobuf2_vmalloc videobuf2_memops snd_timer videobuf2_v4l2 videobuf2_common k10temp snd videodev efi_pstore mc soundcore ccp wmi video nf_log_ipv6 xt_hl ip6_tables ip6t_rt nf_log_ipv4 nf_log_common xt_LOG nft_limit xt_limit xt_addrtype xt_tcpudp xt_conntrack nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 nft_compat nft_counter sch_fq_codel nct6775 hwmon_vid nf_tables lm92 nfnetlink lm83 ip_tables x_tables autofs4 raid10 raid1 raid0 multipath linear Feb 27 17:46:56 localhost kernel: [ 302.124937] hid_generic usbhid hid r8169 crc32_pclmul i2c_piix4 xhci_pci realtek e1000e ahci xhci_pci_renesas libahci gpio_amdpt gpio_generic Feb 27 17:46:56 localhost kernel: [ 302.124954] CPU: 7 PID: 588 Comm: kworker/7:2 Not tainted 5.11.2-aw #1 Feb 27 17:46:56 localhost kernel: [ 302.124959] Hardware name: To Be Filled By O.E.M. To Be Filled By O.E.M./B550M Pro4, BIOS P1.70 12/01/2020 Feb 27 17:46:56 localhost kernel: [ 302.124962] Workqueue: events dm_irq_work_func Feb 27 17:46:56 localhost kernel: [ 302.124968] RIP: 0010:amdgpu_dm_atomic_commit_tail+0x256a/0x25f0 Feb 27 17:46:56 localhost kernel: [ 302.124973] Code: a0 fd ff ff 01 c7 85 9c fd ff ff 37 00 00 00 c7 85 a4 fd ff ff 20 00 00 00 e8 f2 4a 13 00 e9 da fa ff ff 0f 0b e9 2a f9 ff ff <0f> 0b e9 79 f9 ff ff 0f 0b 0f 0b e9 8f f9 ff ff 49 8b 06 41 0f b6 Feb 27 17:46:56 localhost kernel: [ 302.124976] RSP: 0018:ffff9d9e00b8ba48 EFLAGS: 00010002 Feb 27 17:46:56 localhost kernel: [ 302.124980] RAX: 0000000000000002 RBX: 0000000000000005 RCX: ffff92630167e118 Feb 27 17:46:56 localhost kernel: [ 302.124982] RDX: 0000000000000001 RSI: 0000000000000297 RDI: ffff926304e80188 Feb 27 17:46:56 localhost kernel: [ 302.124985] RBP: ffff9d9e00b8bd48 R08: 0000000000000005 R09: 0000000000000000 Feb 27 17:46:56 localhost kernel: [ 302.124987] R10: ffff9d9e00b8b998 R11: ffff9d9e00b8b99c R12: 0000000000000287 Feb 27 17:46:56 localhost kernel: [ 302.124989] R13: ffff92631f003000 R14: ffff92630167e000 R15: ffff92630f5eb400 Feb 27 17:46:56 localhost kernel: [ 302.124992] FS: 0000000000000000(0000) GS:ffff9271af3c0000(0000) knlGS:0000000000000000 Feb 27 17:46:56 localhost kernel: [ 302.124995] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 Feb 27 17:46:56 localhost kernel: [ 302.124997] CR2: 00007f02dc01f018 CR3: 0000000f9ee10000 CR4: 0000000000350ee0 Feb 27 17:46:56 localhost kernel: [ 302.125000] Call Trace: Feb 27 17:46:56 localhost kernel: [ 302.125007] ? irq_work_queue+0x3a/0x50 Feb 27 17:46:56 localhost kernel: [ 302.125013] ? vprintk_emit+0x12a/0x240 Feb 27 17:46:56 localhost kernel: [ 302.125015] commit_tail+0x99/0x130 Feb 27 17:46:56 localhost kernel: [ 302.125015] drm_atomic_helper_commit+0x123/0x150 Feb 27 17:46:56 localhost kernel: [ 302.125015] drm_atomic_commit+0x4a/0x50 Feb 27 17:46:56 localhost kernel: [ 302.125015] dm_restore_drm_connector_state+0xf3/0x170 Feb 27 17:46:56 localhost kernel: [ 302.125015] handle_hpd_irq+0x11a/0x150 Feb 27 17:46:56 localhost kernel: [ 302.125015] dm_irq_work_func+0x4e/0x60 Feb 27 17:46:56 localhost kernel: [ 302.125015] process_one_work+0x217/0x3e0 Feb 27 17:46:56 localhost kernel: [ 302.125015] worker_thread+0x50/0x3f0 Feb 27 17:46:56 localhost kernel: [ 302.125015] ? rescuer_thread+0x390/0x390 Feb 27 17:46:56 localhost kernel: [ 302.125015] kthread+0x145/0x170 Feb 27 17:46:56 localhost kernel: [ 302.125015] ? __kthread_bind_mask+0x70/0x70 Feb 27 17:46:56 localhost kernel: [ 302.125015] ret_from_fork+0x22/0x30 Feb 27 17:46:56 localhost kernel: [ 302.125015] ---[ end trace 9496598019bd6508 ]--- Feb 27 17:46:56 localhost kernel: [ 302.125015] ------------[ cut here ]------------ Feb 27 17:46:56 localhost kernel: [ 302.125015] WARNING: CPU: 7 PID: 588 at amdgpu_dm_atomic_commit_tail+0x2573/0x25f0 Feb 27 17:46:56 localhost kernel: [ 302.125015] Modules linked in: snd_seq_dummy snd_hrtimer vmw_vsock_vmci_transport vsock vmw_vmci si2157 si2168 m88rs6000t a8293 cx25840 binfmt_misc nls_iso8859_1 wmi_bmof snd_hda_codec_hdmi snd_hda_intel snd_intel_dspcfg cx23885 snd_hda_codec tveeprom amd64_edac_mod snd_hwdep edac_mce_amd altera_ci snd_hda_core cx2341x tda18271 kvm_amd snd_seq_midi snd_pcm snd_seq_midi_event kvm altera_stapl snd_rawmidi rc_core videobuf2_dvb crct10dif_pclmul joydev videobuf2_dma_sg ghash_clmulni_intel m88ds3103 snd_seq i2c_mux dvb_core snd_seq_device rapl videobuf2_vmalloc videobuf2_memops snd_timer videobuf2_v4l2 videobuf2_common k10temp snd videodev efi_pstore mc soundcore ccp wmi video nf_log_ipv6 xt_hl ip6_tables ip6t_rt nf_log_ipv4 nf_log_common xt_LOG nft_limit xt_limit xt_addrtype xt_tcpudp xt_conntrack nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 nft_compat nft_counter sch_fq_codel nct6775 hwmon_vid nf_tables lm92 nfnetlink lm83 ip_tables x_tables autofs4 raid10 raid1 raid0 multipath linear Feb 27 17:46:56 localhost kernel: [ 302.125015] hid_generic usbhid hid r8169 crc32_pclmul i2c_piix4 xhci_pci realtek e1000e ahci xhci_pci_renesas libahci gpio_amdpt gpio_generic Feb 27 17:46:56 localhost kernel: [ 302.125015] CPU: 7 PID: 588 Comm: kworker/7:2 Tainted: G W 5.11.2-aw #1 Feb 27 17:46:56 localhost kernel: [ 302.125015] Hardware name: To Be Filled By O.E.M. To Be Filled By O.E.M./B550M Pro4, BIOS P1.70 12/01/2020 Feb 27 17:46:56 localhost kernel: [ 302.125015] Workqueue: events dm_irq_work_func Feb 27 17:46:56 localhost kernel: [ 302.125015] RIP: 0010:amdgpu_dm_atomic_commit_tail+0x2573/0x25f0 Feb 27 17:46:56 localhost kernel: [ 302.125015] Code: ff ff 37 00 00 00 c7 85 a4 fd ff ff 20 00 00 00 e8 f2 4a 13 00 e9 da fa ff ff 0f 0b e9 2a f9 ff ff 0f 0b e9 79 f9 ff ff 0f 0b <0f> 0b e9 8f f9 ff ff 49 8b 06 41 0f b6 8e 2d 01 00 00 48 c7 c6 50 Feb 27 17:46:56 localhost kernel: [ 302.125015] RSP: 0018:ffff9d9e00b8ba48 EFLAGS: 00010082 Feb 27 17:46:56 localhost kernel: [ 302.125015] RAX: 0000000000000001 RBX: 0000000000000005 RCX: ffff92630167e118 Feb 27 17:46:56 localhost kernel: [ 302.125015] RDX: 0000000000000001 RSI: 0000000000000297 RDI: ffff926304e80188 Feb 27 17:46:56 localhost kernel: [ 302.125015] RBP: ffff9d9e00b8bd48 R08: 0000000000000005 R09: 0000000000000000 Feb 27 17:46:56 localhost kernel: [ 302.125015] R10: ffff9d9e00b8b998 R11: ffff9d9e00b8b99c R12: 0000000000000287 Feb 27 17:46:56 localhost kernel: [ 302.125015] R13: ffff92631f003000 R14: ffff92630167e000 R15: ffff92630f5eb400 Feb 27 17:46:56 localhost kernel: [ 302.125015] FS: 0000000000000000(0000) GS:ffff9271af3c0000(0000) knlGS:0000000000000000 Feb 27 17:46:56 localhost kernel: [ 302.125015] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 Feb 27 17:46:56 localhost kernel: [ 302.125015] CR2: 00007f02dc01f018 CR3: 0000000f9ee10000 CR4: 0000000000350ee0 Feb 27 17:46:56 localhost kernel: [ 302.125015] Call Trace: Feb 27 17:46:56 localhost kernel: [ 302.125015] ? irq_work_queue+0x3a/0x50 Feb 27 17:46:56 localhost kernel: [ 302.125015] ? vprintk_emit+0x12a/0x240 Feb 27 17:46:56 localhost kernel: [ 302.125015] commit_tail+0x99/0x130 Feb 27 17:46:56 localhost kernel: [ 302.125015] drm_atomic_helper_commit+0x123/0x150 Feb 27 17:46:56 localhost kernel: [ 302.125015] drm_atomic_commit+0x4a/0x50 Feb 27 17:46:56 localhost kernel: [ 302.125015] dm_restore_drm_connector_state+0xf3/0x170 Feb 27 17:46:56 localhost kernel: [ 302.125015] handle_hpd_irq+0x11a/0x150 Feb 27 17:46:56 localhost kernel: [ 302.125015] dm_irq_work_func+0x4e/0x60 Feb 27 17:46:56 localhost kernel: [ 302.125015] process_one_work+0x217/0x3e0 Feb 27 17:46:56 localhost kernel: [ 302.125015] worker_thread+0x50/0x3f0 Feb 27 17:46:56 localhost kernel: [ 302.125015] ? rescuer_thread+0x390/0x390 Feb 27 17:46:56 localhost kernel: [ 302.125015] kthread+0x145/0x170 Feb 27 17:46:56 localhost kernel: [ 302.125015] ? __kthread_bind_mask+0x70/0x70 Feb 27 17:46:56 localhost kernel: [ 302.125015] ret_from_fork+0x22/0x30 Feb 27 17:46:56 localhost kernel: [ 302.125015] ---[ end trace 9496598019bd6509 ]--- Back to normal regression in 5.11.3 (bisection in comment 9). Current state: until 5.10.20 - 2x errors and suspended screen for 2x20sec from 5.11.0 to 5.11.2 - freezing !!! from 5.11.3 - back to 2x errors and suspended screen for 2x20sec Error output from 5.11.3: [Sa Mär 6 17:34:08 2021] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting [Sa Mär 6 17:34:08 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B228 (len 3608, WS 8, PS 0) @ 0xB376 [Sa Mär 6 17:34:08 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B11C (len 268, WS 4, PS 0) @ 0xB16F [Sa Mär 6 17:34:08 2021] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! [Sa Mär 6 17:34:09 2021] [drm] amdgpu_dm_irq_schedule_work FAILED src 2 ... I have make a comparison with a second full AMD System: A) Ryzen 7 PRO 4750G APU (with build in Vega20) - Renoir B) Ryzen Threadripper 1900X with dedicated Vega64 GPU Both systems have installed the same OS (Kubuntu 20.10 with latest updates), same Xorg configuration (because both have a Vega-GPU), same User IO (monitor, keyboard and mouse) and running with the same mainline Kernel 5.11.11 (similar .config file). - Only my System A) is reproducible infected with the atombios errors (see comments above) and with the two times monitor blackout of each 20sec - after triggering the issue with simple putting the monitor off and on again (after waiting some seconds). - Because both systems have a vega gpu and using the same driver - it seem to be a Renoir APU only problem. - I also observed, that the issue can not be triggered (or is very hard to reproduce) during the sddm login screen! It seems to be, that only a regular KDE user or root session (inclusive the lock screen from a session) is affected by the issue. -> What is the difference? The usage of opengl or other 3d accelerations? I'm also tested with switching the rendering during a session, but I could not observe any difference whatever I used (opengl 2.0, 3.2 or xrendering). From now I'll only update the bug header for the latest tested (released) kernel version/subversion. Renoir and vega10 are two different GPUs. They have the same gfx core, but most other things are different (different display hardware, different multi-media hardware, etc.). The atombios errors are related to the display handling. Does it work ok if you let the desktop manager blank the displays automatically rather than physically turning them off? I setup the automatic power management for the GPU/display down to 3 minutes. After the 3 minutes the desktop manager blanks the display. I pressed a key to wake up, but the monitor stays blank for the 2x20sec and I get the error message too. With 5.11.12 kernel (still affected) there is a small new message line at the end of the other error messages: ... [Do Apr 8 11:13:05 2021] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! [Do Apr 8 11:13:07 2021] [drm] amdgpu_dm_irq_schedule_work FAILED src 2 [Do Apr 8 11:13:27 2021] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting [Do Apr 8 11:13:27 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B228 (len 3608, WS 8, PS 0) @ 0xB712 [Do Apr 8 11:13:27 2021] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B11C (len 268, WS 4, PS 0) @ 0xB16F [Do Apr 8 11:13:27 2021] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! [Do Apr 8 11:13:29 2021] [drm:dc_link_detect_helper] *ERROR* No EDID read. At least since kernel 5.12.11 I have a chance (not 100% reproducible) that the screen does not recover! Keyboard partially not disabled, e.g. num-lock and caps-lock not working, but magic SysRq key shortcuts still working. Here are the last kernel messages (5.12.12) after the screens keeps black (did not recover).: Jun 23 19:31:24 localhost kernel: [255985.517110] [drm] perform_link_training_with_retries: Link training attempt 1 of 4 failed Jun 23 19:31:45 localhost kernel: [256006.097054] [drm:atom_op_jump] *ERROR* atombios stuck in loop for more than 20secs aborting Jun 23 19:31:45 localhost kernel: [256006.097061] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B228 (len 3608, WS 8, PS 0) @ 0xB376 Jun 23 19:31:45 localhost kernel: [256006.097064] [drm:amdgpu_atom_execute_table_locked] *ERROR* atombios stuck executing B11C (len 268, WS 4, PS 0) @ 0xB16F Jun 23 19:31:45 localhost kernel: [256006.097067] [drm:dcn10_link_encoder_enable_dp_output] *ERROR* dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table! Jun 23 19:31:45 localhost kernel: [256006.108713] [drm] perform_link_training_with_retries: Link training attempt 2 of 4 failed Still broken until current 5.13.4 kernel. Once a day the screen does not recovers and I have to reboot the system. Still broken - status updated in the bug tracker header to current latest issued kernel version. With 5.14.x the issue in general still persists, but I was not able again to observe the hard crash without recovering (good) -- the screen keeps black for only 2x20 sec with the typical error messages (e.g. above in comment 16) and recovers. So I changed back the importance state in the header back to normal. I got the same problem, although the symptoms differ slightly, probably because of the monitor in use.
I use an AMD Ryzen 5 PRO 4650G with a DELL UltraSharp U2713H as display.
As I started to use this APU with Linux 5.10 I had the problems from the beginning. Here is how it looks in my logs:
> Sep 24 10:13:02 localhost kernel: [ 1200.673943] [drm]
> perform_link_training_with_retries: Link training attempt 1 of 4 failed
> Sep 24 10:13:22 localhost kernel: [ 1221.274959] [drm:atom_op_jump [amdgpu]]
> *ERROR* atombios stuck in loop for more than 20secs aborting
> Sep 24 10:13:22 localhost kernel: [ 1221.275078]
> [drm:amdgpu_atom_execute_table_locked [amdgpu]] *ERROR* atombios stuck
> executing B228 (len 3608, WS 8, PS 0) @ 0xB376
> Sep 24 10:13:22 localhost kernel: [ 1221.275171]
> [drm:amdgpu_atom_execute_table_locked [amdgpu]] *ERROR* atombios stuck
> executing B11C (len 268, WS 4, PS 0) @ 0xB16F
> Sep 24 10:13:22 localhost kernel: [ 1221.275264]
> [drm:dcn10_link_encoder_enable_dp_output [amdgpu]] *ERROR*
> dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table!
> Sep 24 10:13:22 localhost kernel: [ 1221.311894] [drm]
> perform_link_training_with_retries: Link training attempt 2 of 4 failed
> Sep 24 10:13:24 localhost kernel: [ 1222.528157] [drm]
> perform_link_training_with_retries: Link training attempt 3 of 4 failed
> Sep 24 10:13:44 localhost kernel: [ 1243.230246] [drm:atom_op_jump [amdgpu]]
> *ERROR* atombios stuck in loop for more than 20secs aborting
> Sep 24 10:13:44 localhost kernel: [ 1243.230360]
> [drm:amdgpu_atom_execute_table_locked [amdgpu]] *ERROR* atombios stuck
> executing B228 (len 3608, WS 8, PS 0) @ 0xB712
> Sep 24 10:13:44 localhost kernel: [ 1243.230453]
> [drm:amdgpu_atom_execute_table_locked [amdgpu]] *ERROR* atombios stuck
> executing B11C (len 268, WS 4, PS 0) @ 0xB16F
> Sep 24 10:13:44 localhost kernel: [ 1243.230553]
> [drm:dcn10_link_encoder_enable_dp_output [amdgpu]] *ERROR*
> dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table!
> Sep 24 10:13:44 localhost kernel: [ 1243.265681] [drm] enabling link 1
> failed: 15
> Sep 24 10:14:06 localhost kernel: [ 1265.165859] [drm:atom_op_jump [amdgpu]]
> *ERROR* atombios stuck in loop for more than 20secs aborting
> Sep 24 10:14:06 localhost kernel: [ 1265.165971]
> [drm:amdgpu_atom_execute_table_locked [amdgpu]] *ERROR* atombios stuck
> executing B228 (len 3608, WS 8, PS 0) @ 0xB712
> Sep 24 10:14:06 localhost kernel: [ 1265.166064]
> [drm:amdgpu_atom_execute_table_locked [amdgpu]] *ERROR* atombios stuck
> executing B11C (len 268, WS 4, PS 0) @ 0xB16F
> Sep 24 10:14:06 localhost kernel: [ 1265.166157]
> [drm:dcn10_link_encoder_enable_dp_output [amdgpu]] *ERROR*
> dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table!
> Sep 24 10:14:30 localhost kernel: [ 1288.496778] [drm:atom_op_jump [amdgpu]]
> *ERROR* atombios stuck in loop for more than 20secs aborting
> Sep 24 10:14:30 localhost kernel: [ 1288.496903]
> [drm:amdgpu_atom_execute_table_locked [amdgpu]] *ERROR* atombios stuck
> executing B228 (len 3608, WS 8, PS 0) @ 0xB712
> Sep 24 10:14:30 localhost kernel: [ 1288.496996]
> [drm:amdgpu_atom_execute_table_locked [amdgpu]] *ERROR* atombios stuck
> executing B11C (len 268, WS 4, PS 0) @ 0xB16F
> Sep 24 10:14:30 localhost kernel: [ 1288.497101]
> [drm:dcn10_link_encoder_enable_dp_output [amdgpu]] *ERROR*
> dcn10_link_encoder_enable_dp_output: Failed to execute VBIOS command table!
The behavior I see is the same black screen after the display gets switched of using DPMS, however it doesn't recover on its own. I have to manually push a button on the monitor to re-trigger input detection or even completely power cycle the monitor. That also doesn't work in all cases. Having the monitor configured to use DisplayPort 1.1a it works most of the time with the mentioned manual intervention (however the success ratio got worse when I switched from Linux 5.10 to 5.14), with DisplayPort 1.2 it's completely unusable, as it's like a one in a hundred chance to get the monitor to display something again.
I'd be happy to provide more information to further debug this issue.
Interessting idea with the DP 1.2 support. I have tested around with disabling the 1.2 DP support on my LCD, but this only decrease the FPS from 60Hz down to 30Hz on 4k scree-size. But also with disabled DP 1.2 support (of the LCD) and/or with decreasing the screen size to full-hd only - did not help: the issue is still persistent and is still reproducible until the latest main-line kernel 5.14.13 (5.14.14 testing in the next days). I tried a lot different configurations: A) A different cable DP-to-DP instead DP-to-miniDP (both 4k and 60Hz capable): makes no difference B) The issue can still be triggered and it recovers after 2x20 seconds with the error message above until at least 5.15.2! C) Beginning from kernel 5.15.3 it can be still triggered, BUT it did not recover any more until reboot! Also the Error message are changed to: [147325.153678] BUG: workqueue lockup - pool cpus=7 node=0 flags=0x0 nice=-20 stuck for 32s! [147325.153694] Showing busy workqueues and worker pools: [147325.153697] workqueue events: flags=0x0 [147325.153700] pwq 30: cpus=15 node=0 flags=0x0 nice=0 active=1/256 refcnt=2 [147325.153706] in-flight: 127037:dbs_work_handler [147325.153735] workqueue events_highpri: flags=0x10 [147325.153740] pwq 15: cpus=7 node=0 flags=0x0 nice=-20 active=2/256 refcnt=3 [147325.153745] in-flight: 477:dm_irq_work_func [147325.153749] pending: dm_irq_work_func [147325.153851] pool 15: cpus=7 node=0 flags=0x0 nice=-20 hung=32s workers=2 idle: 59 [147325.153856] pool 30: cpus=15 node=0 flags=0x0 nice=0 hung=0s workers=2 idle: 110635 D) from 5.15.4 to 5.15.5 it still occurs and hangs until reboot, BUT in addition I can not find any error message in the kernel log (like above) any more! Also no error message with activated debug symbols! Because the occurring can not be controlled, this makes a stable use of kernel 5.15.3 and newer impossible!!! In general the blocking bug still occurs until/with the current mainline kernel version 5.15.10. With kernel 5.15.10 I could observe additionally some new warnings messages before the "BUG: workqueue ..." errors (like last message) starting: [drm] Fence fallback timer expired on ring gfx [drm] Fence fallback timer expired on ring gfx BUG: workqueue lockup - pool cpus=7 node=0 flags=0x0 nice=-20 stuck for 47s! Showing busy workqueues and worker pools: ... BUT I found a new hardware-patch solution! In my case the monitor accepts only over the DP-to-DP link connection 4K@60Hz. Over a HDMI-to-HDMI (same computer and monitor) I got only the 4K@30Hz (not a cable limitation, it is a monitor limit). But if I connect both cables at the same time, means DP-to-DP 4K@60Hz, and in addition a HDMI-to-HDMI cable (but this screen connection disabled from the desktop session control manager) - I could avoid the black screen completely (without any limitations and stable over reboots)!!! -> In this double cable configuration (HDMI disabled) the screen (DP connection) always recovers after some seconds (no hung up and no 2x20sec delay) - I was not able to trigger the error behaviour any more and I could also not observe any of the above error messages. -> But with this stable double cable configuration I observe some new warning messages (more than one times): [drm] Unknown EDID CEA parser results ... Maybe this helps a little bit for progress ... If someone like, I could make more tests ... I have observed this as well on a 5.15.32 kernel. The system is equipped with an AMD Threadripper 3970X and 2 x LG HDMI displays connected via DP (4K@60Hz). The error happens when powering-up the monitors after a long power-down period.
>[122427.564568] amdgpu 0000:03:00.0: [drm] Cannot find any crtc or sizes
>[122427.603599] amdgpu 0000:03:00.0: [drm] Cannot find any crtc or sizes
>[122427.954560] [drm] fb mappable at 0xC0E00000
>[122427.954563] [drm] vram apper at 0xC0000000
>[122427.954563] [drm] size 33177600
>[122427.954564] [drm] fb depth is 24
>[122427.954564] [drm] pitch is 15360
>[122427.954625] fbcon: amdgpudrmfb (fb0) is primary device
>[122427.954759] Console: switching to colour frame buffer device 480x135
>[122427.954763] amdgpu 0000:03:00.0: [drm] fb0: amdgpudrmfb frame buffer
>device
>[122482.729791] [drm:atom_op_jump [amdgpu]] *ERROR* atombios stuck in loop for
>>more than 20secs aborting
>[122482.729839] [drm:amdgpu_atom_execute_table_locked [amdgpu]] *ERROR*
>atombios stuck executing C220 (len 62, WS 0, PS 0) @ 0xC23C
Ctrl-Alt-F1 and restarting X (i.e., the login manager) is sufficient to bring the system back into a useable state.
6.0.12 kernel, the error still persists on my integrated vega gpu. Sometimes it's just stuck about 30-40 seconds and then I can use my PC normally like nothing happened, but usually have to do hard reboot. |