All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rajendra Nayak <rnayak@codeaurora.org>
To: Eduardo Valentin <edubezval@gmail.com>
Cc: agross@codeaurora.org, linux-arm-msm@vger.kernel.org,
	linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	rui.zhang@intel.com, sboyd@codeaurora.org,
	srinivas.kandagatla@linaro.org, nrajan@codeaurora.org,
	lina.iyer@linaro.org, punit.agrawal@arm.com
Subject: Re: [PATCH v4 1/8] thermal: qcom: tsens: Add a skeletal TSENS drivers
Date: Mon, 30 Nov 2015 12:39:39 +0530	[thread overview]
Message-ID: <565BF633.7070701@codeaurora.org> (raw)
In-Reply-To: <563AFCE9.8020000@codeaurora.org>

[]..

>>> +Optional properties:
>>> +- qcom,sensor-id: List of sensor instances used in a given SoC. A TSENS IP can
>>> +		  have a fixed number of sensors (like 11) but a given SoC can
>>> +		  use only 5 of these and they might not always the first 5. They
>>> +		  could be sensors 0, 1, 4, 8 and 9. This property is used to
>>> +		  describe the subset of the sensors used. If this property is
>>> +		  missing they are assumed to be the first 'n' sensors numbered
>>> +		  sequentially in which case the number of sensors defaults to
>>> +		  the number of slope values.
>>
>> Can you please elaborate a bit more on why you could not solve this
>> using the thermal sensor descriptor id?
>>
>>> +
>>> +Example:
>>> +tsens: thermal-sensor@900000 {
>>> +		compatible = "qcom,msm8916-tsens";
>>> +		nvmem-cells = <&tsens_caldata>, <&tsens_calsel>;
>>> +		nvmem-cell-names = "caldata", "calsel";
>>> +		qcom,tsens-slopes = <3200 3200 3200 3200 3200>;
>>


>>> +		qcom,sensor-id = <0 1 2 4 5>;
>>> +		#thermal-sensor-cells = <1>;
>>
>> How about if you simply make the sensor driver expose all sensors, then in the
>> thermal zone descriptor, you pick which sensor to use using the thermal sensor
>> descriptor (quoting the binding again):

Hi Eduardo,

What you suggested would work, except for that the calibration data in eeprom would
be available for only the _subset_ of sensors on the SoC. So the driver in some way would
need to know which exact sensors the eeprom data corresponds to.

If this does not seem like something which needs to be described in DT, I can have the 
data embedded into the driver so it gets picked based on the right compatibles.

regards,
Rajendra

>>
>> ocp {
>>         ...
>>         /*
>>          * A simple IC with several bandgap temperature sensors.
>>          */
>>         bandgap0: bandgap@0x0000ED00 {
>>                 ...
>>                 #thermal-sensor-cells = <1>;
>>         };
>> };
>>
>> thermal-zones {
>>         cpu_thermal: cpu-thermal {
>>                 polling-delay-passive = <250>; /* milliseconds */
>>                 polling-delay = <1000>; /* milliseconds */
>>
>>                                 /* sensor       ID */
>>                 thermal-sensors = <&bandgap0     0>;
>> 	};
>> 	gpu_thermal: gpu-thermal {
>>                 polling-delay-passive = <120>; /* milliseconds */
>>                 polling-delay = <1000>; /* milliseconds */
>>
>>                                 /* sensor       ID */
>>                 thermal-sensors = <&bandgap0     1>;
>>
>> 	};
>>
>> };
>>
>> Would that simplify ?
>>
>> BR,
>>
>> Eduardo Valentin


-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation

WARNING: multiple messages have this Message-ID (diff)
From: rnayak@codeaurora.org (Rajendra Nayak)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 1/8] thermal: qcom: tsens: Add a skeletal TSENS drivers
Date: Mon, 30 Nov 2015 12:39:39 +0530	[thread overview]
Message-ID: <565BF633.7070701@codeaurora.org> (raw)
In-Reply-To: <563AFCE9.8020000@codeaurora.org>

[]..

