Re: [PATCH 2/2] thermal: qcom: tsens-v0_1: Add support for MSM8939

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

 



Hi Amit,

On Mon, Jul 27, 2020 at 12:06:54PM +0530, Amit Kucheria wrote:
> On Mon, Jul 27, 2020 at 11:56 AM Amit Kucheria <amit.kucheria@xxxxxxxxxx> wrote:
> >
> > On Tue, Jun 30, 2020 at 1:09 AM Shawn Guo <shawn.guo@xxxxxxxxxx> wrote:
> > >
> > > The TSENS integrated on MSM8939 is a v0_1 device with 10 sensors.
> > > Different from its predecessor MSM8916, where 'calib_sel' bits sit in
> > > separate qfprom word, MSM8939 has 'cailb' and 'calib_sel' bits mixed and
> > > spread on discrete offsets.  That's why all qfprom bits are read as one
> > > go and later mapped to calibration data for MSM8939.
> > >
> > > Signed-off-by: Shawn Guo <shawn.guo@xxxxxxxxxx>
> >
> > Acked-by: Amit Kucheria <amit.kucheria@xxxxxxxxxx>
> 
> Shawn,
> 
> Have you not sent the change to the tsens.yaml and 8939 DT yet or did
> I miss them?

You were copied on '[PATCH 1/2] dt-bindings: tsens: qcom: Document
MSM8939 compatible'.  For DTS change, I haven't sent them out.  In case
you want to have a look, here it is.

	thermal-zones {
		cpu0-thermal {
			polling-delay-passive = <250>;
			polling-delay = <1000>;

			thermal-sensors = <&tsens 5>;

			trips {
				cpu0_alert: trip0 {
					temperature = <75000>;
					hysteresis = <2000>;
					type = "passive";
				};
				cpu0_crit: trip1 {
					temperature = <110000>;
					hysteresis = <2000>;
					type = "critical";
				};
			};

			cooling-maps {
				map0 {
					trip = <&cpu0_alert>;
					cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
				};
			};
		};

		cpu1-thermal {
			polling-delay-passive = <250>;
			polling-delay = <1000>;

			thermal-sensors = <&tsens 6>;

			trips {
				cpu1_alert: trip0 {
					temperature = <75000>;
					hysteresis = <2000>;
					type = "passive";
				};
				cpu1_crit: trip1 {
					temperature = <110000>;
					hysteresis = <2000>;
					type = "critical";
				};
			};

			cooling-maps {
				map0 {
					trip = <&cpu1_alert>;
					cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
				};
			};
		};

		cpu2-thermal {
			polling-delay-passive = <250>;
			polling-delay = <1000>;

			thermal-sensors = <&tsens 7>;

			trips {
				cpu2_alert: trip0 {
					temperature = <75000>;
					hysteresis = <2000>;
					type = "passive";
				};
				cpu2_crit: trip1 {
					temperature = <110000>;
					hysteresis = <2000>;
					type = "critical";
				};
			};

			cooling-maps {
				map0 {
					trip = <&cpu2_alert>;
					cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
				};
			};
		};

		cpu3-thermal {
			polling-delay-passive = <250>;
			polling-delay = <1000>;

			thermal-sensors = <&tsens 8>;

			trips {
				cpu3_alert: trip0 {
					temperature = <75000>;
					hysteresis = <2000>;
					type = "passive";
				};
				cpu3_crit: trip1 {
					temperature = <110000>;
					hysteresis = <2000>;
					type = "critical";
				};
			};

			cooling-maps {
				map0 {
					trip = <&cpu3_alert>;
					cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
				};
			};
		};

		cpu4567-thermal {
			polling-delay-passive = <250>;
			polling-delay = <1000>;

			thermal-sensors = <&tsens 9>;

			trips {
				cpu4567_alert: trip0 {
					temperature = <75000>;
					hysteresis = <2000>;
					type = "passive";
				};
				cpu4567_crit: trip1 {
					temperature = <110000>;
					hysteresis = <2000>;
					type = "critical";
				};
			};

			cooling-maps {
				map0 {
					trip = <&cpu4567_alert>;
					cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
							 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
				};
			};
		};

	};

	qfprom: qfprom@5c000 {
		compatible = "qcom,qfprom";
		reg = <0x5c000 0x1000>;
		#address-cells = <1>;
		#size-cells = <1>;
		tsens_caldata: caldata@a0 {
			reg = <0xa0 0x5c>;
		};
	};

	tsens: thermal-sensor@4a9000 {
		compatible = "qcom,msm8939-tsens";
		reg = <0x4a9000 0x1000>, /* TM */
		      <0x4a8000 0x1000>; /* SROT */
		nvmem-cells = <&tsens_caldata>;
		nvmem-cell-names = "calib";
		#qcom,sensors = <10>;
		interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
		interrupt-names = "uplow";
		#thermal-sensor-cells = <1>;
	};

Shawn



[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