dcn10_get_dig_frontend problem like this fixed in "drm/amd/display: Add get_dig_frontend implementation for DCEx"

From: Andreas Hartmann
Date: Wed Jan 13 2021 - 05:51:19 EST


Hello,

I'm facing probably a similar problem on this machine during resume after s2ram with linux 5.10.7 (see attached file "trace").

The error happens in drivers/gpu/drm/amd/amdgpu/../display/dc/dcn10/dcn10_link_encoder.c:483 (see ^^^^-line):

unsigned int dcn10_get_dig_frontend(struct link_encoder *enc)
{
struct dcn10_link_encoder *enc10 = TO_DCN10_LINK_ENC(enc);
int32_t value;
enum engine_id result;

REG_GET(DIG_BE_CNTL, DIG_FE_SOURCE_SELECT, &value);

switch (value) {
case DCN10_DIG_FE_SOURCE_SELECT_DIGA:
result = ENGINE_ID_DIGA;
break;
case DCN10_DIG_FE_SOURCE_SELECT_DIGB:
result = ENGINE_ID_DIGB;
break;
case DCN10_DIG_FE_SOURCE_SELECT_DIGC:
result = ENGINE_ID_DIGC;
break;
case DCN10_DIG_FE_SOURCE_SELECT_DIGD:
result = ENGINE_ID_DIGD;
break;
case DCN10_DIG_FE_SOURCE_SELECT_DIGE:
result = ENGINE_ID_DIGE;
break;
case DCN10_DIG_FE_SOURCE_SELECT_DIGF:
result = ENGINE_ID_DIGF;
break;
case DCN10_DIG_FE_SOURCE_SELECT_DIGG:
result = ENGINE_ID_DIGG;
break;
default:
// invalid source select DIG
ASSERT(false);
result = ENGINE_ID_UNKNOWN;
^^^^^^^^^^^^^^^^^^^^^^^^^^^
}

return result;
}


About the machine:
It's a notebook with two GPUs. AMD is the primary GPU - the secondary GPU (Nvidia) is unused (nouveau is not loaded at all - the proprietary driver isn't even installed)

05:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Picasso (rev c1) (prog-if 00 [VGA controller])
Subsystem: ASUSTeK Computer Inc. Device 18f1
Flags: bus master, fast devsel, latency 0, IRQ 24
Memory at e0000000 (64-bit, prefetchable) [size=256M]
Memory at f0000000 (64-bit, prefetchable) [size=2M]
I/O ports at c000 [size=256]
Memory at f7500000 (32-bit, non-prefetchable) [size=512K]
Capabilities: [48] Vendor Specific Information: Len=08 <?>
Capabilities: [50] Power Management version 3
Capabilities: [64] Express Legacy Endpoint, MSI 00
Capabilities: [a0] MSI: Enable- Count=1/4 Maskable- 64bit+
Capabilities: [c0] MSI-X: Enable+ Count=3 Masked-
Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
Capabilities: [200] #15
Capabilities: [270] #19
Capabilities: [2a0] Access Control Services
Capabilities: [2b0] Address Translation Service (ATS)
Capabilities: [2c0] Page Request Interface (PRI)
Capabilities: [2d0] Process Address Space ID (PASID)
Capabilities: [320] Latency Tolerance Reporting
Kernel driver in use: amdgpu
Kernel modules: amdgpu

01:00.0 VGA compatible controller: NVIDIA Corporation TU117M [GeForce GTX 1650 Mobile / Max-Q] (rev a1) (prog-if 00 [VGA controller])
Subsystem: ASUSTeK Computer Inc. Device 109f
Flags: fast devsel, IRQ 255
Memory at f6000000 (32-bit, non-prefetchable) [disabled] [size=16M]
Memory at c0000000 (64-bit, prefetchable) [disabled] [size=256M]
Memory at d0000000 (64-bit, prefetchable) [disabled] [size=32M]
I/O ports at f000 [disabled] [size=128]
Expansion ROM at f7000000 [disabled] [size=512K]
Capabilities: [60] Power Management version 3
Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [78] Express Legacy Endpoint, MSI 00
Capabilities: [100] Virtual Channel
Capabilities: [250] Latency Tolerance Reporting
Capabilities: [258] L1 PM Substates
Capabilities: [128] Power Budgeting <?>
Capabilities: [420] Advanced Error Reporting
Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
Capabilities: [900] #19
Capabilities: [bb0] #15
Kernel modules: nouveau

CPU: AMD Ryzen 7 3750H with Radeon Vega Mobile Gfx

Could you please fix this problem, too?
Please CC me for any answer because I'm not regularly reading the kernel mailing list.


