linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Aisheng Dong <aisheng.dong@nxp.com>
To: Anson Huang <anson.huang@nxp.com>, Rob Herring <robh@kernel.org>,
	"edubezval@gmail.com" <edubezval@gmail.com>
Cc: "mark.rutland@arm.com" <mark.rutland@arm.com>,
	"shawnguo@kernel.org" <shawnguo@kernel.org>,
	"s.hauer@pengutronix.de" <s.hauer@pengutronix.de>,
	"kernel@pengutronix.de" <kernel@pengutronix.de>,
	"festevam@gmail.com" <festevam@gmail.com>,
	"catalin.marinas@arm.com" <catalin.marinas@arm.com>,
	"will.deacon@arm.com" <will.deacon@arm.com>,
	"rui.zhang@intel.com" <rui.zhang@intel.com>,
	"edubezval@gmail.com" <edubezval@gmail.com>,
	"daniel.lezcano@linaro.org" <daniel.lezcano@linaro.org>,
	"ulf.hansson@linaro.org" <ulf.hansson@linaro.org>,
	"sboyd@kernel.org" <sboyd@kernel.org>,
	Daniel Baluta <daniel.baluta@nxp.com>,
	Andy Gross <andy.gross@linaro.org>,
	"horms+renesas@verge.net.au" <horms+renesas@verge.net.au>,
	"heiko@sntech.de" <heiko@sntech.de>,
	"arnd@arndb.de" <arnd@arndb.de>,
	"maxime.ripard@bootlin.com" <maxime.ripard@bootlin.com>,
	"bjorn.andersson@linaro.org" <bjorn.andersson@linaro.org>,
	"jagan@amarulasolutions.com" <jagan@amarulasolutions.com>,
	"enric.balletbo@collabora.com" <enric.balletbo@collabora.com>,
	"marc.w.gonzalez@free.fr" <marc.w.gonzalez@free.fr>,
	"olof@lixom.net" <olof@lixom.net>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
	dl-linux-imx <linux-imx@nxp.com>
Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal binding
Date: Wed, 6 Mar 2019 14:40:22 +0000	[thread overview]
Message-ID: <AM0PR04MB4211F00DF5BF24BB982AFB3280730@AM0PR04MB4211.eurprd04.prod.outlook.com> (raw)
In-Reply-To: <DB3PR0402MB3916D67D2CA6C33D27371F58F5760@DB3PR0402MB3916.eurprd04.prod.outlook.com>

[...]

> > > > > diff --git
> > > > > a/Documentation/devicetree/bindings/arm/freescale/fsl,scu.txt
> > > > > b/Documentation/devicetree/bindings/arm/freescale/fsl,scu.txt
> > > > > index 72d481c..855270b 100644
> > > > > ---
> > > > > a/Documentation/devicetree/bindings/arm/freescale/fsl,scu.txt
> > > > > +++ b/Documentation/devicetree/bindings/arm/freescale/fsl,scu.tx
> > > > > +++ t
> > > > > @@ -122,6 +122,21 @@ RTC bindings based on SCU Message Protocol
> > > > > Required properties:
> > > > >  - compatible: should be "fsl,imx8qxp-sc-rtc";
> > > > >
> > > > > +Thermal bindings based on SCU Message Protocol
> > > > > +------------------------------------------------------------
> > > > > +
> > > > > +Required properties:
> > > > > +- compatible:                      Should be :
> > > > > +                             "fsl,imx8qxp-sc-thermal"
> > > > > +                           followed by "fsl,imx-sc-thermal";
> > > > > +
> > > > > +- #thermal-sensor-cells:   See
> > > > Documentation/devicetree/bindings/thermal/thermal.txt
> > > > > +                           for a description.
> > > > > +
> > > > > +- imx,sensor-resource-id:  A single integer for single thermal
> > > > > +zone's
> > > > resource ID or
> > > > > +                           an array of integers to specify each
> > > > > + thermal
> > > > zone's sensor
> > > > > +                           resource ID.
> > > >
> > > > Can't you put the resource ids in the thermal-sensor cells? Why do
> > > > you need to list them here?
> > >
> > > For the thermal-sensor cells, if you meant the argument of tsens
> > > phandle, then the reason is that argument is for sensor index
> > > starting from 0, previous I use it for our resource ID, but it looks
> > > confused, since user will think there are many sensors there per Eduardo's
> comment.
> > >
> > > +                       thermal-sensors = <&tsens 0>;
> > >
> > > If you meant putting it in each thermal sensor node instead of "tsens"
> > > node, then in previous patch series, I put this "
> > > imx,sensor-resource-id " property in each thermal sensor node, but
> > > the thermal sensor nodes are parsed by common thermal framework,
> > > thermal driver will need to find the thermal zone node and go
> > > through every child node to get the resource id again, so Eduardo
> > > suggested to put it in
> > our platform tsens node, that makes our thermal driver code much more
> > simple.
> >
> > The phandle args are meant to be an id typically. There's absolutely
> > no requirement they are 0-N based. They often are because things like
> > interrupts are 0-N or clocks have no h/w id. If you already have an id, use it.
> > Don't invent your own.
> 
> At the beginning, I put the HW resource ID in the "tsens" phandle argument of
> "thermal-sensors" node, see  below patch I sent before, the benefit is I do
> NOT need to add new property for passing HW resource ID to driver, the
> disadvantage is, I have to parse the thermal_zones' each child node and get the
> HW resource ID from phandle argument(searing thermal_zones node and go
> through all its child node, and get the phandle argument), they are by default
> ONLY parsed by thermal core driver. When we register thermal zone, we have
> to pass the HW resource ID when calling
> devm_thermal_zone_of_sensor_register(), if we add our own property to pass
> the HW resource ID, then no need to do so, we just pass the index 0-N for each
> thermal sensors in devicetree which also with phandle argument 0-N. So using
> our own property makes the driver much more simple.
> 
> So, @Eduardo, which direction I should go? Looks like Rob suggests just put
> the HW resource ID in the phandle argument like what I did at the beginning,
> can you advise?
> 

