diff mbox series

[5/7] drm/ast: Support ASTDP and VGA at the same time

Message ID 20240715093936.793552-6-tzimmermann@suse.de (mailing list archive)
State New, archived
Headers show
Series drm/probe-helpers: Work around multi-outputs-per-CRTC problem | expand

Commit Message

Thomas Zimmermann July 15, 2024, 9:39 a.m. UTC
AST2600 can host VGA and DisplayPort outputs. Support both on the
same device. As userspace can often only support a single output per
CRTC, connectors are prioritized against each other by the probe
helpers.

Reported-by: Shixiong Ou <oushixiong@kylinos.cn>
Closes: https://lore.kernel.org/dri-devel/20240711090102.352213-1-oushixiong1025@163.com/
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
---
 drivers/gpu/drm/ast/ast_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

oushixiong July 16, 2024, 8:42 a.m. UTC | #1
Tested-by: Shixiong Ou <oushixiong@kylinos.cn>

在 2024/7/15 17:39, Thomas Zimmermann 写道:
> AST2600 can host VGA and DisplayPort outputs. Support both on the
> same device. As userspace can often only support a single output per
> CRTC, connectors are prioritized against each other by the probe
> helpers.
>
> Reported-by: Shixiong Ou <oushixiong@kylinos.cn>
> Closes: https://lore.kernel.org/dri-devel/20240711090102.352213-1-oushixiong1025@163.com/
> Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
> ---
>   drivers/gpu/drm/ast/ast_main.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/ast/ast_main.c b/drivers/gpu/drm/ast/ast_main.c
> index 0637abb70361..d43aedaa8dd0 100644
> --- a/drivers/gpu/drm/ast/ast_main.c
> +++ b/drivers/gpu/drm/ast/ast_main.c
> @@ -115,7 +115,7 @@ static void ast_detect_tx_chip(struct ast_device *ast, bool need_post)
>   	} else if (IS_AST_GEN7(ast)) {
>   		if (ast_get_index_reg_mask(ast, AST_IO_VGACRI, 0xD1, TX_TYPE_MASK) ==
>   		    ASTDP_DPMCU_TX) {
> -			ast->tx_chip_types = AST_TX_ASTDP_BIT;
> +			ast->tx_chip_types |= AST_TX_ASTDP_BIT;
>   			ast_dp_launch(&ast->base);
>   		}
>   	}
diff mbox series

Patch

diff --git a/drivers/gpu/drm/ast/ast_main.c b/drivers/gpu/drm/ast/ast_main.c
index 0637abb70361..d43aedaa8dd0 100644
--- a/drivers/gpu/drm/ast/ast_main.c
+++ b/drivers/gpu/drm/ast/ast_main.c
@@ -115,7 +115,7 @@  static void ast_detect_tx_chip(struct ast_device *ast, bool need_post)
 	} else if (IS_AST_GEN7(ast)) {
 		if (ast_get_index_reg_mask(ast, AST_IO_VGACRI, 0xD1, TX_TYPE_MASK) ==
 		    ASTDP_DPMCU_TX) {
-			ast->tx_chip_types = AST_TX_ASTDP_BIT;
+			ast->tx_chip_types |= AST_TX_ASTDP_BIT;
 			ast_dp_launch(&ast->base);
 		}
 	}