Re: [PATCH v3 5/9] x86/quirks: Convert DMI matching to use a table

Alexander Shishkin
2020-03-16T15:27:36Z

Andy Shevchenko <andriy.shevchenko@linux.intel.com> writes:

> +static const struct dmi_system_id x86_machine_table[] __initconst = {
> + {
> + .ident = "x86 Apple Macintosh",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "Apple Inc."),
> + },
> + .driver_data = &x86_apple_machine,
> + },
> + {
> + .ident = "x86 Apple Macintosh",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "Apple Computer, Inc."),
> + },
> + .driver_data = &x86_apple_machine,
> + },
> + {}
> +};
> +
> +static void __init early_platform_detect_quirk(void)
> +{
> + const struct dmi_system_id *id;
> +
> + id = dmi_first_match(x86_machine_table);
> + if (!id)
> + return;
> +
> + printk(KERN_DEBUG "Detected %s platform\n", id->ident);
> + *((bool *)id->driver_data) = true;

I'd suggest that x86_apple_machine and the ones that you add further
down this patchset, be made functions instead. That way you could at
first hide the global bool(s) and then replace this with something a
little more type safe.

Regards,
--
Alex