2012-08-03 12:36:35

by Sourav Poddar

[permalink] [raw]
Subject: [PATCH] hwmon: tmp102: Add device tree support

update tmp102 temperature sensor to also use device tree.

Cc: Benoit Cousson <[email protected]>
Cc: Felipe Balbi <[email protected]>
Cc: Santosh Shilimkar <[email protected]>
Acked-by: Felipe Balbi <[email protected]>
Signed-off-by: Sourav Poddar <[email protected]>
---
drivers/hwmon/tmp102.c | 14 +++++++++++++-
1 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/drivers/hwmon/tmp102.c b/drivers/hwmon/tmp102.c
index 0d466b9..a8a9060 100644
--- a/drivers/hwmon/tmp102.c
+++ b/drivers/hwmon/tmp102.c
@@ -26,6 +26,7 @@
#include <linux/err.h>
#include <linux/mutex.h>
#include <linux/device.h>
+#include <linux/of.h>

#define DRIVER_NAME "tmp102"

@@ -284,8 +285,19 @@ static const struct i2c_device_id tmp102_id[] = {
};
MODULE_DEVICE_TABLE(i2c, tmp102_id);

+#ifdef CONFIG_OF
+static const struct of_device_id temperature_dt_match[] = {
+ { .compatible = "ti,tmp102" },
+ {},
+};
+MODULE_DEVICE_TABLE(of, temperature_dt_match);
+#endif
+
static struct i2c_driver tmp102_driver = {
- .driver.name = DRIVER_NAME,
+ .driver = {
+ .name = DRIVER_NAME,
+ .of_match_table = of_match_ptr(temperature_dt_match),
+ },
.driver.pm = TMP102_DEV_PM_OPS,
.probe = tmp102_probe,
.remove = __devexit_p(tmp102_remove),
--
1.7.1


2012-08-03 14:57:44

by Benoit Cousson

[permalink] [raw]
Subject: Re: [PATCH] hwmon: tmp102: Add device tree support

Hi Sourav,

On 08/03/2012 02:35 PM, Sourav Poddar wrote:
> update tmp102 temperature sensor to also use device tree.
>
> Cc: Benoit Cousson <[email protected]>
> Cc: Felipe Balbi <[email protected]>
> Cc: Santosh Shilimkar <[email protected]>
> Acked-by: Felipe Balbi <[email protected]>
> Signed-off-by: Sourav Poddar <[email protected]>
> ---
> drivers/hwmon/tmp102.c | 14 +++++++++++++-
> 1 files changed, 13 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/hwmon/tmp102.c b/drivers/hwmon/tmp102.c
> index 0d466b9..a8a9060 100644
> --- a/drivers/hwmon/tmp102.c
> +++ b/drivers/hwmon/tmp102.c
> @@ -26,6 +26,7 @@
> #include <linux/err.h>
> #include <linux/mutex.h>
> #include <linux/device.h>
> +#include <linux/of.h>
>
> #define DRIVER_NAME "tmp102"
>
> @@ -284,8 +285,19 @@ static const struct i2c_device_id tmp102_id[] = {
> };
> MODULE_DEVICE_TABLE(i2c, tmp102_id);
>
> +#ifdef CONFIG_OF
> +static const struct of_device_id temperature_dt_match[] = {
> + { .compatible = "ti,tmp102" },

Are you sure this is needed for this device?

There is an automatic binding done for I2C devices in the of_i2c core
code. So in theory, DT will be able to bind to any I2C device using the
already existing table: MODULE_DEVICE_TABLE(i2c, tmp102_id).

So I think this patch should not be needed.

Regards,
Benoit

2012-08-06 07:35:36

by Sourav Poddar

[permalink] [raw]
Subject: Re: [PATCH] hwmon: tmp102: Add device tree support

Hi Benoit,

On Fri, Aug 3, 2012 at 8:26 PM, Benoit Cousson <[email protected]> wrote:
> Hi Sourav,
>
> On 08/03/2012 02:35 PM, Sourav Poddar wrote:
>> update tmp102 temperature sensor to also use device tree.
>>
>> Cc: Benoit Cousson <[email protected]>
>> Cc: Felipe Balbi <[email protected]>
>> Cc: Santosh Shilimkar <[email protected]>
>> Acked-by: Felipe Balbi <[email protected]>
>> Signed-off-by: Sourav Poddar <[email protected]>
>> ---
>> drivers/hwmon/tmp102.c | 14 +++++++++++++-
>> 1 files changed, 13 insertions(+), 1 deletions(-)
>>
>> diff --git a/drivers/hwmon/tmp102.c b/drivers/hwmon/tmp102.c
>> index 0d466b9..a8a9060 100644
>> --- a/drivers/hwmon/tmp102.c
>> +++ b/drivers/hwmon/tmp102.c
>> @@ -26,6 +26,7 @@
>> #include <linux/err.h>
>> #include <linux/mutex.h>
>> #include <linux/device.h>
>> +#include <linux/of.h>
>>
>> #define DRIVER_NAME "tmp102"
>>
>> @@ -284,8 +285,19 @@ static const struct i2c_device_id tmp102_id[] = {
>> };
>> MODULE_DEVICE_TABLE(i2c, tmp102_id);
>>
>> +#ifdef CONFIG_OF
>> +static const struct of_device_id temperature_dt_match[] = {
>> + { .compatible = "ti,tmp102" },
>
> Are you sure this is needed for this device?
>
> There is an automatic binding done for I2C devices in the of_i2c core
> code. So in theory, DT will be able to bind to any I2C device using the
> already existing table: MODULE_DEVICE_TABLE(i2c, tmp102_id).
>
> So I think this patch should not be needed.
>
Indeed. Checked it just now, this patch is not required and the already
existing table is enough for the device to work fine.

Thanks for the information.

This patch is abandoned.
~Sourav
> Regards,
> Benoit
>