platform/x86: dell-smbios: Link all dell-smbios-* modules together
authorMario Limonciello <mario.limonciello@dell.com>
Tue, 27 Feb 2018 18:23:04 +0000 (12:23 -0600)
committerDarren Hart (VMware) <dvhart@infradead.org>
Sat, 3 Mar 2018 00:56:45 +0000 (16:56 -0800)
commit41e36f2f85af758fd2f4be76112ebe649d07a801
tree06629049e55a8b742e67f19f8a7e8f973b7b67ed
parentec34fe385984b447f62ef6763638874e6fbd1f43
platform/x86: dell-smbios: Link all dell-smbios-* modules together

Some race conditions were raised due to dell-smbios and its backends
not being ready by the time that a consumer would call one of the
exported methods.

To avoid this problem, guarantee that all initialization has been
done by linking them all together and running init for them all.

As part of this change the Kconfig needs to be adjusted so that
CONFIG_DELL_SMBIOS_SMM and CONFIG_DELL_SMBIOS_WMI are boolean
rather than modules.

CONFIG_DELL_SMBIOS is a visually selectable option again and both
CONFIG_DELL_SMBIOS_WMI and CONFIG_DELL_SMBIOS_SMM are optional.

Signed-off-by: Mario Limonciello <mario.limonciello@dell.com>
[dvhart: Update prompt and help text for DELL_SMBIOS_* backends]
Signed-off-by: Darren Hart (VMware) <dvhart@infradead.org>
drivers/platform/x86/Kconfig
drivers/platform/x86/Makefile
drivers/platform/x86/dell-smbios-base.c
drivers/platform/x86/dell-smbios-smm.c
drivers/platform/x86/dell-smbios-wmi.c
drivers/platform/x86/dell-smbios.h