Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753210AbbDGHGP (ORCPT ); Tue, 7 Apr 2015 03:06:15 -0400 Received: from szxga03-in.huawei.com ([119.145.14.66]:21323 "EHLO szxga03-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751528AbbDGHGL (ORCPT ); Tue, 7 Apr 2015 03:06:11 -0400 Message-ID: <5523820D.2050500@hisilicon.com> Date: Tue, 7 Apr 2015 15:06:53 +0800 From: Xinwei Kong User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: Eduardo Valentin , Matt Porter CC: , , , , , , , , , , Subject: Re: [PATCH v2 1/2] dt-bindings: Document the hi6220 thermal sensor bindings References: <1427785162-15172-1-git-send-email-kong.kongxinwei@hisilicon.com> <1427785162-15172-2-git-send-email-kong.kongxinwei@hisilicon.com> <20150406140355.GI30984@beef> <5523530E.3000400@hisilicon.com> <20150407042727.GA30242@localhost.localdomain> In-Reply-To: <20150407042727.GA30242@localhost.localdomain> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.46.26.100] X-CFilter-Loop: Reflected X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020206.552381D9.014F,ss=1,re=0.001,recu=0.000,reip=0.000,cl=1,cld=1,fgs=0, ip=0.0.0.0, so=2013-05-26 15:14:31, dmn=2013-03-21 17:37:32 X-Mirapoint-Loop-Id: 158c2fc5c7d276423a7726373e0b81ca Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 4759 Lines: 128 On 2015/4/7 12:27, Eduardo Valentin wrote: > On Tue, Apr 07, 2015 at 11:46:22AM +0800, Xinwei Kong wrote: >> >> >> On 2015/4/6 22:03, Matt Porter wrote: >>> On Tue, Mar 31, 2015 at 02:59:21PM +0800, Xinwei Kong wrote: >>>> From: kongxinwei >>>> >>>> This adds documentation of device tree bindings for the >>>> thermal sensor controller of hi6220 SoC. >>>> >>>> Signed-off-by: Leo Yan >>>> Signed-off-by: kongxinwei >>>> --- >>>> .../bindings/thermal/hisilicon-thermal.txt | 45 ++++++++++++++++++++++ >>>> 1 file changed, 45 insertions(+) >>>> create mode 100644 Documentation/devicetree/bindings/thermal/hisilicon-thermal.txt >>>> >>>> diff --git a/Documentation/devicetree/bindings/thermal/hisilicon-thermal.txt b/Documentation/devicetree/bindings/thermal/hisilicon-thermal.txt >>>> new file mode 100644 >>>> index 0000000..ceb6e2e >>>> --- /dev/null >>>> +++ b/Documentation/devicetree/bindings/thermal/hisilicon-thermal.txt >>>> @@ -0,0 +1,45 @@ >>>> +* Hisilicon Thermal >>>> + >>>> +This driver is for hi6220 SoC which contain 4 thermal sensor. >>>> + >>>> + 1. sensor 0: local sensor; >>>> + 2. sensor 1: remote sensor for ACPU cluster 1; >>>> + 3. sensor 2: remote sensor for ACPU cluster 2; >>>> + 4. sensor 3: remote sensor for GPU. >>>> + >>>> +Every sensor use one child node to represent it, so thermal sensor include >>>> +parent node and four child node. The parent node describe common feature and >>>> +child node describe private feature for thermal sensor; >>>> + >>>> +** Required properties : >>>> + >>>> +- compatible: "hisilicon,tsensor". >>>> +- reg: physical base address of thermal sensor and length of memory mapped >>>> + region. >>>> +- interrupt: The interrupt number to the cpu. Defines the interrupt used >>>> + by SOCTHERM. >>>> +- clock-names: Input clock name, should be 'thermal_clk'. >>>> +- clocks: phandles for clock specified in "clock-names" property. >>>> +- #thermal-sensor-cells: Should be 1. See ./thermal.txt for a description. >>>> + >>>> +** Required properties for child nodes : >>>> + >>>> +- hisilicon,tsensor-id: the index of thermal sensor and use it to distinguish >>>> + thermal sensor. For example: <0> stands for local sensor; <1> stands for >>>> + acpu1 sensor; >>> >>> Please show an example illustrating why this property is needed. The >>> example below doesn't show any per sensor properties aside from the >>> sensor id. Other bindings with a similar sub-sensor hardware design like >>> tegra-soctherm and rockchip-thermal don't have a need for a vendor >>> specific property like this. Their drivers simply iterate over an id >>> index during thermal sensor registration. >>> >>> -Matt >>> >> Thermal Ip of hisilicon SoC can get four module temperature--local sensor, ACPU0 >> sensor, ACPU1 sensor and gpu sensor. In order to use these sensors, this driver >> will make use of sensor id to distinguish sensor in using process. >> >> These four sensors only get one sensor temperature at the same times. Because >> these sensor commonly use the same register by setting diff value to enable one >> sensor. howerver, sensor id is key flag for these diff sensor modules. >> >> If deleting sensor id, this driver will define some value which set diff sensor >> regitser and it difficult to understand sensor register operation. > > The above still do not explain why you need a specific property. > > Could you please check > Documentation/devicetree/bindings/thermal/thermal.txt file? > > There are several examples there on how to define DT nodes for the exact > case you describe above. > Good comments, thank you for Matt and Valentin and I will try to satisfy thermal.txt file to realize this driver. Please wait for the next version patches. Thanks Xinwei >> >> Thanks >> Xinwei >> >>>> + >>>> +Example : >>>> + >>>> + tsensor: tsensor@0,f7030700 { >>>> + compatible = "hisilicon,tsensor"; >>>> + reg = <0x0 0xf7030700 0x0 0x1000>; >>>> + interrupts = <0 7 0x4>; >>>> + clocks = <&clock_sys HI6220_TSENSOR_CLK>; >>>> + clock-names = "thermal_clk"; >>>> + #thermal-sensor-cells = <1>; >>>> + >>>> + local_sensor { >>>> + hisilicon,tsensor-id = <0>; >>>> + } >>>> + ....... >>>> + } >>>> -- >>>> 1.9.1 >>>> >>>> >>>> >>>> _______________________________________________ >>>> linux-arm-kernel mailing list >>>> linux-arm-kernel@lists.infradead.org >>>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel >>> >>> . >>> >> -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/