drm/ast: Detect AST 1300 model
Detect the 4th-generation AST 1300. Allows to simplify the code for widescreen support. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com> Tested-by: Jocelyn Falempe <jfalempe@redhat.com> # AST2600 Link: https://patchwork.freedesktop.org/patch/msgid/20230621130032.3568-11-tzimmermann@suse.de
This commit is contained in:
parent
ecf64579fe
commit
6bd576da31
@ -67,7 +67,7 @@ enum ast_chip {
|
||||
AST2150 = __AST_CHIP(3, 1),
|
||||
/* 4th gen */
|
||||
AST2300 = __AST_CHIP(4, 0),
|
||||
AST1300 = __AST_CHIP(4, 1), // unused
|
||||
AST1300 = __AST_CHIP(4, 1),
|
||||
AST1050 = __AST_CHIP(4, 2), // unused
|
||||
/* 5th gen */
|
||||
AST2400 = __AST_CHIP(5, 0),
|
||||
|
@ -169,8 +169,16 @@ static int ast_detect_chip(struct drm_device *dev, bool need_post, u32 scu_rev)
|
||||
ast->chip = AST2400;
|
||||
drm_info(dev, "AST 2400 detected\n");
|
||||
} else if (pdev->revision >= 0x20) {
|
||||
ast->chip = AST2300;
|
||||
drm_info(dev, "AST 2300 detected\n");
|
||||
switch (scu_rev & 0x300) {
|
||||
case 0x0000:
|
||||
ast->chip = AST1300;
|
||||
drm_info(dev, "AST 1300 detected\n");
|
||||
break;
|
||||
default:
|
||||
ast->chip = AST2300;
|
||||
drm_info(dev, "AST 2300 detected\n");
|
||||
break;
|
||||
}
|
||||
} else if (pdev->revision >= 0x10) {
|
||||
switch (scu_rev & 0x0300) {
|
||||
case 0x0200:
|
||||
@ -208,8 +216,7 @@ static int ast_detect_chip(struct drm_device *dev, bool need_post, u32 scu_rev)
|
||||
ast->support_wide_screen = true;
|
||||
else {
|
||||
ast->support_wide_screen = false;
|
||||
if (ast->chip == AST2300 &&
|
||||
(scu_rev & 0x300) == 0x0) /* ast1300 */
|
||||
if (ast->chip == AST1300)
|
||||
ast->support_wide_screen = true;
|
||||
if (ast->chip == AST2400 &&
|
||||
(scu_rev & 0x300) == 0x100) /* ast1400 */
|
||||
|
Loading…
x
Reference in New Issue
Block a user