Thanks
Andreas Hartmann
2021-01-13T10:52:02.135202+01:00 localhost kernel: [ 155.645178] ------------[ cut here ]------------
2021-01-13T10:52:02.135204+01:00 localhost kernel: [ 155.645330] WARNING: CPU: 6 PID: 4116 at ../drivers/gpu/drm/amd/amdgpu/../display/dc/dcn10/dcn10_link_encoder.c:483 dcn10_get_dig_frontend+0x65/0xb0 [amdgpu]
2021-01-13T10:52:02.135205+01:00 localhost kernel: [ 155.645331] Modules linked in: fuse iptable_mangle xt_TCPMSS xt_tcpudp bpfilter ip_tables x_tables af_packet dmi_sysfs uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_common videodev mc msr snd_hda_codec_realtek snd_hda_codec_generic ledtrig_audio snd_hda_codec_hdmi snd_hda_intel snd_intel_dspcfg soundwire_intel soundwire_generic_allocation soundwire_cadence nls_iso8859_1 edac_mce_amd nls_cp437 snd_hda_codec vfat kvm_amd fat snd_hda_core snd_hwdep kvm soundwire_bus snd_soc_core snd_compress snd_pcm_dmaengine irqbypass pcspkr snd_pcm efi_pstore asus_nb_wmi snd_timer asus_wmi sparse_keymap wmi_bmof r8169 snd realtek sp5100_tco mdio_devres joydev k10temp soundcore i2c_piix4 libphy thermal ac asus_wireless tiny_power_button acpi_cpufreq btrfs blake2b_generic libcrc32c xor raid6_pq dm_crypt algif_skcipher af_alg rt5572sta(O) cfg80211 rfkill hid_multitouch hid_generic amdgpu iommu_v2 gpu_sched ttm i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops cec
2021-01-13T10:52:02.135210+01:00 localhost kernel: [ 155.645389] crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel aesni_intel glue_helper xhci_pci crypto_simd xhci_pci_renesas rc_core xhci_hcd cryptd nvme drm usbcore serio_raw ccp nvme_core wmi video battery i2c_hid button sg dm_multipath dm_mod scsi_dh_rdac scsi_dh_emc scsi_dh_alua efivarfs
2021-01-13T10:52:02.135211+01:00 localhost kernel: [ 155.645417] CPU: 6 PID: 4116 Comm: kworker/u32:35 Tainted: G O 5.10.7-3.1-default #1 openSUSE Tumbleweed (unreleased)
2021-01-13T10:52:02.135212+01:00 localhost kernel: [ 155.645432] Hardware name: ASUSTeK COMPUTER INC. TUF Gaming FX505DT_FX505DT/FX505DT, BIOS FX505DT.310 12/24/2019
2021-01-13T10:52:02.135214+01:00 localhost kernel: [ 155.645442] Workqueue: events_unbound async_run_entry_fn
2021-01-13T10:52:02.135215+01:00 localhost kernel: [ 155.645512] RIP: 0010:dcn10_get_dig_frontend+0x65/0xb0 [amdgpu]
2021-01-13T10:52:02.135215+01:00 localhost kernel: [ 155.645515] Code: 00 8b 54 24 04 83 fa 08 74 59 7e 3a 83 fa 20 b8 05 00 00 00 74 1b 83 fa 40 b8 06 00 00 00 74 11 83 fa 10 b8 04 00 00 00 74 07 <0f> 0b b8 ff ff ff ff 48 8b 74 24 08 65 48 33 34 25 28 00 00 00 75
2021-01-13T10:52:02.135216+01:00 localhost kernel: [ 155.645516] RSP: 0018:ffffb2c442507878 EFLAGS: 00010297
2021-01-13T10:52:02.135217+01:00 localhost kernel: [ 155.645517] RAX: 0000000000000000 RBX: ffff992e09d20000 RCX: 0000000000000008
2021-01-13T10:52:02.135218+01:00 localhost kernel: [ 155.645518] RDX: 0000000000000000 RSI: 000000000000556f RDI: ffff992e11140000
2021-01-13T10:52:02.135219+01:00 localhost kernel: [ 155.645519] RBP: ffff992e8a5e01c0 R08: ffffb2c44250787c R09: 0000000000000001
2021-01-13T10:52:02.135221+01:00 localhost kernel: [ 155.645520] R10: 0000000000000004 R11: 0000000000000004 R12: ffffb2c4425078a8
2021-01-13T10:52:02.135222+01:00 localhost kernel: [ 155.645520] R13: 0000000000000000 R14: ffff992e09bae800 R15: ffff992e8a5e0000
2021-01-13T10:52:02.135223+01:00 localhost kernel: [ 155.645522] FS: 0000000000000000(0000) GS:ffff992eb8b80000(0000) knlGS:0000000000000000
2021-01-13T10:52:02.135223+01:00 localhost kernel: [ 155.645523] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
2021-01-13T10:52:02.135224+01:00 localhost kernel: [ 155.645523] CR2: 0000000000000000 CR3: 0000000162182000 CR4: 00000000003506e0
2021-01-13T10:52:02.135225+01:00 localhost kernel: [ 155.645524] Call Trace:
2021-01-13T10:52:02.135226+01:00 localhost kernel: [ 155.645600] dc_commit_state+0x856/0xa60 [amdgpu]
2021-01-13T10:52:02.135227+01:00 localhost kernel: [ 155.645669] amdgpu_dm_atomic_commit_tail+0x540/0x2360 [amdgpu]
2021-01-13T10:52:02.135229+01:00 localhost kernel: [ 155.645675] ? ttm_bo_release+0xea/0x320 [ttm]
2021-01-13T10:52:02.135230+01:00 localhost kernel: [ 155.645678] ? dma_resv_init+0x1c/0x40
2021-01-13T10:52:02.135231+01:00 localhost kernel: [ 155.645681] ? ttm_bo_move_accel_cleanup+0x1fa/0x400 [ttm]
2021-01-13T10:52:02.135232+01:00 localhost kernel: [ 155.645728] ? amdgpu_bo_move+0x137/0x290 [amdgpu]
2021-01-13T10:52:02.135233+01:00 localhost kernel: [ 155.645730] ? ttm_bo_handle_move_mem+0x9f/0x420 [ttm]
2021-01-13T10:52:02.135234+01:00 localhost kernel: [ 155.645733] ? ttm_bo_validate+0x132/0x150 [ttm]
2021-01-13T10:52:02.135235+01:00 localhost kernel: [ 155.645779] ? amdgpu_bo_pin_restricted+0x281/0x2a0 [amdgpu]
2021-01-13T10:52:02.135260+01:00 localhost kernel: [ 155.645782] ? ttm_bo_move_to_lru_tail+0x28/0xd0 [ttm]
2021-01-13T10:52:02.135262+01:00 localhost kernel: [ 155.645849] ? dm_plane_helper_prepare_fb+0x217/0x2c0 [amdgpu]
2021-01-13T10:52:02.135263+01:00 localhost kernel: [ 155.645858] commit_tail+0x94/0x120 [drm_kms_helper]
2021-01-13T10:52:02.135264+01:00 localhost kernel: [ 155.645865] drm_atomic_helper_commit+0x107/0x130 [drm_kms_helper]
2021-01-13T10:52:02.135265+01:00 localhost kernel: [ 155.645871] drm_atomic_helper_commit_duplicated_state+0xc9/0xe0 [drm_kms_helper]
2021-01-13T10:52:02.135266+01:00 localhost kernel: [ 155.645877] drm_atomic_helper_resume+0x92/0x160 [drm_kms_helper]
2021-01-13T10:52:02.135267+01:00 localhost kernel: [ 155.645944] dm_resume+0x461/0x530 [amdgpu]
2021-01-13T10:52:02.135268+01:00 localhost kernel: [ 155.645989] amdgpu_device_ip_resume_phase2+0x52/0xc0 [amdgpu]
2021-01-13T10:52:02.135269+01:00 localhost kernel: [ 155.646034] amdgpu_device_resume+0xce/0x390 [amdgpu]
2021-01-13T10:52:02.135270+01:00 localhost kernel: [ 155.646038] ? pci_pm_thaw+0x90/0x90
2021-01-13T10:52:02.135271+01:00 localhost kernel: [ 155.646040] dpm_run_callback+0x4b/0x130
2021-01-13T10:52:02.135272+01:00 localhost kernel: [ 155.646042] device_resume+0x108/0x210
2021-01-13T10:52:02.135272+01:00 localhost kernel: [ 155.646043] ? dpm_show_time+0xd0/0xd0
2021-01-13T10:52:02.135273+01:00 localhost kernel: [ 155.646045] async_resume+0x19/0x40
2021-01-13T10:52:02.135275+01:00 localhost kernel: [ 155.646046] async_run_entry_fn+0x37/0x140
2021-01-13T10:52:02.135276+01:00 localhost kernel: [ 155.646048] process_one_work+0x1fb/0x3c0
2021-01-13T10:52:02.135277+01:00 localhost kernel: [ 155.646050] worker_thread+0x2d/0x3e0
2021-01-13T10:52:02.135278+01:00 localhost kernel: [ 155.646051] ? process_one_work+0x3c0/0x3c0
2021-01-13T10:52:02.135279+01:00 localhost kernel: [ 155.646052] kthread+0x117/0x130
2021-01-13T10:52:02.135280+01:00 localhost kernel: [ 155.646054] ? kthread_park+0x90/0x90
2021-01-13T10:52:02.135281+01:00 localhost kernel: [ 155.646056] ret_from_fork+0x22/0x30
2021-01-13T10:52:02.135282+01:00 localhost kernel: [ 155.646058] ---[ end trace 264f55de770aebc2 ]---