Skip to content

Commit 2c22e9a

Browse files
Timur Kristófgregkh
authored andcommitted
drm/amdgpu/uvd4.2: Don't initialize UVD 4.2 when DPM is disabled
[ Upstream commit 8b3e8fa ] UVD 4.2 doesn't work at all when DPM is disabled because the SMU is responsible for ungating it. So, Linux fails to boot with CIK GPUs when using the amdgpu.dpm=0 parameter. Fix this by returning -ENOENT from uvd_v4_2_early_init() when amdgpu_dpm isn't enabled. Note: amdgpu.dpm=0 is often suggested as a workaround for issues and is useful for debugging. Fixes: a2e73f5 ("drm/amdgpu: Add support for CIK parts") Signed-off-by: Timur Kristóf <timur.kristof@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent 8a21201 commit 2c22e9a

1 file changed

Lines changed: 5 additions & 0 deletions

File tree

drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,11 @@ static void uvd_v4_2_ring_set_wptr(struct amdgpu_ring *ring)
9393
static int uvd_v4_2_early_init(struct amdgpu_ip_block *ip_block)
9494
{
9595
struct amdgpu_device *adev = ip_block->adev;
96+
97+
/* UVD doesn't work without DPM, it needs DPM to ungate it. */
98+
if (!amdgpu_dpm)
99+
return -ENOENT;
100+
96101
adev->uvd.num_uvd_inst = 1;
97102

98103
uvd_v4_2_set_ring_funcs(adev);

0 commit comments

Comments
 (0)