|
@@ -2259,12 +2259,16 @@ int __init acpi_scan_init(void)
|
|
|
if (result)
|
|
|
goto out;
|
|
|
|
|
|
- result = acpi_bus_scan_fixed();
|
|
|
- if (result) {
|
|
|
- acpi_detach_data(acpi_root->handle, acpi_scan_drop_device);
|
|
|
- acpi_device_del(acpi_root);
|
|
|
- put_device(&acpi_root->dev);
|
|
|
- goto out;
|
|
|
+ /* Fixed feature devices do not exist on HW-reduced platform */
|
|
|
+ if (!acpi_gbl_reduced_hardware) {
|
|
|
+ result = acpi_bus_scan_fixed();
|
|
|
+ if (result) {
|
|
|
+ acpi_detach_data(acpi_root->handle,
|
|
|
+ acpi_scan_drop_device);
|
|
|
+ acpi_device_del(acpi_root);
|
|
|
+ put_device(&acpi_root->dev);
|
|
|
+ goto out;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
acpi_update_all_gpes();
|