Re: [PATCH] drm/amd/display: fix mode scaling (RMX_.*)
On 2023-08-18 09:17, Hamza Mahfooz wrote: > As made mention of in commit 4a2df0d1f28e ("drm/amd/display: Fixed > non-native modes not lighting up"), we shouldn't call > drm_mode_set_crtcinfo() once the crtc timings have been decided. Since, > it can cause settings to be unintentionally overwritten. So, since > dm_state is never NULL now, we can use old_stream to determine if we > should call drm_mode_set_crtcinfo() because we only need to set the crtc > timing parameters for entirely new streams. > > Cc: Harry Wentland > Cc: Rodrigo Siqueira > Fixes: 712237a4a1b4 ("drm/amd/display: Always set crtcinfo from > create_stream_for_sink") > Signed-off-by: Hamza Mahfooz Reviewed-by: Harry Wentland Harry > --- > drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > index 3b27b7742854..e9aff5014e39 100644 > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > @@ -6035,7 +6035,7 @@ create_stream_for_sink(struct amdgpu_dm_connector > *aconnector, > > if (recalculate_timing) > drm_mode_set_crtcinfo(&saved_mode, 0); > - else > + else if (!old_stream) > drm_mode_set_crtcinfo(&mode, 0); > > /*
Re: [PATCH] drm/amd/display: fix mode scaling (RMX_.*)
On 8/18/23 09:28, Alex Deucher wrote: On Fri, Aug 18, 2023 at 9:25 AM Hamza Mahfooz wrote: As made mention of in commit 4a2df0d1f28e ("drm/amd/display: Fixed non-native modes not lighting up"), we shouldn't call drm_mode_set_crtcinfo() once the crtc timings have been decided. Since, it can cause settings to be unintentionally overwritten. So, since dm_state is never NULL now, we can use old_stream to determine if we should call drm_mode_set_crtcinfo() because we only need to set the crtc timing parameters for entirely new streams. Cc: Harry Wentland Cc: Rodrigo Siqueira Fixes: 712237a4a1b4 ("drm/amd/display: Always set crtcinfo from create_stream_for_sink") Signed-off-by: Hamza Mahfooz Does this fix: https://gitlab.freedesktop.org/drm/amd/-/issues/2783 If so, add a link tag for that. The issue I'm addressing is specific to the colorspace patches (which weren't ported to 6.4.y to my knowledge). So, that's probably unrelated. Alex --- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c index 3b27b7742854..e9aff5014e39 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c @@ -6035,7 +6035,7 @@ create_stream_for_sink(struct amdgpu_dm_connector *aconnector, if (recalculate_timing) drm_mode_set_crtcinfo(&saved_mode, 0); - else + else if (!old_stream) drm_mode_set_crtcinfo(&mode, 0); /* -- 2.41.0 -- Hamza
Re: [PATCH] drm/amd/display: fix mode scaling (RMX_.*)
On Fri, Aug 18, 2023 at 9:25 AM Hamza Mahfooz wrote: > > As made mention of in commit 4a2df0d1f28e ("drm/amd/display: Fixed > non-native modes not lighting up"), we shouldn't call > drm_mode_set_crtcinfo() once the crtc timings have been decided. Since, > it can cause settings to be unintentionally overwritten. So, since > dm_state is never NULL now, we can use old_stream to determine if we > should call drm_mode_set_crtcinfo() because we only need to set the crtc > timing parameters for entirely new streams. > > Cc: Harry Wentland > Cc: Rodrigo Siqueira > Fixes: 712237a4a1b4 ("drm/amd/display: Always set crtcinfo from > create_stream_for_sink") > Signed-off-by: Hamza Mahfooz Does this fix: https://gitlab.freedesktop.org/drm/amd/-/issues/2783 If so, add a link tag for that. Alex > --- > drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > index 3b27b7742854..e9aff5014e39 100644 > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > @@ -6035,7 +6035,7 @@ create_stream_for_sink(struct amdgpu_dm_connector > *aconnector, > > if (recalculate_timing) > drm_mode_set_crtcinfo(&saved_mode, 0); > - else > + else if (!old_stream) > drm_mode_set_crtcinfo(&mode, 0); > > /* > -- > 2.41.0 >
[PATCH] drm/amd/display: fix mode scaling (RMX_.*)
As made mention of in commit 4a2df0d1f28e ("drm/amd/display: Fixed non-native modes not lighting up"), we shouldn't call drm_mode_set_crtcinfo() once the crtc timings have been decided. Since, it can cause settings to be unintentionally overwritten. So, since dm_state is never NULL now, we can use old_stream to determine if we should call drm_mode_set_crtcinfo() because we only need to set the crtc timing parameters for entirely new streams. Cc: Harry Wentland Cc: Rodrigo Siqueira Fixes: 712237a4a1b4 ("drm/amd/display: Always set crtcinfo from create_stream_for_sink") Signed-off-by: Hamza Mahfooz --- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c index 3b27b7742854..e9aff5014e39 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c @@ -6035,7 +6035,7 @@ create_stream_for_sink(struct amdgpu_dm_connector *aconnector, if (recalculate_timing) drm_mode_set_crtcinfo(&saved_mode, 0); - else + else if (!old_stream) drm_mode_set_crtcinfo(&mode, 0); /* -- 2.41.0