>>> +Optional properties:
>>> +- qcom,sensor-id: List of sensor instances used in a given SoC. A TSENS IP can
>>> +		  have a fixed number of sensors (like 11) but a given SoC can
>>> +		  use only 5 of these and they might not always the first 5. They
>>> +		  could be sensors 0, 1, 4, 8 and 9. This property is used to
>>> +		  describe the subset of the sensors used. If this property is
>>> +		  missing they are assumed to be the first 'n' sensors numbered
>>> +		  sequentially in which case the number of sensors defaults to
>>> +		  the number of slope values.
>>
>> Can you please elaborate a bit more on why you could not solve this
>> using the thermal sensor descriptor id?
>>
>>> +
>>> +Example:
>>> +tsens: thermal-sensor at 900000 {
>>> +		compatible = "qcom,msm8916-tsens";
>>> +		nvmem-cells = <&tsens_caldata>, <&tsens_calsel>;
>>> +		nvmem-cell-names = "caldata", "calsel";
>>> +		qcom,tsens-slopes = <3200 3200 3200 3200 3200>;
>>


>>> +		qcom,sensor-id = <0 1 2 4 5>;
>>> +		#thermal-sensor-cells = <1>;
>>
>> How about if you simply make the sensor driver expose all sensors, then in the
>> thermal zone descriptor, you pick which sensor to use using the thermal sensor
>> descriptor (quoting the binding again):

Hi Eduardo,

What you suggested would work, except for that the calibration data in eeprom would
be available for only the _subset_ of sensors on the SoC. So the driver in some way would
need to know which exact sensors the eeprom data corresponds to.

If this does not seem like something which needs to be described in DT, I can have the 
data embedded into the driver so it gets picked based on the right compatibles.

regards,
Rajendra

>>
>> ocp {
>>         ...
>>         /*
>>          * A simple IC with several bandgap temperature sensors.
>>          */
>>         bandgap0: bandgap at 0x0000ED00 {
>>                 ...
>>                 #thermal-sensor-cells = <1>;
>>         };
>> };
>>
>> thermal-zones {
>>         cpu_thermal: cpu-thermal {
>>                 polling-delay-passive = <250>; /* milliseconds */
>>                 polling-delay = <1000>; /* milliseconds */
>>
>>                                 /* sensor       ID */
>>                 thermal-sensors = <&bandgap0     0>;
>> 	};
>> 	gpu_thermal: gpu-thermal {
>>                 polling-delay-passive = <120>; /* milliseconds */
>>                 polling-delay = <1000>; /* milliseconds */
>>
>>                                 /* sensor       ID */
>>                 thermal-sensors = <&bandgap0     1>;
>>
>> 	};
>>
>> };
>>
>> Would that simplify ?
>>
>> BR,
>>
>> Eduardo Valentin


-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation

  reply	other threads:[~2015-11-30  7:09 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-09  9:41 [PATCH v4 0/8] qcom: Add support for TSENS driver Rajendra Nayak
2015-10-09  9:41 ` Rajendra Nayak
2015-10-09  9:41 ` [PATCH v4 1/8] thermal: qcom: tsens: Add a skeletal TSENS drivers Rajendra Nayak
2015-10-09  9:41   ` Rajendra Nayak
2015-11-02 20:30   ` Eduardo Valentin
2015-11-02 20:30     ` Eduardo Valentin
2015-11-05  6:53     ` Rajendra Nayak
2015-11-05  6:53       ` Rajendra Nayak
2015-11-30  7:09       ` Rajendra Nayak [this message]
2015-11-30  7:09         ` Rajendra Nayak
2015-12-10 14:58         ` Rajendra Nayak
2015-12-10 14:58           ` Rajendra Nayak
2015-11-02 21:09   ` Eduardo Valentin
2015-11-02 21:09     ` Eduardo Valentin
2015-10-09  9:41 ` [PATCH v4 2/8] thermal: qcom: tsens-8916: Add support for 8916 family of SoCs Rajendra Nayak
2015-10-09  9:41   ` Rajendra Nayak
2015-11-02 20:42   ` Eduardo Valentin
2015-11-02 20:42     ` Eduardo Valentin
2015-11-05  7:10     ` Rajendra Nayak
2015-11-05  7:10       ` Rajendra Nayak
2015-10-09  9:41 ` [PATCH v4 3/8] thermal: qcom: tsens-8974: Add support for 8974 " Rajendra Nayak
2015-10-09  9:41   ` Rajendra Nayak
2015-10-09  9:41 ` [PATCH v4 4/8] thermal: qcom: tsens-8960: Add support for 8960 " Rajendra Nayak
2015-10-09  9:41   ` Rajendra Nayak
2015-11-02 20:51   ` Eduardo Valentin
2015-11-02 20:51     ` Eduardo Valentin
2015-11-05  8:05     ` Rajendra Nayak
2015-11-05  8:05       ` Rajendra Nayak
2015-10-09  9:41 ` [PATCH v4 5/8] arm: dts: msm8974: Add thermal zones, tsens and qfprom nodes Rajendra Nayak
2015-10-09  9:41   ` Rajendra Nayak
2015-10-09  9:41 ` [PATCH v4 6/8] arm: dts: apq8064: " Rajendra Nayak
2015-10-09  9:41   ` Rajendra Nayak
2015-10-09  9:41 ` [PATCH v4 7/8] arm: dts: apq8084: " Rajendra Nayak
2015-10-09  9:41   ` Rajendra Nayak
2015-10-09  9:41 ` [PATCH v4 8/8] arm64: dts: msm8916: " Rajendra Nayak
2015-10-09  9:41   ` Rajendra Nayak
2015-11-02 20:13 ` [PATCH v4 0/8] qcom: Add support for TSENS driver Eduardo Valentin
2015-11-02 20:13   ` Eduardo Valentin
2015-11-02 20:14   ` Eduardo Valentin
2015-11-02 20:14     ` Eduardo Valentin
2015-11-05  6:51   ` Rajendra Nayak
2015-11-05  6:51     ` Rajendra Nayak
2015-11-02 20:54 ` Eduardo Valentin
2015-11-02 20:54   ` Eduardo Valentin
2015-11-05  8:09   ` Rajendra Nayak
2015-11-05  8:09     ` Rajendra Nayak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=565BF633.7070701@codeaurora.org \
    --to=rnayak@codeaurora.org \
    --cc=agross@codeaurora.org \
    --cc=edubezval@gmail.com \
    --cc=lina.iyer@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=nrajan@codeaurora.org \
    --cc=punit.agrawal@arm.com \
    --cc=rui.zhang@intel.com \
    --cc=sboyd@codeaurora.org \
    --cc=srinivas.kandagatla@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.