Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/radeon: Use pci_get_base_class() to reduce duplicated code

Use pci_get_base_class() to reduce duplicated code. No functional change
intended.

Link: https://lore.kernel.org/r/20230825062714.6325-6-sui.jingfeng@linux.dev
Signed-off-by: Sui Jingfeng <suijingfeng@loongson.cn>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Cc: Alex Deucher <alexander.deucher@amd.com>

authored by

Sui Jingfeng and committed by
Bjorn Helgaas
b5fc0403 18bf4005

+5 -15
+5 -15
drivers/gpu/drm/radeon/radeon_bios.c
··· 199 199 if (rdev->flags & RADEON_IS_IGP) 200 200 return false; 201 201 202 - while ((pdev = pci_get_class(PCI_CLASS_DISPLAY_VGA << 8, pdev)) != NULL) { 202 + while ((pdev = pci_get_base_class(PCI_BASE_CLASS_DISPLAY, pdev))) { 203 + if ((pdev->class != PCI_CLASS_DISPLAY_VGA << 8) && 204 + (pdev->class != PCI_CLASS_DISPLAY_OTHER << 8)) 205 + continue; 206 + 203 207 dhandle = ACPI_HANDLE(&pdev->dev); 204 208 if (!dhandle) 205 209 continue; ··· 212 208 if (ACPI_SUCCESS(status)) { 213 209 found = true; 214 210 break; 215 - } 216 - } 217 - 218 - if (!found) { 219 - while ((pdev = pci_get_class(PCI_CLASS_DISPLAY_OTHER << 8, pdev)) != NULL) { 220 - dhandle = ACPI_HANDLE(&pdev->dev); 221 - if (!dhandle) 222 - continue; 223 - 224 - status = acpi_get_handle(dhandle, "ATRM", &atrm_handle); 225 - if (ACPI_SUCCESS(status)) { 226 - found = true; 227 - break; 228 - } 229 211 } 230 212 } 231 213