[PATCH] drm/sysfb: ofdrm: Fix is_avivo() constant comparison bug
From: oushixiong1025
Date: Fri Jul 24 2026 - 05:49:54 EST
From: Shixiong Ou <oushixiong@xxxxxxxxxx>
The is_avivo() function has a logic error where it compares a constant
to another constant instead of checking the device parameter:
(PCI_VENDOR_ID_ATI_R600 >= 0x9400)
However, according to the code comment and the OFDRM_MODEL_AVIVO
definition ("ATI R5xx"), this function is intended to match only R5xx
cards (device IDs 0x7100-0x7800), not R6xx or later. The second
condition checking for R600 is erroneous and should be removed.
Signed-off-by: Shixiong Ou <oushixiong@xxxxxxxxxx>
---
drivers/gpu/drm/sysfb/ofdrm.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/sysfb/ofdrm.c b/drivers/gpu/drm/sysfb/ofdrm.c
index a6dc34b9ec0f..ea1db1cfe3ed 100644
--- a/drivers/gpu/drm/sysfb/ofdrm.c
+++ b/drivers/gpu/drm/sysfb/ofdrm.c
@@ -238,8 +238,7 @@ static bool is_avivo(u32 vendor, u32 device)
{
/* This will match most R5xx */
return (vendor == PCI_VENDOR_ID_ATI) &&
- ((device >= PCI_VENDOR_ID_ATI_R520 && device < 0x7800) ||
- (PCI_VENDOR_ID_ATI_R600 >= 0x9400));
+ (device >= PCI_VENDOR_ID_ATI_R520 && device < 0x7800);
}
static enum ofdrm_model display_get_model_of(struct drm_device *dev, struct device_node *of_node)
--
2.25.1
No virus found
Checked by Hillstone Network AntiVirus