Re: [PATCHv2 1/1] thermal: of: improve of-thermal sensor registration API

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 11/18/2014 12:44 AM, Eduardo Valentin wrote:
Different drivers request API extensions in of-thermal. For this reason,
additional callbacks are required to fit the new drivers needs.

The current API implementation expects the registering sensor driver
to provide a get_temp and get_trend callbacks as function parameters.
As the amount of callbacks is growing, this patch changes the existing
implementation to use a .ops field to hold all the of thermal callbacks
to sensor drivers.

This patch also changes the existing of-thermal users to fit the new
API design. No functional change is introduced in this patch.

Cc: Alexandre Courbot <gnurou@xxxxxxxxx>
Cc: devicetree@xxxxxxxxxxxxxxx
Cc: Grant Likely <grant.likely@xxxxxxxxxx>
Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
Cc: Jean Delvare <jdelvare@xxxxxxx>
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: linux-pm@xxxxxxxxxxxxxxx
Cc: linux-tegra@xxxxxxxxxxxxxxx
Cc: lm-sensors@xxxxxxxxxxxxxx
Cc: Rob Herring <robh+dt@xxxxxxxxxx>
Cc: Stephen Warren <swarren@xxxxxxxxxxxxx>
Cc: Thierry Reding <thierry.reding@xxxxxxxxx>
Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>
---

Difference from V1:
  - Fix error handling when .get_trend is not provided.

---
  drivers/hwmon/lm75.c                               |  9 +++--
  drivers/hwmon/ntc_thermistor.c                     |  6 +++-
  drivers/hwmon/tmp102.c                             |  6 +++-
  drivers/thermal/of-thermal.c                       | 41 +++++++++-------------
  drivers/thermal/tegra_soctherm.c                   |  7 ++--
  drivers/thermal/ti-soc-thermal/ti-thermal-common.c |  8 +++--
  include/linux/thermal.h                            | 24 +++++++++----
  7 files changed, 62 insertions(+), 39 deletions(-)

...
diff --git a/drivers/thermal/tegra_soctherm.c b/drivers/thermal/tegra_soctherm.c
index 70f7e9e..893c39c 100644
--- a/drivers/thermal/tegra_soctherm.c
+++ b/drivers/thermal/tegra_soctherm.c
@@ -317,6 +317,10 @@ static int tegra_thermctl_get_temp(void *data, long *out_temp)
  	return 0;
  }

+static const struct thermal_zone_of_device_ops tegra_of_thermal_ops = {
+	.get_trend = tegra_thermctl_get_temp,
+};

This should probably read ".get_temp = tegra_thermctl_get_temp" instead of .get_trend :)

...

Cheers,
Mikko

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux