Messages in this thread Patch in this message | | | Date | Tue, 10 Nov 2020 08:11:18 -0800 | From | Guenter Roeck <> | Subject | Re: [PATCH v2] mfd: kempld-core: Check for DMI definition before ACPI |
| |
On Tue, Nov 10, 2020 at 03:23:21PM +0000, Michael Brunner wrote: > Change the detection order to priorize DMI table entries over available > ACPI entries. > > This makes it more easy for product developers to patch product specific > handling into the driver. > Furthermore it allows to simplify the implementation a bit and > especially to remove the need to force synchronous probing. > > Based on the following commit introduced with v5.10-rc1: > commit e8299c7313af ("mfd: Add ACPI support to Kontron PLD driver") > > v2: Fixed coding style as suggested by Guenther Roeck >
Nit: change logs should be after '---'.
Other than that,
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Guenter
> Signed-off-by: Michael Brunner <michael.brunner@kontron.com> > --- > drivers/mfd/kempld-core.c | 24 +++--------------------- > 1 file changed, 3 insertions(+), 21 deletions(-) > > diff --git a/drivers/mfd/kempld-core.c b/drivers/mfd/kempld-core.c > index 2c9295953c11..ecd26271b9a4 100644 > --- a/drivers/mfd/kempld-core.c > +++ b/drivers/mfd/kempld-core.c > @@ -125,7 +125,6 @@ static const struct kempld_platform_data kempld_platform_data_generic = { > }; > > static struct platform_device *kempld_pdev; > -static bool kempld_acpi_mode; > > static int kempld_create_platform_device(const struct dmi_system_id *id) > { > @@ -501,8 +500,6 @@ static int kempld_probe(struct platform_device *pdev) > ret = kempld_get_acpi_data(pdev); > if (ret) > return ret; > - > - kempld_acpi_mode = true; > } else if (kempld_pdev != pdev) { > /* > * The platform device we are probing is not the one we > @@ -565,7 +562,6 @@ static struct platform_driver kempld_driver = { > .driver = { > .name = "kempld", > .acpi_match_table = ACPI_PTR(kempld_acpi_table), > - .probe_type = PROBE_FORCE_SYNCHRONOUS, > }, > .probe = kempld_probe, > .remove = kempld_remove, > @@ -884,7 +880,6 @@ MODULE_DEVICE_TABLE(dmi, kempld_dmi_table); > static int __init kempld_init(void) > { > const struct dmi_system_id *id; > - int ret; > > if (force_device_id[0]) { > for (id = kempld_dmi_table; > @@ -894,24 +889,11 @@ static int __init kempld_init(void) > break; > if (id->matches[0].slot == DMI_NONE) > return -ENODEV; > - } > - > - ret = platform_driver_register(&kempld_driver); > - if (ret) > - return ret; > - > - /* > - * With synchronous probing the device should already be probed now. > - * If no device id is forced and also no ACPI definition for the > - * device was found, scan DMI table as fallback. > - * > - * If drivers_autoprobing is disabled and the device is found here, > - * only that device can be bound manually later. > - */ > - if (!kempld_pdev && !kempld_acpi_mode) > + } else { > dmi_check_system(kempld_dmi_table); > + } > > - return 0; > + return platform_driver_register(&kempld_driver); > } > > static void __exit kempld_exit(void) > -- > 2.25.1 >
| |