Re: [PATCH] hwmon: (tmp401) Add of_match_table

From: Camel Guo
Date: Mon May 02 2022 - 05:20:54 EST


On 4/29/22 18:22, Guenter Roeck wrote:
On 4/29/22 02:52, Camel Guo wrote:
Add the missing of_match_table to allow device tree probing


I2C devices probe based on the I2C device table even on devicetree systems,
so this isn't a correct statement. Please provide evidence and explain
in detail the circumstances where this does not work.

Commit message was updated in v2. Please check out v2 instead.


Guenter

Signed-off-by: Camel Guo <camel.guo@xxxxxxxx>
---
   drivers/hwmon/tmp401.c | 11 +++++++++++
   1 file changed, 11 insertions(+)

diff --git a/drivers/hwmon/tmp401.c b/drivers/hwmon/tmp401.c
index a58a2f31a07e..cc0a1c219b1f 100644
--- a/drivers/hwmon/tmp401.c
+++ b/drivers/hwmon/tmp401.c
@@ -750,10 +750,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,