I prefer to Rob suggested way that directly use resource id for thermal-sensor cells.

For SW implementation, we can either parse the sensor resource id from device tree
or statically define it in driver.
Parsing from DT could make the driver more generic and do not need change for the number
Of sensor changes in furture SoCs which probably is better.

One more suggestion is please list all supported sensors in binding doc to avoid confusing.

Regards
Dong Aisheng

> Thanks,
> Anson.
> 
> https://patchwork.kernel.org/patch/10703849/
> > +	thermal_zones: thermal-zones {
> > +		cpu-thermal0 {
> > +			polling-delay-passive = <250>;
> > +			polling-delay = <2000>;
> > +			thermal-sensors = <&tsens 355>;
> > +			trips {
> > +				cpu_alert0: trip0 {
> > +					temperature = <107000>;
> > +					hysteresis = <2000>;
> > +					type = "passive";
> > +				};
> 
> >
> > Rob

      parent reply	other threads:[~2019-03-06 14:40 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-27  8:46 [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal binding Anson Huang
2019-02-27  8:46 ` [PATCH V10 2/4] thermal: imx_sc: add i.MX system controller thermal support Anson Huang
2019-02-27  8:46 ` [PATCH V10 3/4] defconfig: arm64: " Anson Huang
2019-02-27  8:46 ` [PATCH V10 4/4] arm64: dts: imx: add i.MX8QXP " Anson Huang
2019-02-27 23:54 ` [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal binding Rob Herring
2019-02-28  0:47   ` Anson Huang
2019-02-28 14:49     ` Rob Herring
2019-03-01  1:41       ` Anson Huang
2019-03-06  5:27         ` Anson Huang
2019-03-13  8:12           ` Anson Huang
2019-03-26  2:44             ` Anson Huang
2019-04-09  5:28               ` Anson Huang
2019-04-09  7:28                 ` Zhang Rui
2019-04-10  6:05                   ` [EXT] " Anson Huang
2019-04-10  7:44                     ` Anson Huang
2019-03-06 14:40         ` Aisheng Dong [this message]

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=AM0PR04MB4211F00DF5BF24BB982AFB3280730@AM0PR04MB4211.eurprd04.prod.outlook.com \
    --to=aisheng.dong@nxp.com \
    --cc=andy.gross@linaro.org \
    --cc=anson.huang@nxp.com \
    --cc=arnd@arndb.de \
    --cc=bjorn.andersson@linaro.org \
    --cc=catalin.marinas@arm.com \
    --cc=daniel.baluta@nxp.com \
    --cc=daniel.lezcano@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=edubezval@gmail.com \
    --cc=enric.balletbo@collabora.com \
    --cc=festevam@gmail.com \
    --cc=heiko@sntech.de \
    --cc=horms+renesas@verge.net.au \
    --cc=jagan@amarulasolutions.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-imx@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=marc.w.gonzalez@free.fr \
    --cc=mark.rutland@arm.com \
    --cc=maxime.ripard@bootlin.com \
    --cc=olof@lixom.net \
    --cc=robh@kernel.org \
    --cc=rui.zhang@intel.com \
    --cc=s.hauer@pengutronix.de \
    --cc=sboyd@kernel.org \
    --cc=shawnguo@kernel.org \
    --cc=ulf.hansson@linaro.org \
    --cc=will.deacon@arm.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).