Message ID | 20240329075630.2069474-19-tzungbi@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Commit | d8db2c6d7b0e5ca5e64c747236b2464d0c1661f3 |
Headers | show |
Series | platform/chrome: provide ID table for avoiding fallback match | expand |
On 29/03/2024 08:56, Tzung-Bi Shih wrote: > Instead of using fallback driver name match, provide ID table[1] for the > primary match. > > [1]: https://elixir.bootlin.com/linux/v6.8/source/drivers/base/platform.c#L1353 > > Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org> > --- Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org> Best regards, Krzysztof
On Fri, Mar 29, 2024 at 03:56:30PM +0800, Tzung-Bi Shih wrote: > Instead of using fallback driver name match, provide ID table[1] for the > primary match. > > [1]: https://elixir.bootlin.com/linux/v6.8/source/drivers/base/platform.c#L1353 > > Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org> Reviewed-by: Benson Leung <bleung@chromium.org> > --- > drivers/platform/chrome/wilco_ec/core.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/drivers/platform/chrome/wilco_ec/core.c b/drivers/platform/chrome/wilco_ec/core.c > index 9b59a1bed286..3e6b6cd81a9b 100644 > --- a/drivers/platform/chrome/wilco_ec/core.c > +++ b/drivers/platform/chrome/wilco_ec/core.c > @@ -10,6 +10,7 @@ > #include <linux/acpi.h> > #include <linux/device.h> > #include <linux/ioport.h> > +#include <linux/mod_devicetable.h> > #include <linux/module.h> > #include <linux/platform_data/wilco-ec.h> > #include <linux/platform_device.h> > @@ -150,6 +151,12 @@ static const struct acpi_device_id wilco_ec_acpi_device_ids[] = { > }; > MODULE_DEVICE_TABLE(acpi, wilco_ec_acpi_device_ids); > > +static const struct platform_device_id wilco_ec_id[] = { > + { DRV_NAME, 0 }, > + {} > +}; > +MODULE_DEVICE_TABLE(platform, wilco_ec_id); > + > static struct platform_driver wilco_ec_driver = { > .driver = { > .name = DRV_NAME, > @@ -157,6 +164,7 @@ static struct platform_driver wilco_ec_driver = { > }, > .probe = wilco_ec_probe, > .remove_new = wilco_ec_remove, > + .id_table = wilco_ec_id, > }; > > module_platform_driver(wilco_ec_driver); > @@ -165,4 +173,3 @@ MODULE_AUTHOR("Nick Crews <ncrews@chromium.org>"); > MODULE_AUTHOR("Duncan Laurie <dlaurie@chromium.org>"); > MODULE_LICENSE("GPL v2"); > MODULE_DESCRIPTION("ChromeOS Wilco Embedded Controller driver"); > -MODULE_ALIAS("platform:" DRV_NAME); > -- > 2.44.0.478.gd926399ef9-goog > >
diff --git a/drivers/platform/chrome/wilco_ec/core.c b/drivers/platform/chrome/wilco_ec/core.c index 9b59a1bed286..3e6b6cd81a9b 100644 --- a/drivers/platform/chrome/wilco_ec/core.c +++ b/drivers/platform/chrome/wilco_ec/core.c @@ -10,6 +10,7 @@ #include <linux/acpi.h> #include <linux/device.h> #include <linux/ioport.h> +#include <linux/mod_devicetable.h> #include <linux/module.h> #include <linux/platform_data/wilco-ec.h> #include <linux/platform_device.h> @@ -150,6 +151,12 @@ static const struct acpi_device_id wilco_ec_acpi_device_ids[] = { }; MODULE_DEVICE_TABLE(acpi, wilco_ec_acpi_device_ids); +static const struct platform_device_id wilco_ec_id[] = { + { DRV_NAME, 0 }, + {} +}; +MODULE_DEVICE_TABLE(platform, wilco_ec_id); + static struct platform_driver wilco_ec_driver = { .driver = { .name = DRV_NAME, @@ -157,6 +164,7 @@ static struct platform_driver wilco_ec_driver = { }, .probe = wilco_ec_probe, .remove_new = wilco_ec_remove, + .id_table = wilco_ec_id, }; module_platform_driver(wilco_ec_driver); @@ -165,4 +173,3 @@ MODULE_AUTHOR("Nick Crews <ncrews@chromium.org>"); MODULE_AUTHOR("Duncan Laurie <dlaurie@chromium.org>"); MODULE_LICENSE("GPL v2"); MODULE_DESCRIPTION("ChromeOS Wilco Embedded Controller driver"); -MODULE_ALIAS("platform:" DRV_NAME);
Instead of using fallback driver name match, provide ID table[1] for the primary match. [1]: https://elixir.bootlin.com/linux/v6.8/source/drivers/base/platform.c#L1353 Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org> --- drivers/platform/chrome/wilco_ec/core.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)