* [PATCH 01/15] drm/ast: dp501: Fix initialization of SCU2C [not found] <20260323160407.245773-1-tzimmermann@suse.de> @ 2026-03-23 15:56 ` Thomas Zimmermann 2026-03-25 15:46 ` Jocelyn Falempe 0 siblings, 1 reply; 2+ messages in thread From: Thomas Zimmermann @ 2026-03-23 15:56 UTC (permalink / raw) To: jfalempe, airlied, maarten.lankhorst, mripard, airlied, simona Cc: dri-devel, Thomas Zimmermann, stable Ast's DP501 initialization reads the register SCU2C at offset 0x1202c and tries to set it to source data from VGA. But writes the update to offset 0x0, with unknown results. Write the result to SCU instead. The bug only happens in ast_init_analog(). There's similar code in ast_init_dvo(), which works correctly. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Fixes: 83c6620bae3f ("drm/ast: initial DP501 support (v0.2)") Cc: Dave Airlie <airlied@redhat.com> Cc: Thomas Zimmermann <tzimmermann@suse.de> Cc: Jocelyn Falempe <jfalempe@redhat.com> Cc: dri-devel@lists.freedesktop.org Cc: <stable@vger.kernel.org> # v3.16+ --- drivers/gpu/drm/ast/ast_dp501.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/ast/ast_dp501.c b/drivers/gpu/drm/ast/ast_dp501.c index 9e19d8c17730..677c52c0d99a 100644 --- a/drivers/gpu/drm/ast/ast_dp501.c +++ b/drivers/gpu/drm/ast/ast_dp501.c @@ -436,7 +436,7 @@ static void ast_init_analog(struct ast_device *ast) /* Finally, clear bits [17:16] of SCU2c */ data = ast_read32(ast, 0x1202c); data &= 0xfffcffff; - ast_write32(ast, 0, data); + ast_write32(ast, 0x1202c, data); /* Disable DVO */ ast_set_index_reg_mask(ast, AST_IO_VGACRI, 0xa3, 0xcf, 0x00); -- 2.53.0 ^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH 01/15] drm/ast: dp501: Fix initialization of SCU2C 2026-03-23 15:56 ` [PATCH 01/15] drm/ast: dp501: Fix initialization of SCU2C Thomas Zimmermann @ 2026-03-25 15:46 ` Jocelyn Falempe 0 siblings, 0 replies; 2+ messages in thread From: Jocelyn Falempe @ 2026-03-25 15:46 UTC (permalink / raw) To: Thomas Zimmermann, airlied, maarten.lankhorst, mripard, airlied, simona Cc: dri-devel, stable On 23/03/2026 16:56, Thomas Zimmermann wrote: > Ast's DP501 initialization reads the register SCU2C at offset 0x1202c > and tries to set it to source data from VGA. But writes the update to > offset 0x0, with unknown results. Write the result to SCU instead. > > The bug only happens in ast_init_analog(). There's similar code in > ast_init_dvo(), which works correctly. Thanks, it looks good to me. Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com> > > Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> > Fixes: 83c6620bae3f ("drm/ast: initial DP501 support (v0.2)") > Cc: Dave Airlie <airlied@redhat.com> > Cc: Thomas Zimmermann <tzimmermann@suse.de> > Cc: Jocelyn Falempe <jfalempe@redhat.com> > Cc: dri-devel@lists.freedesktop.org > Cc: <stable@vger.kernel.org> # v3.16+ > --- > drivers/gpu/drm/ast/ast_dp501.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/ast/ast_dp501.c b/drivers/gpu/drm/ast/ast_dp501.c > index 9e19d8c17730..677c52c0d99a 100644 > --- a/drivers/gpu/drm/ast/ast_dp501.c > +++ b/drivers/gpu/drm/ast/ast_dp501.c > @@ -436,7 +436,7 @@ static void ast_init_analog(struct ast_device *ast) > /* Finally, clear bits [17:16] of SCU2c */ > data = ast_read32(ast, 0x1202c); > data &= 0xfffcffff; > - ast_write32(ast, 0, data); > + ast_write32(ast, 0x1202c, data); > > /* Disable DVO */ > ast_set_index_reg_mask(ast, AST_IO_VGACRI, 0xa3, 0xcf, 0x00); ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-03-25 15:46 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20260323160407.245773-1-tzimmermann@suse.de>
2026-03-23 15:56 ` [PATCH 01/15] drm/ast: dp501: Fix initialization of SCU2C Thomas Zimmermann
2026-03-25 15:46 ` Jocelyn Falempe
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox