Re: [PATCH v4] hwmon: (tmp401) Add OF device ID table
From: Guenter Roeck
Date: Tue May 03 2022 - 09:44:13 EST
On Tue, May 03, 2022 at 01:43:33PM +0200, Camel Guo wrote:
> This driver doesn't have of_match_table. This makes the kernel module
> tmp401.ko lack alias patterns (e.g: of:N*T*Cti,tmp411) to match DT node
> of the supported devices hence this kernel module will not be
> automatically loaded.
>
> After adding of_match_table to this driver, the folllowing alias will be
> added into tmp401.ko.
> $ modinfo drivers/hwmon/tmp401.ko
> filename: drivers/hwmon/tmp401.ko
> ......
> author: Hans de Goede <hdegoede@xxxxxxxxxx>
> alias: of:N*T*Cti,tmp435C*
> alias: of:N*T*Cti,tmp435
> alias: of:N*T*Cti,tmp432C*
> alias: of:N*T*Cti,tmp432
> alias: of:N*T*Cti,tmp431C*
> alias: of:N*T*Cti,tmp431
> alias: of:N*T*Cti,tmp411C*
> alias: of:N*T*Cti,tmp411
> alias: of:N*T*Cti,tmp401C*
> alias: of:N*T*Cti,tmp401
> ......
>
> Fixes: af503716ac14 ("i2c: core: report OF style module alias for devices registered via OF")
> Signed-off-by: Camel Guo <camel.guo@xxxxxxxx>
Applied.
Thanks,
Guenter
> ---
>
> Notes:
> v4:
> - Rewrite commit message due to improper description in old one
> v3:
> - Copy commit message from commit 72fc64c68decf119466 ("hwmon: (tmp103)
> Add OF device ID table")
> - Add Fixes tag
> v2:
> - Put evidence and circumstances in commit message
>
> drivers/hwmon/tmp401.c | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
>
> base-commit: 38d741cb70b30741c0e802cbed7bd9cf4fd15fa4
>
> diff --git a/drivers/hwmon/tmp401.c b/drivers/hwmon/tmp401.c
> index b86d9df7105d..52c9e7d3f2ae 100644
> --- a/drivers/hwmon/tmp401.c
> +++ b/drivers/hwmon/tmp401.c
> @@ -708,10 +708,21 @@ static int tmp401_probe(struct i2c_client *client)
> return 0;
> }
>
> +static const struct of_device_id __maybe_unused tmp4xx_of_match[] = {
> + { .compatible = "ti,tmp401", },
> + { .compatible = "ti,tmp411", },
> + { .compatible = "ti,tmp431", },
> + { .compatible = "ti,tmp432", },
> + { .compatible = "ti,tmp435", },
> + { },
> +};
> +MODULE_DEVICE_TABLE(of, tmp4xx_of_match);
> +
> static struct i2c_driver tmp401_driver = {
> .class = I2C_CLASS_HWMON,
> .driver = {
> .name = "tmp401",
> + .of_match_table = of_match_ptr(tmp4xx_of_match),
> },
> .probe_new = tmp401_probe,
> .id_table = tmp401_id,