Commit a5c23201 authored by Thomas Zimmermann's avatar Thomas Zimmermann
Browse files

drm/ast: Warn about unsupported TX chips



A number of TX chips are listed in VGACRD1, but not supported by
the ast driver. Whether any existing product uses such a chip is
unknown. Warn if the driver encounters any. We can then add
support as necessary.

Signed-off-by: default avatarThomas Zimmermann <tzimmermann@suse.de>
Suggested-by: default avatarJocelyn Falempe <jfalempe@redhat.com>
Reviewed-by: default avatarJocelyn Falempe <jfalempe@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240916082920.56234-4-tzimmermann@suse.de
parent f93d6663
Loading
Loading
Loading
Loading
+16 −1
Original line number Diff line number Diff line
@@ -76,7 +76,22 @@ static void ast_detect_tx_chip(struct ast_device *ast, bool need_post)
	};

	struct drm_device *dev = &ast->base;
	u8 jreg;
	u8 jreg, vgacrd1;

	/*
	 * Several of the listed TX chips are not explicitly supported
	 * by the ast driver. If these exist in real-world devices, they
	 * are most likely reported as VGA or SIL164 outputs. We warn here
	 * to get bug reports for these devices. If none come in for some
	 * time, we can begin to fail device probing on these values.
	 */
	vgacrd1 = ast_get_index_reg_mask(ast, AST_IO_VGACRI, 0xd1, AST_IO_VGACRD1_TX_TYPE_MASK);
	drm_WARN(dev, vgacrd1 == AST_IO_VGACRD1_TX_ITE66121_VBIOS,
		 "ITE IT66121 detected, 0x%x, Gen%lu\n", vgacrd1, AST_GEN(ast));
	drm_WARN(dev, vgacrd1 == AST_IO_VGACRD1_TX_CH7003_VBIOS,
		 "Chrontel CH7003 detected, 0x%x, Gen%lu\n", vgacrd1, AST_GEN(ast));
	drm_WARN(dev, vgacrd1 == AST_IO_VGACRD1_TX_ANX9807_VBIOS,
		 "Analogix ANX9807 detected, 0x%x, Gen%lu\n", vgacrd1, AST_GEN(ast));

	/* Check 3rd Tx option (digital output afaik) */
	ast->tx_chip = AST_TX_NONE;