[PATCH] drm/amdgpu: Add Dell Inspiron 5575/5775 back to atpx quirk table

Kai-Heng Feng kai.heng.feng at canonical.com
Tue Jun 5 06:47:04 UTC 2018


The original issue on these laptops was about _PR3, not audio controller
prevents gfx auto suspending.

Commit 444d95f0eeef ("Partially revert: drm/amdgpu: add atpx quirk
handling (v2)") breaks these laptops:

[   29.572055] [drm:atom_op_jump [amdgpu]] *ERROR* atombios stuck in loop for more than 5secs aborting
[   29.572738] [drm:amdgpu_atom_execute_table_locked [amdgpu]] *ERROR* atombios stuck executing 7C36 (len 272, WS 0, PS 4) @ 0x7C7F
[   29.573436] [drm:amdgpu_atom_execute_table_locked [amdgpu]] *ERROR* atombios stuck executing 6444 (len 70, WS 0, PS 8) @ 0x646A
[   29.574125] [drm:amdgpu_device_resume [amdgpu]] *ERROR* amdgpu asic init failed
[   29.991377] amdgpu 0000:01:00.0: Wait for MC idle timedout !
[   30.407480] amdgpu 0000:01:00.0: Wait for MC idle timedout !
[   30.417279] [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
[   30.426550] amdgpu: [powerplay] smu not running, upload firmware again
[   30.435710] BUG: unable to handle kernel paging request at ffffa52b90080fec
[   30.436982] IP: smu7_populate_single_firmware_entry.isra.5+0x65/0xe0 [amdgpu]
[   30.438056] PGD 14e942067 P4D 14e942067 PUD 0
[   30.439280] Oops: 0002 [#1] SMP NOPTI
[   30.440339] Modules linked in: cmac bnep nls_iso8859_1 arc4 ath10k_pci ath10k_core rtsx_usb_ms memstick dell_wmi uvcvideo sparse_keymap videobuf2_vmalloc dell_laptop videobuf2_memops dell_smbios dell_wmi_descriptor videobuf2_v4l2 btusb btrtl wmi_bmof joydev dcdbas btbcm dell_smm_hwmon videobuf2_common kvm_amd btintel ath videodev snd_hda_codec_realtek snd_hda_codec_hdmi snd_hda_codec_generic cdc_acm mac80211 media bluetooth snd_hda_intel kvm snd_hda_codec snd_hwdep irqbypass snd_hda_core ecdh_generic crct10dif_pclmul snd_pcm crc32_pclmul snd_seq ghash_clmulni_intel pcbc snd_timer snd_seq_device aesni_intel cfg80211 snd aes_x86_64 soundcore input_leds crypto_simd cryptd tpm_crb hid_multitouch ucsi_acpi glue_helper typec_ucsi serio_raw typec video i2c_piix4 mac_hid dell_rbtn shpchp wmi parport_pc ppdev
[   30.445678]  lp parport autofs4 btrfs xor zstd_decompress zstd_compress xxhash raid6_pq dm_mirror dm_region_hash dm_log amdkfd amd_iommu_v2 amdgpu rtsx_usb_sdmmc rtsx_usb chash i2c_algo_bit gpu_sched drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops ttm drm r8169 ahci libahci i2c_hid mii hid
[   30.448702] CPU: 7 PID: 1021 Comm: gpu-manager Not tainted 4.16.0-rc7+ #1
[   30.450256] Hardware name: Dell Inc. Inspiron 5775/Inspiron 5775, BIOS 1.1.0 03/26/2018
[   30.451959] RIP: 0010:smu7_populate_single_firmware_entry.isra.5+0x65/0xe0 [amdgpu]
[   30.453492] RSP: 0018:ffffa50f816f3a58 EFLAGS: 00010246
[   30.455116] RAX: 000000000000008c RBX: ffffa52b90080fec RCX: 0000000000000000
[   30.456676] RDX: 0000000000000004 RSI: 0000000000000004 RDI: ffff917dfb3a5a90
[   30.458203] RBP: ffffa50f816f3aa8 R08: ffff917dfb3a5a90 R09: 0000000000033930
[   30.459727] R10: 0000000000000000 R11: 0000000000000412 R12: 0000000000000003
[   30.461246] R13: ffff917dfb194c14 R14: ffff917dfac65000 R15: 00000000000005fe
[   30.462733] FS:  00007f5248978700(0000) GS:ffff917e0edc0000(0000) knlGS:0000000000000000
[   30.464302] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   30.465830] CR2: ffffa52b90080fec CR3: 00000001358c2000 CR4: 00000000003406e0
[   30.467468] Call Trace:
[   30.469068]  smu7_request_smu_load_fw+0xa9/0x360 [amdgpu]
[   30.470630]  ? vga_switcheroo_fini_domain_pm_ops+0x20/0x20
[   30.472416]  iceland_start_smu+0x39/0x70 [amdgpu]
[   30.473492]  hwmgr_resume+0x2b/0xa0 [amdgpu]
[   30.474500]  pp_resume+0x15/0x20 [amdgpu]
[   30.475472]  amdgpu_device_ip_resume_phase2+0x58/0xb0 [amdgpu]
[   30.476431]  amdgpu_device_resume+0xd8/0x370 [amdgpu]
[   30.477379]  ? __pci_set_master+0x34/0xe0
[   30.478345]  ? vga_switcheroo_fini_domain_pm_ops+0x20/0x20
[   30.479317]  amdgpu_pmops_runtime_resume+0x76/0xa0 [amdgpu]
[   30.480265]  pci_pm_runtime_resume+0x76/0xb0
[   30.481216]  vga_switcheroo_runtime_resume+0x59/0x60
[   30.482201]  __rpm_callback+0xc4/0x200
[   30.483179]  ? vga_switcheroo_fini_domain_pm_ops+0x20/0x20
[   30.484075]  rpm_callback+0x24/0x80
[   30.485025]  ? vga_switcheroo_fini_domain_pm_ops+0x20/0x20
[   30.486005]  rpm_resume+0x499/0x6a0
[   30.486946]  __pm_runtime_resume+0x4e/0x80
[   30.487880]  pci_config_pm_runtime_get+0x53/0x60
[   30.488789]  pci_read_config+0x8f/0x280
[   30.489771]  sysfs_kf_bin_read+0x4a/0x70
[   30.490750]  kernfs_fop_read+0xa9/0x190
[   30.491648]  __vfs_read+0x37/0x160
[   30.492579]  ? security_file_permission+0x9b/0xc0
[   30.493530]  vfs_read+0x93/0x130
[   30.494445]  SyS_pread64+0x95/0xb0
[   30.495347]  do_syscall_64+0x6d/0x120
[   30.496223]  entry_SYSCALL_64_after_hwframe+0x3d/0xa2
[   30.497124] RIP: 0033:0x7f524807ea43
[   30.498032] RSP: 002b:00007ffcbd7ca258 EFLAGS: 00000246 ORIG_RAX: 0000000000000011
[   30.498972] RAX: ffffffffffffffda RBX: 0000000000000030 RCX: 00007f524807ea43
[   30.499907] RDX: 0000000000000030 RSI: 00007ffcbd7ca490 RDI: 0000000000000005
[   30.500796] RBP: 00007ffcbd7ca490 R08: 0000000000000000 R09: 0000000000000028
[   30.501776] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000005
[   30.502758] R13: 0000000000000030 R14: 00007ffcbd7ca3f8 R15: 0000000000000000
[   30.503659] Code: 83 fc 23 f3 48 ab 48 8b 06 be 0d 00 00 00 48 8b 40 20 77 0a 44 89 e1 0f b6 b1 a0 46 68 c0 4c 89 c7 ff d0 85 c0 75 3e 0f b7 45 b2 <66> 44 89 23 c7 43 0c 00 00 00 00 c7 43 10 00 00 00 00 66 89 43
[   30.504668] RIP: smu7_populate_single_firmware_entry.isra.5+0x65/0xe0 [amdgpu] RSP: ffffa50f816f3a58
[   30.505643] CR2: ffffa52b90080fec
[   30.506618] ---[ end trace b443cb7ec0f49d4f ]---

So add these IDs back to atpx quirk table.

Fixes: 444d95f0eeef ("Partially revert: drm/amdgpu: add atpx quirk handling (v2)")
Fixes: c6f5b3155fbc ("Revert "drm/amdgpu: add new device to use atpx quirk"")
Signed-off-by: Kai-Heng Feng <kai.heng.feng at canonical.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c
index 9c493e8a48a5..1b8cb076c378 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c
@@ -565,6 +565,10 @@ static const struct vga_switcheroo_handler amdgpu_atpx_handler = {
 };
 
 static const struct amdgpu_px_quirk amdgpu_px_quirk_list[] = {
+	/* Dell Inspiron 5575 */
+	{ 0x1002, 0x6900, 0x1028, 0x0812, AMDGPU_PX_QUIRK_FORCE_ATPX },
+	/* Dell Inspiron 5775 */
+	{ 0x1002, 0x6900, 0x1028, 0x0813, AMDGPU_PX_QUIRK_FORCE_ATPX },
 	{ 0, 0, 0, 0, 0 },
 };
 
-- 
2.17.0



More information about the amd-gfx mailing list