|
|
@@ -528,6 +528,13 @@ static bool radeon_atpx_detect(void)
|
|
|
has_atpx |= (radeon_atpx_pci_probe_handle(pdev) == true);
|
|
|
}
|
|
|
|
|
|
+ /* some newer PX laptops mark the dGPU as a non-VGA display device */
|
|
|
+ while ((pdev = pci_get_class(PCI_CLASS_DISPLAY_OTHER << 8, pdev)) != NULL) {
|
|
|
+ vga_count++;
|
|
|
+
|
|
|
+ has_atpx |= (radeon_atpx_pci_probe_handle(pdev) == true);
|
|
|
+ }
|
|
|
+
|
|
|
if (has_atpx && vga_count == 2) {
|
|
|
acpi_get_name(radeon_atpx_priv.atpx.handle, ACPI_FULL_PATHNAME, &buffer);
|
|
|
printk(KERN_INFO "VGA switcheroo: detected switching method %s handle\n",
|