diff options
Diffstat (limited to 'drivers/acpi/scan.c')
-rw-r--r-- | drivers/acpi/scan.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c index 57b053f424d1..9c4581fd5827 100644 --- a/drivers/acpi/scan.c +++ b/drivers/acpi/scan.c | |||
@@ -2015,13 +2015,14 @@ static int acpi_scan_attach_handler(struct acpi_device *device) | |||
2015 | 2015 | ||
2016 | handler = acpi_scan_match_handler(hwid->id, &devid); | 2016 | handler = acpi_scan_match_handler(hwid->id, &devid); |
2017 | if (handler) { | 2017 | if (handler) { |
2018 | device->handler = handler; | ||
2018 | ret = handler->attach(device, devid); | 2019 | ret = handler->attach(device, devid); |
2019 | if (ret > 0) { | 2020 | if (ret > 0) |
2020 | device->handler = handler; | ||
2021 | break; | 2021 | break; |
2022 | } else if (ret < 0) { | 2022 | |
2023 | device->handler = NULL; | ||
2024 | if (ret < 0) | ||
2023 | break; | 2025 | break; |
2024 | } | ||
2025 | } | 2026 | } |
2026 | } | 2027 | } |
2027 | return ret; | 2028 | return ret; |