| From foo@baz Sun Jun 17 12:07:33 CEST 2018 |
| From: Mika Westerberg <mika.westerberg@linux.intel.com> |
| Date: Thu, 19 Apr 2018 13:08:37 +0300 |
| Subject: ACPI / scan: Initialize watchdog before PNP |
| |
| From: Mika Westerberg <mika.westerberg@linux.intel.com> |
| |
| [ Upstream commit cc6a0e315a68e5db85bea347b0c5b0fe4a9a5904 ] |
| |
| At least on one Dell system the PNP motherboard resources device |
| includes resources used by WDAT table. Since PNP gets initialized before |
| WDAT it results following error and no watchdog: |
| |
| platform wdat_wdt: failed to claim resource 3: [io 0x046a-0x046c] |
| ACPI: watchdog: Device creation failed: -16 |
| |
| Now, the PNP system driver is already accustomed with the situation that |
| it cannot reserve all those motherboard resources because drivers using |
| those might have reserved them already. In addition putting WDAT table |
| resources under motherboard resources device makes sense in general. |
| |
| Fix this by initializing WDAT right before PNP. This allows WDAT to |
| reserve all its resources and still keeps PNP system driver happy. |
| |
| Reported-by: Shubhrata.Priyadarsh@dell.com |
| Reported-by: Takashi Iwai <tiwai@suse.de> |
| Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com> |
| Acked-by: Guenter Roeck <linux@roeck-us.net> |
| Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/acpi/scan.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/acpi/scan.c |
| +++ b/drivers/acpi/scan.c |
| @@ -2150,10 +2150,10 @@ int __init acpi_scan_init(void) |
| acpi_cmos_rtc_init(); |
| acpi_container_init(); |
| acpi_memory_hotplug_init(); |
| + acpi_watchdog_init(); |
| acpi_pnp_init(); |
| acpi_int340x_thermal_init(); |
| acpi_amba_init(); |
| - acpi_watchdog_init(); |
| acpi_init_lpit(); |
| |
| acpi_scan_add_handler(&generic_device_handler); |