Message ID | 20240329075630.2069474-13-tzungbi@kernel.org (mailing list archive) |
---|---|
State | Handled Elsewhere, archived |
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:24PM +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/cros_ec_lightbar.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/drivers/platform/chrome/cros_ec_lightbar.c b/drivers/platform/chrome/cros_ec_lightbar.c > index 6677cc6c4984..1e69f61115a4 100644 > --- a/drivers/platform/chrome/cros_ec_lightbar.c > +++ b/drivers/platform/chrome/cros_ec_lightbar.c > @@ -9,6 +9,7 @@ > #include <linux/fs.h> > #include <linux/kobject.h> > #include <linux/kstrtox.h> > +#include <linux/mod_devicetable.h> > #include <linux/module.h> > #include <linux/platform_data/cros_ec_commands.h> > #include <linux/platform_data/cros_ec_proto.h> > @@ -594,6 +595,12 @@ static int __maybe_unused cros_ec_lightbar_suspend(struct device *dev) > static SIMPLE_DEV_PM_OPS(cros_ec_lightbar_pm_ops, > cros_ec_lightbar_suspend, cros_ec_lightbar_resume); > > +static const struct platform_device_id cros_ec_lightbar_id[] = { > + { DRV_NAME, 0 }, > + {} > +}; > +MODULE_DEVICE_TABLE(platform, cros_ec_lightbar_id); > + > static struct platform_driver cros_ec_lightbar_driver = { > .driver = { > .name = DRV_NAME, > @@ -602,10 +609,10 @@ static struct platform_driver cros_ec_lightbar_driver = { > }, > .probe = cros_ec_lightbar_probe, > .remove_new = cros_ec_lightbar_remove, > + .id_table = cros_ec_lightbar_id, > }; > > module_platform_driver(cros_ec_lightbar_driver); > > MODULE_LICENSE("GPL"); > MODULE_DESCRIPTION("Expose the Chromebook Pixel's lightbar to userspace"); > -MODULE_ALIAS("platform:" DRV_NAME); > -- > 2.44.0.478.gd926399ef9-goog > >
diff --git a/drivers/platform/chrome/cros_ec_lightbar.c b/drivers/platform/chrome/cros_ec_lightbar.c index 6677cc6c4984..1e69f61115a4 100644 --- a/drivers/platform/chrome/cros_ec_lightbar.c +++ b/drivers/platform/chrome/cros_ec_lightbar.c @@ -9,6 +9,7 @@ #include <linux/fs.h> #include <linux/kobject.h> #include <linux/kstrtox.h> +#include <linux/mod_devicetable.h> #include <linux/module.h> #include <linux/platform_data/cros_ec_commands.h> #include <linux/platform_data/cros_ec_proto.h> @@ -594,6 +595,12 @@ static int __maybe_unused cros_ec_lightbar_suspend(struct device *dev) static SIMPLE_DEV_PM_OPS(cros_ec_lightbar_pm_ops, cros_ec_lightbar_suspend, cros_ec_lightbar_resume); +static const struct platform_device_id cros_ec_lightbar_id[] = { + { DRV_NAME, 0 }, + {} +}; +MODULE_DEVICE_TABLE(platform, cros_ec_lightbar_id); + static struct platform_driver cros_ec_lightbar_driver = { .driver = { .name = DRV_NAME, @@ -602,10 +609,10 @@ static struct platform_driver cros_ec_lightbar_driver = { }, .probe = cros_ec_lightbar_probe, .remove_new = cros_ec_lightbar_remove, + .id_table = cros_ec_lightbar_id, }; module_platform_driver(cros_ec_lightbar_driver); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("Expose the Chromebook Pixel's lightbar to userspace"); -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/cros_ec_lightbar.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)