Commit 274a1ff0 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'platform-drivers-x86-v4.16-7' of git://git.infradead.org/linux-platform-drivers-x86

Pull x86 platform drives fixes from Darren Hart:

 - DELL_SMBIOS conditionally depends on ACPI_WMI in the same way it
   depends on DCDBAS, update the Kconfig accordingly.

 - fix the dell driver init order to ensure that the driver dependencies
   are met, avoiding race conditions resulting in boot failure on
   certain systems when the drivers are built-in.

* tag 'platform-drivers-x86-v4.16-7' of git://git.infradead.org/linux-platform-drivers-x86:
  platform/x86: Fix dell driver init order
  platform/x86: dell-smbios: Resolve dependency error on ACPI_WMI
parents 3032f8c5 49368c13
...@@ -639,7 +639,7 @@ static void __exit dcdbas_exit(void) ...@@ -639,7 +639,7 @@ static void __exit dcdbas_exit(void)
platform_driver_unregister(&dcdbas_driver); platform_driver_unregister(&dcdbas_driver);
} }
module_init(dcdbas_init); subsys_initcall_sync(dcdbas_init);
module_exit(dcdbas_exit); module_exit(dcdbas_exit);
MODULE_DESCRIPTION(DRIVER_DESCRIPTION " (version " DRIVER_VERSION ")"); MODULE_DESCRIPTION(DRIVER_DESCRIPTION " (version " DRIVER_VERSION ")");
......
...@@ -106,13 +106,14 @@ config ASUS_LAPTOP ...@@ -106,13 +106,14 @@ config ASUS_LAPTOP
If you have an ACPI-compatible ASUS laptop, say Y or M here. If you have an ACPI-compatible ASUS laptop, say Y or M here.
# #
# If the DELL_SMBIOS_SMM feature is enabled, the DELL_SMBIOS driver # The DELL_SMBIOS driver depends on ACPI_WMI and/or DCDBAS if those
# becomes dependent on the DCDBAS driver. The "depends" line prevents a # backends are selected. The "depends" line prevents a configuration
# configuration where DELL_SMBIOS=y while DCDBAS=m. # where DELL_SMBIOS=y while either of those dependencies =m.
# #
config DELL_SMBIOS config DELL_SMBIOS
tristate "Dell SMBIOS driver" tristate "Dell SMBIOS driver"
depends on DCDBAS || DCDBAS=n depends on DCDBAS || DCDBAS=n
depends on ACPI_WMI || ACPI_WMI=n
---help--- ---help---
This provides support for the Dell SMBIOS calling interface. This provides support for the Dell SMBIOS calling interface.
If you have a Dell computer you should enable this option. If you have a Dell computer you should enable this option.
......
...@@ -637,7 +637,7 @@ static void __exit dell_smbios_exit(void) ...@@ -637,7 +637,7 @@ static void __exit dell_smbios_exit(void)
mutex_unlock(&smbios_mutex); mutex_unlock(&smbios_mutex);
} }
subsys_initcall(dell_smbios_init); module_init(dell_smbios_init);
module_exit(dell_smbios_exit); module_exit(dell_smbios_exit);
MODULE_AUTHOR("Matthew Garrett <mjg@redhat.com>"); MODULE_AUTHOR("Matthew Garrett <mjg@redhat.com>");
......
...@@ -714,7 +714,7 @@ static int __init dell_wmi_init(void) ...@@ -714,7 +714,7 @@ static int __init dell_wmi_init(void)
return wmi_driver_register(&dell_wmi_driver); return wmi_driver_register(&dell_wmi_driver);
} }
module_init(dell_wmi_init); late_initcall(dell_wmi_init);
static void __exit dell_wmi_exit(void) static void __exit dell_wmi_exit(void)
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment