Re: [PATCH] dt-bindings: document qcom tsens thermal

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

 



On Tue, Jan 27, 2015 at 07:15:34AM +0000, Srinivas Kandagatla wrote:
> Hi Narendran,
> 
> What a coincidence.. I was just in the middle of forward porting the 
> same driver from 3.4 kernel :-) You look fast... :-)
> 
> On 27/01/15 04:08, Narendran Rajan wrote:
> > Add binding documentation for the QCOM tsens device tree node
> > ---
> >   .../devicetree/bindings/thermal/qcom-thermal.txt   | 58 ++++++++++++++++++++++
> >   1 file changed, 58 insertions(+)
> >   create mode 100644 Documentation/devicetree/bindings/thermal/qcom-thermal.txt
> >
> > diff --git a/Documentation/devicetree/bindings/thermal/qcom-thermal.txt b/Documentation/devicetree/bindings/thermal/qcom-thermal.txt
> > new file mode 100644
> > index 0000000..d2e99d6
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/thermal/qcom-thermal.txt
> > @@ -0,0 +1,58 @@
> > +* QCOM SoC Temperature Sensor (TSENS)
> > +
> > +Required properties:
> > +- compatible : "qcom,ipq806x-tsens"
> 
> I think this should be something like qcom,msm8960-tsens as that is the 
> first part where this tsens appeared.
> 
> > +- interrupts : The interrupt number to the cpu. The interrupt specifier format
> > +	       depends on the interrupt controller.
> > +- qcom,imem : Must contain phandle to imem syscon node
> Doing this way would work but not great, We should try to do this in an 
> abstracted way so that all the drivers who are in need of qfprom would 
> not add the same code all the time. I did send some WIP patches on msm 
> mailing list.
> 
> > +- qcom,tsens-base : Must contain phandle to clock controller node
> This is not correct, you dont need this property.
> 
> AFAIK for APQ8064 Tsens should be a child of gcc as some of the 
> registers are in already mapped by gcc. You should probably use this 
> patch + do a
> 	base = dev_get_regmap(dev->parent, NULL);
> 
> ------------------>cut<-----------------------------
>  From 87b71df272048fb3aaa89b77524e4b6426e5ddc5 Mon Sep 17 00:00:00 2001
> From: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>
> Date: Thu, 22 Jan 2015 14:03:53 +0000
> Subject: [PATCH] clk: qcom: gcc-msm8960: add child devices support.
> 
> This patch adds support to add child devices to gcc as some of the
> registers mapped by gcc are used by things like thermal sensors.
> 
> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>

Srinivas,

Can you please send this as proper separated patch?

> ---
>   drivers/clk/qcom/gcc-msm8960.c | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/clk/qcom/gcc-msm8960.c b/drivers/clk/qcom/gcc-msm8960.c
> index 0b61e8a..8307db3 100644
> --- a/drivers/clk/qcom/gcc-msm8960.c
> +++ b/drivers/clk/qcom/gcc-msm8960.c
> @@ -15,6 +15,7 @@
>   #include <linux/bitops.h>
>   #include <linux/err.h>
>   #include <linux/platform_device.h>
> +#include <linux/of_platform.h>
>   #include <linux/module.h>
>   #include <linux/of.h>
>   #include <linux/of_device.h>
> @@ -3666,7 +3667,8 @@ static int gcc_msm8960_probe(struct 
> platform_device *pdev)
>   		hfpll_l2.d = &hfpll_l2_8064_data;
>   	}
> 
> -	return qcom_cc_probe(pdev, match->data);
> +	qcom_cc_probe(pdev, match->data);
> +	return of_platform_populate(pdev->dev.of_node, NULL, NULL, &pdev->dev);
>   }
> 
>   static int gcc_msm8960_remove(struct platform_device *pdev)
> -- 
> 2.2.1
> 
> ------------------>cut<-----------------------------
> 
> > +- qcom,calib-offsets : Must contain offsets to primary and secondary
> > +			calibration data within imem
> > +- qcom,tsens-slopes : Must contain slope value for each of the sensors controlled
> > +			by this device
> > +- #thermal-sensor-cells : Should be 1. See ./thermal.txt for a description.
> > +
> > +Exiample:
> > +tsens: tsens-msm8960 {
> > +		compatible = "qcom,ipq806x-tsens";
> 
> > +		interrupts = <0 178 1>;
> > +		qcom,imem = <&imem>;
> > +		qcom,tsens-base = <&gcc>;
> > +		qcom,calib-offsets = <0x400 0x410>;
> > +		qcom,tsens-slopes = <1176 1176 1154 1176 1111
> > +				1132 1132 1199 1132 1199
> > +				1132>;
> > +		#thermal-sensor-cells = <1>;
> > +	};
> > +
> > +Example: referring to thermal sensors:
> > +thermal-zones {
> > +	cpu_thermal: cpu_thermal {
> > +		polling-delay-passive = <1000>; /* milliseconds */
> > +		polling-delay = <5000>; /* milliseconds */
> > +
> > +		/* sensor	ID */
> > +		thermal-sensors = <&tsens	1>;
> > +
> > +		trips {
> > +			cpu_alert0: cpu_alert {
> > +				temperature = <80000>; /* millicelsius */
> > +				hysteresis = <2000>; /* millicelsius */
> > +				type = "passive";
> > +			};
> > +			cpu_crit: cpu_crit {
> > +				temperature = <120000>; /* millicelsius */
> > +				hysteresis = <2000>; /* millicelsius */
> > +				type = "critical";
> > +			};
> > +		};
> > +
> > +		cooling-maps {
> > +			map0 {
> > +				trip = <&cpu_alert0>;
> > +				cooling-device =
> > +					<&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
> > +			};
> > +		};
> > +	};
> > +};
> >
> 
> ---srini
--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux