Commits on Source (32)
-
Nikita Zhandarovich authored
On the off chance that command stream passed from userspace via ioctl() call to radeon_vce_cs_parse() is weirdly crafted and first command to execute is to encode (case 0x03000001), the function in question will attempt to call radeon_vce_cs_reloc() with size argument that has not been properly initialized. Specifically, 'size' will point to 'tmp' variable before the latter had a chance to be assigned any value. Play it safe and init 'tmp' with 0, thus ensuring that radeon_vce_cs_reloc() will catch an early error in cases like these. Found by Linux Verification Center (linuxtesting.org) with static analysis tool SVACE. Fixes: 2fc5703a ("drm/radeon: check VCE relocation buffer range v3") Cc: stable@vger.kernel.org Signed-off-by:
Nikita Zhandarovich <n.zhandarovich@fintech.ru> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
David Rosca authored
1920x1088 is the maximum supported resolution. Signed-off-by:
David Rosca <david.rosca@amd.com> Acked-by:
Alex Deucher <alexander.deucher@amd.com> Reviewed-by:
Ruijing Dong <ruijing.dong@amd.com>
-
David Rosca authored
8192x8192 is the maximum supported resolution. Signed-off-by:
David Rosca <david.rosca@amd.com> Acked-by:
Alex Deucher <alexander.deucher@amd.com> Reviewed-by:
Ruijing Dong <ruijing.dong@amd.com>
-
David Rosca authored
JPEG is only supported for VCN1+. Signed-off-by:
David Rosca <david.rosca@amd.com> Acked-by:
Alex Deucher <alexander.deucher@amd.com> Reviewed-by:
Ruijing Dong <ruijing.dong@amd.com>
-
David Rosca authored
There have been multiple fixes to the video caps that are missing for SRIOV. Update the SRIOV caps with correct values. Signed-off-by:
David Rosca <david.rosca@amd.com> Acked-by:
Alex Deucher <alexander.deucher@amd.com> Reviewed-by:
Ruijing Dong <ruijing.dong@amd.com>
-
Alex Deucher authored
Leftover from the MES self tests that were removed previously. Reviewed-by:
Mukul Joshi <mukul.joshi@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
Harish Kasiviswanathan authored
Expose unique_id for gfx12 Signed-off-by:
Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com> Reviewed-by:
Alex Deucher <alexander.deucher@amd.com>
-
lijo lazar authored
XGMI v4.8.0 is not used in any SOCs. Remove the associated functions. Also, ensure get_xgmi_info callback pointer is not NULL before calling the function. Signed-off-by:
Lijo Lazar <lijo.lazar@amd.com> Reviewed-by:
Hawking Zhang <Hawking.Zhang@amd.com>
-
Emily Deng authored
Issue: In the scenario where svm_range_restore_pages is called, but svm->checkpoint_ts has not been set and the retry fault has not been drained, svm_range_unmap_from_cpu is triggered and calls svm_range_free. Meanwhile, svm_range_restore_pages continues execution and reaches svm_range_from_addr. This results in a "failed to find prange..." error, causing the page recovery to fail. How to fix: Move the timestamp check code under the protection of svm->lock. v2: Make sure all right locks are released before go out. v3: Directly goto out_unlock_svms, and return -EAGAIN. v4: Refine code. Signed-off-by:
Emily Deng <Emily.Deng@amd.com> Reviewed-by:
Felix Kuehling <felix.kuehling@amd.com>
-
Alex Deucher authored
Just use the default values. There's not need to get the value from hardware and it could cause problems if we do that at runtime and gfxoff is active. Reviewed-by:
Mukul Joshi <mukul.joshi@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
Alex Deucher authored
Just use the default values. There's not need to get the value from hardware and it could cause problems if we do that at runtime and gfxoff is active. Reviewed-by:
Mukul Joshi <mukul.joshi@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
Asad Kamal authored
Update feature list for smu_v13_0_12 to show vcn & smu deep sleep feature enable status. Signed-off-by:
Asad Kamal <asad.kamal@amd.com> Reviewed-by:
Hawking Zhang <Hawking.Zhang@amd.com> Reviewed-by:
Lijo Lazar <lijo.lazar@amd.com>
-
Harish Kasiviswanathan authored
Dequeue retry timeout controls the interval between checks for unmet conditions. On MI series, reduce this from 0x40 to 0x1 (~ 1 uS). The cost of additional bandwidth consumed by CP when polling memory shouldn't be substantial. Signed-off-by:
Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com> Reviewed-by:
: Jonathan Kim <jonathan.kim@amd.com>
-
Alex Deucher authored
Add callbacks for fan speed fetching. Closes: drm/amd#4034 Reviewed-by:
Kenneth Feng <kenneth.feng@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
Alex Deucher authored
Wire up the query. Reviewed-by:
Lijo Lazar <lijo.lazar@amd.com> Reviewed-by:
Kenneth Feng <kenneth.feng@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
lijo lazar authored
Use IP version specific xgmi speed/width for bandwidth calculation. Signed-off-by:
Lijo Lazar <lijo.lazar@amd.com> Reviewed-by:
Jonathan Kim <jonathan.kim@amd.com>
-
Alex Hung authored
This macro guard "__cplusplus" is unnecessary and should not be there. Signed-off-by:
Alex Hung <alex.hung@amd.com> Reviewed-by:
Rodrigo Siqueira <siqueira@igalia.com> Reviewed-by:
Christian König <christian.koenig@amd.com>
-
Alex Deucher authored
Wire up the query. Reviewed-by:
Lijo Lazar <lijo.lazar@amd.com> Reviewed-by:
Kenneth Feng <kenneth.feng@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
Alex Deucher authored
Wire up the query. Reviewed-by:
Lijo Lazar <lijo.lazar@amd.com> Reviewed-by:
Kenneth Feng <kenneth.feng@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
Alex Deucher authored
Make it visible for the all GC 11.x chips that support it. Reviewed-by:
Lijo Lazar <lijo.lazar@amd.com> Reviewed-by:
Kenneth Feng <kenneth.feng@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
Jay Cornwall authored
VALU instructions with SGPR source need wait states to avoid hazard with SALU using different SGPR. v2: Eliminate some hazards to reduce code explosion Signed-off-by:
Jay Cornwall <jay.cornwall@amd.com> Reviewed-by:
Lancelot Six <lancelot.six@amd.com> Acked-by:
Alex Deucher <alexander.deucher@amd.com>
-
Alex Deucher authored
Make it visible for the all GC 12.x chips that support it. Reviewed-by:
Lijo Lazar <lijo.lazar@amd.com> Reviewed-by:
Kenneth Feng <kenneth.feng@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
Alex Deucher authored
Make it visible for the all GC 9.3.0 chips that support it. Reviewed-by:
Lijo Lazar <lijo.lazar@amd.com> Reviewed-by:
Kenneth Feng <kenneth.feng@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
Emily Deng authored
Use amdgpu_sriov_multi_vf_mode to replace amdgpu_sriov_vf(adev) && !amdgpu_sriov_is_pp_one_vf(adev). Signed-off-by:
Emily Deng <Emily.Deng@amd.com> Reviewed-by:
Lijo Lazar <lijo.lazar@amd.com>
-
Emily Deng authored
In sriov multiple vf, Set CP_HQD_PQ_DOORBELL_CONTROL.DOORBELL_MODE to 1 to read WPTR from MQD. Signed-off-by:
Emily Deng <Emily.Deng@amd.com> Acked-by:
Lijo Lazar <lijo.lazar@amd.com>
-
ganglxie authored
for old asics that do not support mca translating, we just save PA for them Signed-off-by:
ganglxie <ganglxie@amd.com> Reviewed-by:
Tao Zhou <tao.zhou1@amd.com>
-
Amber Lin authored
Correct F8_MODE setting for gfx950 that was removed Fixes: 1a9dbc31 Signed-off-by:
Amber Lin <Amber.Lin@amd.com> Reviewed-by:
Harish Kasiviswanathan <Harish.Kasiviwanathan@amd.com>
-
Xiang Liu authored
Enable ACA by default for psp v13_0_6/v13_0_14. Signed-off-by:
Xiang Liu <xiang.liu@amd.com> Reviewed-by:
Hawking Zhang <Hawking.Zhang@amd.com>
-
Shaoyun Liu authored
When MES is been used , the set_hw_resource_1 API is required to initialize MES internal context correctly Signed-off-by:
Shaoyun Liu <shaoyun.liu@amd.com> Acked-by:
Alex Deucher <alexander.deucher@amd.com> Reviewed-by:
Srinivasan Shanmugam <srinivasan.shanmugam@amd.com>
-
Thadeu Cascardo authored
ctx->dmub_srv will de NULL if the ASIC does not support DMUB, which is tested in dm_dmub_sw_init. However, it will be dereferenced in dmub_hw_lock_mgr_cmd if should_use_dmub_lock returns true. This has been the case since dmub support has been added for PSR1. Fix this by checking for dmub_srv in should_use_dmub_lock. [ 37.440832] BUG: kernel NULL pointer dereference, address: 0000000000000058 [ 37.447808] #PF: supervisor read access in kernel mode [ 37.452959] #PF: error_code(0x0000) - not-present page [ 37.458112] PGD 0 P4D 0 [ 37.460662] Oops: Oops: 0000 [#1] PREEMPT SMP NOPTI [ 37.465553] CPU: 2 UID: 1000 PID: 1745 Comm: DrmThread Not tainted 6.14.0-rc1-00003-gd62e938120f0 #23 99720e1cb1e0fc4773b8513150932a07de3c6e88 [ 37.478324] Hardware name: Google Morphius/Morphius, BIOS Google_Morphius.13434.858.0 10/26/2023 [ 37.487103] RIP: 0010:dmub_hw_lock_mgr_cmd+0x77/0xb0 [ 37.492074] Code: 44 24 0e 00 00 00 00 48 c7 04 24 45 00 00 0c 40 88 74 24 0d 0f b6 02 88 44 24 0c 8b 01 89 44 24 08 85 f6 75 05 c6 44 24 0e 01 <48> 8b 7f 58 48 89 e6 ba 01 00 00 00 e8 08 3c 2a 00 65 48 8b 04 5 [ 37.510822] RSP: 0018:ffff969442853300 EFLAGS: 00010202 [ 37.516052] RAX: 0000000000000000 RBX: ffff92db03000000 RCX: ffff969442853358 [ 37.523185] RDX: ffff969442853368 RSI: 0000000000000001 RDI: 0000000000000000 [ 37.530322] RBP: 0000000000000001 R08: 00000000000004a7 R09: 00000000000004a5 [ 37.537453] R10: 0000000000000476 R11: 0000000000000062 R12: ffff92db0ade8000 [ 37.544589] R13: ffff92da01180ae0 R14: ffff92da011802a8 R15: ffff92db03000000 [ 37.551725] FS: 0000784a9cdfc6c0(0000) GS:ffff92db2af00000(0000) knlGS:0000000000000000 [ 37.559814] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 37.565562] CR2: 0000000000000058 CR3: 0000000112b1c000 CR4: 00000000003506f0 [ 37.572697] Call Trace: [ 37.575152] <TASK> [ 37.577258] ? __die_body+0x66/0xb0 [ 37.580756] ? page_fault_oops+0x3e7/0x4a0 [ 37.584861] ? exc_page_fault+0x3e/0xe0 [ 37.588706] ? exc_page_fault+0x5c/0xe0 [ 37.592550] ? asm_exc_page_fault+0x22/0x30 [ 37.596742] ? dmub_hw_lock_mgr_cmd+0x77/0xb0 [ 37.601107] dcn10_cursor_lock+0x1e1/0x240 [ 37.605211] program_cursor_attributes+0x81/0x190 [ 37.609923] commit_planes_for_stream+0x998/0x1ef0 [ 37.614722] update_planes_and_stream_v2+0x41e/0x5c0 [ 37.619703] dc_update_planes_and_stream+0x78/0x140 [ 37.624588] amdgpu_dm_atomic_commit_tail+0x4362/0x49f0 [ 37.629832] ? srso_return_thunk+0x5/0x5f [ 37.633847] ? mark_held_locks+0x6d/0xd0 [ 37.637774] ? _raw_spin_unlock_irq+0x24/0x50 [ 37.642135] ? srso_return_thunk+0x5/0x5f [ 37.646148] ? lockdep_hardirqs_on+0x95/0x150 [ 37.650510] ? srso_return_thunk+0x5/0x5f [ 37.654522] ? _raw_spin_unlock_irq+0x2f/0x50 [ 37.658883] ? srso_return_thunk+0x5/0x5f [ 37.662897] ? wait_for_common+0x186/0x1c0 [ 37.666998] ? srso_return_thunk+0x5/0x5f [ 37.671009] ? drm_crtc_next_vblank_start+0xc3/0x170 [ 37.675983] commit_tail+0xf5/0x1c0 [ 37.679478] drm_atomic_helper_commit+0x2a2/0x2b0 [ 37.684186] drm_atomic_commit+0xd6/0x100 [ 37.688199] ? __cfi___drm_printfn_info+0x10/0x10 [ 37.692911] drm_atomic_helper_update_plane+0xe5/0x130 [ 37.698054] drm_mode_cursor_common+0x501/0x670 [ 37.702600] ? __cfi_drm_mode_cursor_ioctl+0x10/0x10 [ 37.707572] drm_mode_cursor_ioctl+0x48/0x70 [ 37.711851] drm_ioctl_kernel+0xf2/0x150 [ 37.715781] drm_ioctl+0x363/0x590 [ 37.719189] ? __cfi_drm_mode_cursor_ioctl+0x10/0x10 [ 37.724165] amdgpu_drm_ioctl+0x41/0x80 [ 37.728013] __se_sys_ioctl+0x7f/0xd0 [ 37.731685] do_syscall_64+0x87/0x100 [ 37.735355] ? vma_end_read+0x12/0xe0 [ 37.739024] ? srso_return_thunk+0x5/0x5f [ 37.743041] ? find_held_lock+0x47/0xf0 [ 37.746884] ? vma_end_read+0x12/0xe0 [ 37.750552] ? srso_return_thunk+0x5/0x5f [ 37.754565] ? lock_release+0x1c4/0x2e0 [ 37.758406] ? vma_end_read+0x12/0xe0 [ 37.762079] ? exc_page_fault+0x84/0xe0 [ 37.765921] ? srso_return_thunk+0x5/0x5f [ 37.769938] ? lockdep_hardirqs_on+0x95/0x150 [ 37.774303] ? srso_return_thunk+0x5/0x5f [ 37.778317] ? exc_page_fault+0x84/0xe0 [ 37.782163] entry_SYSCALL_64_after_hwframe+0x55/0x5d [ 37.787218] RIP: 0033:0x784aa5ec3059 [ 37.790803] Code: 04 25 28 00 00 00 48 89 45 c8 31 c0 48 8d 45 10 c7 45 b0 10 00 00 00 48 89 45 b8 48 8d 45 d0 48 89 45 c0 b8 10 00 00 00 0f 05 <41> 89 c0 3d 00 f0 ff ff 77 1d 48 8b 45 c8 64 48 2b 04 25 28 00 0 [ 37.809553] RSP: 002b:0000784a9cdf90e0 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 [ 37.817121] RAX: ffffffffffffffda RBX: 0000784a9cdf917c RCX: 0000784aa5ec3059 [ 37.824256] RDX: 0000784a9cdf917c RSI: 00000000c01c64a3 RDI: 0000000000000020 [ 37.831391] RBP: 0000784a9cdf9130 R08: 0000000000000100 R09: 0000000000ff0000 [ 37.838525] R10: 0000000000000000 R11: 0000000000000246 R12: 0000025c01606ed0 [ 37.845657] R13: 0000025c00030200 R14: 00000000c01c64a3 R15: 0000000000000020 [ 37.852799] </TASK> [ 37.854992] Modules linked in: [ 37.864546] gsmi: Log Shutdown Reason 0x03 [ 37.868656] CR2: 0000000000000058 [ 37.871979] ---[ end trace 0000000000000000 ]--- [ 37.880976] RIP: 0010:dmub_hw_lock_mgr_cmd+0x77/0xb0 [ 37.885954] Code: 44 24 0e 00 00 00 00 48 c7 04 24 45 00 00 0c 40 88 74 24 0d 0f b6 02 88 44 24 0c 8b 01 89 44 24 08 85 f6 75 05 c6 44 24 0e 01 <48> 8b 7f 58 48 89 e6 ba 01 00 00 00 e8 08 3c 2a 00 65 48 8b 04 5 [ 37.904703] RSP: 0018:ffff969442853300 EFLAGS: 00010202 [ 37.909933] RAX: 0000000000000000 RBX: ffff92db03000000 RCX: ffff969442853358 [ 37.917068] RDX: ffff969442853368 RSI: 0000000000000001 RDI: 0000000000000000 [ 37.924201] RBP: 0000000000000001 R08: 00000000000004a7 R09: 00000000000004a5 [ 37.931336] R10: 0000000000000476 R11: 0000000000000062 R12: ffff92db0ade8000 [ 37.938469] R13: ffff92da01180ae0 R14: ffff92da011802a8 R15: ffff92db03000000 [ 37.945602] FS: 0000784a9cdfc6c0(0000) GS:ffff92db2af00000(0000) knlGS:0000000000000000 [ 37.953689] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 37.959435] CR2: 0000000000000058 CR3: 0000000112b1c000 CR4: 00000000003506f0 [ 37.966570] Kernel panic - not syncing: Fatal exception [ 37.971901] Kernel Offset: 0x30200000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff) [ 37.982840] gsmi: Log Shutdown Reason 0x02 Fixes: b5c764d6 ("drm/amd/display: Use HW lock mgr for PSR1") Signed-off-by:
Thadeu Lima de Souza Cascardo <cascardo@igalia.com> Cc: stable@vger.kernel.org Cc: Sun peng Li <sunpeng.li@amd.com> Cc: Tom Chung <chiahsuan.chung@amd.com> Cc: Daniel Wheeler <daniel.wheeler@amd.com> Cc: Alex Deucher <alexander.deucher@amd.com> Reviewed-by:
Rodrigo Siqueira <siqueira@igalia.com> Reviewed-by:
Leo Li <sunpeng.li@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
Wentao Liang authored
In gfx_v12_0_cp_gfx_load_me_microcode_rs64(), gfx_v12_0_pfp_fini() is incorrectly used to free 'me' field of 'gfx', since gfx_v12_0_pfp_fini() can only release 'pfp' field of 'gfx'. The release function of 'me' field should be gfx_v12_0_me_fini(). Fixes: 52cb80c1 ("drm/amdgpu: Add gfx v12_0 ip block support (v6)") Cc: stable@vger.kernel.org # 6.11+ Signed-off-by:
Wentao Liang <vulab@iscas.ac.cn> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
-
David Belanger authored
Always use MTYPE_UC if UNCACHED flag is specified. This makes kernarg region uncached and it restores usermode cache disable debug flag functionality. Do not set MTYPE_UC for COHERENT flag, on GFX12 coherence is handled by shader code. Signed-off-by:
David Belanger <david.belanger@amd.com> Reviewed-by:
Felix Kuehling <felix.kuehling@amd.com> Signed-off-by:
Alex Deucher <alexander.deucher@amd.com>
Showing
- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_aldebaran.c 1 addition, 1 deletiondrivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_aldebaran.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c 1 addition, 1 deletiondrivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gc_9_4_3.c 2 additions, 2 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gc_9_4_3.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.c 14 additions, 14 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.h 3 additions, 2 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.h
- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10_3.c 1 addition, 1 deletiondrivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10_3.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c 14 additions, 14 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.h 3 additions, 2 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.h
- drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c 1 addition, 1 deletiondrivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c 3 additions, 0 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_device.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c 0 additions, 3 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_mes.c 0 additions, 800 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_mes.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h 3 additions, 44 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_mes.h
- drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c 25 additions, 5 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c 7 additions, 2 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c 5 additions, 4 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.h 2 additions, 0 deletionsdrivers/gpu/drm/amd/amdgpu/amdgpu_virt.h
- drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c 3 additions, 1 deletiondrivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
- drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c 32 additions, 15 deletionsdrivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
- drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c 34 additions, 16 deletionsdrivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
This diff is collapsed.