NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core inside as
system controller, the system controller is in charge of system
power, clock and thermal sensors etc. management, Linux kernel
has to communicate with system controller via MU (message unit)
IPC to get temperature from thermal sensors, this patch adds
binding doc for i.MX system controller thermal driver.
Signed-off-by: Anson Huang <[email protected]>
---
Changes since V9:
- change #thermal-sensor-cells value in example to 1, since there are other
thermal sensors inside system controller, it is just because there are still
some issue, so system controller does NOT expose them for now, they could
be exposed later, so it should be 1 from HW perspective.
---
.../devicetree/bindings/arm/freescale/fsl,scu.txt | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
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.txt
@@ -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.
+
Example (imx8qxp):
-------------
lsio_mu1: mailbox@5d1c0000 {
@@ -168,6 +183,12 @@ firmware {
rtc: rtc {
compatible = "fsl,imx8qxp-sc-rtc";
};
+
+ tsens: thermal-sensor {
+ compatible = "fsl,imx8qxp-sc-thermal", "fsl,imx-sc-thermal";
+ #thermal-sensor-cells = <1>;
+ imx,sensor-resource-id = <IMX_SC_R_SYSTEM>;
+ };
};
};
--
2.7.4
This patch enables CONFIG_IMX_SC_THERMAL as module.
Signed-off-by: Anson Huang <[email protected]>
---
No changes.
---
arch/arm64/configs/defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 2d9c390..52d503e 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -413,6 +413,7 @@ CONFIG_SENSORS_INA2XX=m
CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
CONFIG_CPU_THERMAL=y
CONFIG_THERMAL_EMULATION=y
+CONFIG_IMX_SC_THERMAL=m
CONFIG_ROCKCHIP_THERMAL=m
CONFIG_RCAR_THERMAL=y
CONFIG_RCAR_GEN3_THERMAL=y
--
2.7.4
Add i.MX8QXP CPU thermal zone support.
Signed-off-by: Anson Huang <[email protected]>
---
Changes since V9:
- change #thermal-sensor-cells value in to 1, since there are other
thermal sensors inside system controller, it is just because there are still
some issue, so system controller does NOT expose them for now, they could
be exposed later, so it should be 1 from HW perspective.
---
arch/arm64/boot/dts/freescale/imx8qxp.dtsi | 34 ++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
index 4c3dd95..f532cba 100644
--- a/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qxp.dtsi
@@ -10,6 +10,7 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/pinctrl/pads-imx8qxp.h>
+#include <dt-bindings/thermal/thermal.h>
/ {
interrupt-parent = <&gic>;
@@ -116,6 +117,12 @@
rtc: rtc {
compatible = "fsl,imx8qxp-sc-rtc";
};
+
+ tsens: thermal-sensor {
+ compatible = "fsl,imx8qxp-sc-thermal", "fsl,imx-sc-thermal";
+ #thermal-sensor-cells = <1>;
+ imx,sensor-resource-id = <IMX_SC_R_SYSTEM>;
+ };
};
timer {
@@ -443,4 +450,31 @@
power-domains = <&pd IMX_SC_R_GPIO_7>;
};
};
+
+ thermal_zones: thermal-zones {
+ cpu-thermal0 {
+ polling-delay-passive = <250>;
+ polling-delay = <2000>;
+ thermal-sensors = <&tsens 0>;
+ trips {
+ cpu_alert0: trip0 {
+ temperature = <107000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+ cpu_crit0: trip1 {
+ temperature = <127000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+ cooling-maps {
+ map0 {
+ trip = <&cpu_alert0>;
+ cooling-device =
+ <&A35_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
+ };
+ };
};
--
2.7.4
i.MX8QXP is an ARMv8 SoC which has a Cortex-M4 system controller
inside, the system controller is in charge of controlling power,
clock and thermal sensors etc..
This patch adds i.MX system controller thermal driver support,
Linux kernel has to communicate with system controller via MU
(message unit) IPC to get each thermal sensor's temperature,
it supports multiple sensors which are passed from device tree,
please see the binding doc for details.
Signed-off-by: Anson Huang <[email protected]>
---
No changes since V9.
---
drivers/thermal/Kconfig | 11 ++++
drivers/thermal/Makefile | 1 +
drivers/thermal/imx_sc_thermal.c | 139 +++++++++++++++++++++++++++++++++++++++
3 files changed, 151 insertions(+)
create mode 100644 drivers/thermal/imx_sc_thermal.c
diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
index 58bb7d7..fec0ef5 100644
--- a/drivers/thermal/Kconfig
+++ b/drivers/thermal/Kconfig
@@ -223,6 +223,17 @@ config IMX_THERMAL
cpufreq is used as the cooling device to throttle CPUs when the
passive trip is crossed.
+config IMX_SC_THERMAL
+ tristate "Temperature sensor driver for NXP i.MX SoCs with System Controller"
+ depends on (ARCH_MXC && IMX_SCU) || COMPILE_TEST
+ depends on OF
+ help
+ Support for Temperature Monitor (TEMPMON) found on NXP i.MX SoCs with
+ system controller inside, Linux kernel has to communicate with system
+ controller via MU (message unit) IPC to get temperature from thermal
+ sensor. It supports one critical trip point and one
+ passive trip point for each thermal sensor.
+
config MAX77620_THERMAL
tristate "Temperature sensor driver for Maxim MAX77620 PMIC"
depends on MFD_MAX77620
diff --git a/drivers/thermal/Makefile b/drivers/thermal/Makefile
index 486d682..4062627 100644
--- a/drivers/thermal/Makefile
+++ b/drivers/thermal/Makefile
@@ -40,6 +40,7 @@ obj-$(CONFIG_DB8500_THERMAL) += db8500_thermal.o
obj-$(CONFIG_ARMADA_THERMAL) += armada_thermal.o
obj-$(CONFIG_TANGO_THERMAL) += tango_thermal.o
obj-$(CONFIG_IMX_THERMAL) += imx_thermal.o
+obj-$(CONFIG_IMX_SC_THERMAL) += imx_sc_thermal.o
obj-$(CONFIG_MAX77620_THERMAL) += max77620_thermal.o
obj-$(CONFIG_QORIQ_THERMAL) += qoriq_thermal.o
obj-$(CONFIG_DA9062_THERMAL) += da9062-thermal.o
diff --git a/drivers/thermal/imx_sc_thermal.c b/drivers/thermal/imx_sc_thermal.c
new file mode 100644
index 0000000..e9a8207
--- /dev/null
+++ b/drivers/thermal/imx_sc_thermal.c
@@ -0,0 +1,139 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright 2018-2019 NXP.
+ */
+
+#include <linux/err.h>
+#include <linux/firmware/imx/sci.h>
+#include <linux/module.h>
+#include <linux/of.h>
+#include <linux/of_device.h>
+#include <linux/platform_device.h>
+#include <linux/slab.h>
+#include <linux/thermal.h>
+
+#include "thermal_core.h"
+
+#define IMX_SC_MISC_FUNC_GET_TEMP 13
+#define IMX_SC_C_TEMP 0
+
+static struct imx_sc_ipc *thermal_ipc_handle;
+
+struct imx_sc_sensor {
+ struct thermal_zone_device *tzd;
+ u32 resource_id;
+};
+
+struct req_get_temp {
+ u16 resource_id;
+ u8 type;
+} __packed;
+
+struct resp_get_temp {
+ u16 celsius;
+ u8 tenths;
+} __packed;
+
+struct imx_sc_msg_misc_get_temp {
+ struct imx_sc_rpc_msg hdr;
+ union {
+ struct req_get_temp req;
+ struct resp_get_temp resp;
+ } data;
+} __packed;
+
+static int imx_sc_thermal_get_temp(void *data, int *temp)
+{
+ struct imx_sc_msg_misc_get_temp msg;
+ struct imx_sc_rpc_msg *hdr = &msg.hdr;
+ struct imx_sc_sensor *sensor = data;
+ int ret;
+
+ msg.data.req.resource_id = sensor->resource_id;
+ msg.data.req.type = IMX_SC_C_TEMP;
+
+ hdr->ver = IMX_SC_RPC_VERSION;
+ hdr->svc = IMX_SC_RPC_SVC_MISC;
+ hdr->func = IMX_SC_MISC_FUNC_GET_TEMP;
+ hdr->size = 2;
+
+ ret = imx_scu_call_rpc(thermal_ipc_handle, &msg, true);
+ if (ret) {
+ pr_err("read temp sensor %d failed, ret %d\n",
+ sensor->resource_id, ret);
+ return ret;
+ }
+
+ *temp = msg.data.resp.celsius * 1000 + msg.data.resp.tenths * 100;
+
+ return 0;
+}
+
+static const struct thermal_zone_of_device_ops imx_sc_thermal_ops = {
+ .get_temp = imx_sc_thermal_get_temp,
+};
+
+static int imx_sc_thermal_probe(struct platform_device *pdev)
+{
+ int ret, tsen_num, i;
+
+ ret = imx_scu_get_handle(&thermal_ipc_handle);
+ if (ret)
+ return ret;
+
+ tsen_num = of_property_count_elems_of_size(pdev->dev.of_node,
+ "imx,sensor-resource-id",
+ sizeof(u32));
+ if (tsen_num <= 0) {
+ dev_err(&pdev->dev,
+ "failed to get valid sensor number: %d\n", tsen_num);
+ return -EINVAL;
+ }
+
+ for (i = 0; i < tsen_num; i++) {
+ struct imx_sc_sensor *sensor =
+ devm_kzalloc(&pdev->dev, sizeof(*sensor), GFP_KERNEL);
+ if (!sensor)
+ return -ENOMEM;
+
+ ret = of_property_read_u32_index(pdev->dev.of_node,
+ "imx,sensor-resource-id", i, &sensor->resource_id);
+ if (ret) {
+ dev_err(&pdev->dev,
+ "failed to get valid sensor resource id: %d\n",
+ ret);
+ break;
+ }
+
+ sensor->tzd = devm_thermal_zone_of_sensor_register(&pdev->dev,
+ i,
+ sensor,
+ &imx_sc_thermal_ops);
+ if (IS_ERR(sensor->tzd)) {
+ dev_err(&pdev->dev, "failed to register thermal zone\n");
+ ret = PTR_ERR(sensor->tzd);
+ break;
+ }
+ }
+
+ return ret;
+}
+
+static const struct of_device_id imx_sc_thermal_table[] = {
+ { .compatible = "fsl,imx-sc-thermal", },
+ {}
+};
+MODULE_DEVICE_TABLE(of, imx_sc_thermal_table);
+
+static struct platform_driver imx_sc_thermal_driver = {
+ .probe = imx_sc_thermal_probe,
+ .driver = {
+ .name = "imx-sc-thermal",
+ .of_match_table = imx_sc_thermal_table,
+ },
+};
+module_platform_driver(imx_sc_thermal_driver);
+
+MODULE_AUTHOR("Anson Huang <[email protected]>");
+MODULE_DESCRIPTION("Thermal driver for NXP i.MX SoCs with system controller");
+MODULE_LICENSE("GPL v2");
--
2.7.4
On Wed, Feb 27, 2019 at 08:46:21AM +0000, Anson Huang wrote:
> NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core inside as
> system controller, the system controller is in charge of system
> power, clock and thermal sensors etc. management, Linux kernel
> has to communicate with system controller via MU (message unit)
> IPC to get temperature from thermal sensors, this patch adds
> binding doc for i.MX system controller thermal driver.
>
> Signed-off-by: Anson Huang <[email protected]>
> ---
> Changes since V9:
> - change #thermal-sensor-cells value in example to 1, since there are other
> thermal sensors inside system controller, it is just because there are still
> some issue, so system controller does NOT expose them for now, they could
> be exposed later, so it should be 1 from HW perspective.
> ---
> .../devicetree/bindings/arm/freescale/fsl,scu.txt | 21 +++++++++++++++++++++
> 1 file changed, 21 insertions(+)
>
> 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.txt
> @@ -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?
Rob
Hi, Rob
Best Regards!
Anson Huang
> -----Original Message-----
> From: Rob Herring [mailto:[email protected]]
> Sent: 2019??2??28?? 7:55
> To: Anson Huang <[email protected]>
> Cc: [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; Aisheng Dong
> <[email protected]>; [email protected]; [email protected];
> Daniel Baluta <[email protected]>; Andy Gross
> <[email protected]>; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; linux-
> [email protected]; dl-linux-imx <[email protected]>
> Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal binding
>
> On Wed, Feb 27, 2019 at 08:46:21AM +0000, Anson Huang wrote:
> > NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core inside as system
> > controller, the system controller is in charge of system power, clock
> > and thermal sensors etc. management, Linux kernel has to communicate
> > with system controller via MU (message unit) IPC to get temperature
> > from thermal sensors, this patch adds binding doc for i.MX system
> > controller thermal driver.
> >
> > Signed-off-by: Anson Huang <[email protected]>
> > ---
> > Changes since V9:
> > - change #thermal-sensor-cells value in example to 1, since there are
> other
> > thermal sensors inside system controller, it is just because there are
> still
> > some issue, so system controller does NOT expose them for now,
> they could
> > be exposed later, so it should be 1 from HW perspective.
> > ---
> > .../devicetree/bindings/arm/freescale/fsl,scu.txt | 21
> +++++++++++++++++++++
> > 1 file changed, 21 insertions(+)
> >
> > 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.txt
> > @@ -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.
Thanks,
Anson.
>
> Rob
On Wed, Feb 27, 2019 at 6:48 PM Anson Huang <[email protected]> wrote:
>
> Hi, Rob
>
> Best Regards!
> Anson Huang
>
> > -----Original Message-----
> > From: Rob Herring [mailto:[email protected]]
> > Sent: 2019年2月28日 7:55
> > To: Anson Huang <[email protected]>
> > Cc: [email protected]; [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected]; Aisheng Dong
> > <[email protected]>; [email protected]; [email protected];
> > Daniel Baluta <[email protected]>; Andy Gross
> > <[email protected]>; [email protected]; [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected]; linux-
> > [email protected]; dl-linux-imx <[email protected]>
> > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal binding
> >
> > On Wed, Feb 27, 2019 at 08:46:21AM +0000, Anson Huang wrote:
> > > NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core inside as system
> > > controller, the system controller is in charge of system power, clock
> > > and thermal sensors etc. management, Linux kernel has to communicate
> > > with system controller via MU (message unit) IPC to get temperature
> > > from thermal sensors, this patch adds binding doc for i.MX system
> > > controller thermal driver.
> > >
> > > Signed-off-by: Anson Huang <[email protected]>
> > > ---
> > > Changes since V9:
> > > - change #thermal-sensor-cells value in example to 1, since there are
> > other
> > > thermal sensors inside system controller, it is just because there are
> > still
> > > some issue, so system controller does NOT expose them for now,
> > they could
> > > be exposed later, so it should be 1 from HW perspective.
> > > ---
> > > .../devicetree/bindings/arm/freescale/fsl,scu.txt | 21
> > +++++++++++++++++++++
> > > 1 file changed, 21 insertions(+)
> > >
> > > 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.txt
> > > @@ -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.
Rob
Hi, Rob/Eduardo
Best Regards!
Anson Huang
> -----Original Message-----
> From: Rob Herring [mailto:[email protected]]
> Sent: 2019年2月28日 22:49
> To: Anson Huang <[email protected]>
> Cc: [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; Aisheng Dong
> <[email protected]>; [email protected]; [email protected];
> Daniel Baluta <[email protected]>; Andy Gross
> <[email protected]>; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; linux-
> [email protected]; dl-linux-imx <[email protected]>
> Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal binding
>
> On Wed, Feb 27, 2019 at 6:48 PM Anson Huang <[email protected]>
> wrote:
> >
> > Hi, Rob
> >
> > Best Regards!
> > Anson Huang
> >
> > > -----Original Message-----
> > > From: Rob Herring [mailto:[email protected]]
> > > Sent: 2019年2月28日 7:55
> > > To: Anson Huang <[email protected]>
> > > Cc: [email protected]; [email protected];
> > > [email protected]; [email protected]; [email protected];
> > > [email protected]; [email protected]; [email protected];
> > > [email protected]; [email protected]; Aisheng Dong
> > > <[email protected]>; [email protected]; [email protected];
> > > Daniel Baluta <[email protected]>; Andy Gross
> > > <[email protected]>; [email protected];
> > > [email protected]; [email protected]; [email protected];
> > > [email protected]; [email protected];
> > > [email protected]; [email protected];
> > > [email protected]; [email protected];
> > > [email protected]; [email protected];
> > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > binding
> > >
> > > On Wed, Feb 27, 2019 at 08:46:21AM +0000, Anson Huang wrote:
> > > > NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core inside as
> > > > system controller, the system controller is in charge of system
> > > > power, clock and thermal sensors etc. management, Linux kernel has
> > > > to communicate with system controller via MU (message unit) IPC to
> > > > get temperature from thermal sensors, this patch adds binding doc
> > > > for i.MX system controller thermal driver.
> > > >
> > > > Signed-off-by: Anson Huang <[email protected]>
> > > > ---
> > > > Changes since V9:
> > > > - change #thermal-sensor-cells value in example to 1, since
> > > > there are
> > > other
> > > > thermal sensors inside system controller, it is just because
> > > > there are
> > > still
> > > > some issue, so system controller does NOT expose them for
> > > > now,
> > > they could
> > > > be exposed later, so it should be 1 from HW perspective.
> > > > ---
> > > > .../devicetree/bindings/arm/freescale/fsl,scu.txt | 21
> > > +++++++++++++++++++++
> > > > 1 file changed, 21 insertions(+)
> > > >
> > > > 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.txt
> > > > @@ -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?
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
Ping...
Hi, Eduardo
Looks like we are going around in circle, can we make decision of which direction to go?
Best Regards!
Anson Huang
> -----Original Message-----
> From: Anson Huang
> Sent: 2019年3月1日 9:41
> To: 'Rob Herring' <[email protected]>; [email protected]
> Cc: [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; Aisheng Dong
> <[email protected]>; [email protected]; [email protected];
> Daniel Baluta <[email protected]>; Andy Gross
> <[email protected]>; [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; linux-
> [email protected]; dl-linux-imx <[email protected]>
> Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal binding
>
> Hi, Rob/Eduardo
>
> Best Regards!
> Anson Huang
>
> > -----Original Message-----
> > From: Rob Herring [mailto:[email protected]]
> > Sent: 2019年2月28日 22:49
> > To: Anson Huang <[email protected]>
> > Cc: [email protected]; [email protected];
> [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; Aisheng Dong <[email protected]>;
> > [email protected]; [email protected]; Daniel Baluta
> > <[email protected]>; Andy Gross <[email protected]>;
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected];
> > [email protected]; [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected];
> > linux- [email protected]; dl-linux-imx <[email protected]>
> > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > binding
> >
> > On Wed, Feb 27, 2019 at 6:48 PM Anson Huang <[email protected]>
> > wrote:
> > >
> > > Hi, Rob
> > >
> > > Best Regards!
> > > Anson Huang
> > >
> > > > -----Original Message-----
> > > > From: Rob Herring [mailto:[email protected]]
> > > > Sent: 2019年2月28日 7:55
> > > > To: Anson Huang <[email protected]>
> > > > Cc: [email protected]; [email protected];
> > > > [email protected]; [email protected];
> [email protected];
> > > > [email protected]; [email protected];
> [email protected];
> > > > [email protected]; [email protected]; Aisheng Dong
> > > > <[email protected]>; [email protected]; [email protected];
> > > > Daniel Baluta <[email protected]>; Andy Gross
> > > > <[email protected]>; [email protected];
> > > > [email protected]; [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > > [email protected];
> > > > [email protected];
> > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > > binding
> > > >
> > > > On Wed, Feb 27, 2019 at 08:46:21AM +0000, Anson Huang wrote:
> > > > > NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core inside as
> > > > > system controller, the system controller is in charge of system
> > > > > power, clock and thermal sensors etc. management, Linux kernel
> > > > > has to communicate with system controller via MU (message unit)
> > > > > IPC to get temperature from thermal sensors, this patch adds
> > > > > binding doc for i.MX system controller thermal driver.
> > > > >
> > > > > Signed-off-by: Anson Huang <[email protected]>
> > > > > ---
> > > > > Changes since V9:
> > > > > - change #thermal-sensor-cells value in example to 1, since
> > > > > there are
> > > > other
> > > > > thermal sensors inside system controller, it is just
> > > > > because there are
> > > > still
> > > > > some issue, so system controller does NOT expose them for
> > > > > now,
> > > > they could
> > > > > be exposed later, so it should be 1 from HW perspective.
> > > > > ---
> > > > > .../devicetree/bindings/arm/freescale/fsl,scu.txt | 21
> > > > +++++++++++++++++++++
> > > > > 1 file changed, 21 insertions(+)
> > > > >
> > > > > 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?
>
> 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
[...]
> > > > > 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
Ping...
Hi, Eduardo
Can you take a look at this thread? Thanks.
Best Regards!
Anson Huang
> -----Original Message-----
> From: Anson Huang
> Sent: 2019年3月6日 13:27
> To: 'Rob Herring' <[email protected]>; '[email protected]'
> <[email protected]>
> Cc: '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; Aisheng Dong
> <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <[email protected]>; Daniel
> Baluta <[email protected]>; Andy Gross <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <linux-
> [email protected]>; '[email protected]' <linux-arm-
> [email protected]>; '[email protected]' <linux-
> [email protected]>; dl-linux-imx <[email protected]>
> Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal binding
>
> Ping...
>
> Hi, Eduardo
> Looks like we are going around in circle, can we make decision of
> which direction to go?
>
> Best Regards!
> Anson Huang
>
> > -----Original Message-----
> > From: Anson Huang
> > Sent: 2019年3月1日 9:41
> > To: 'Rob Herring' <[email protected]>; [email protected]
> > Cc: [email protected]; [email protected];
> [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; Aisheng Dong <[email protected]>;
> > [email protected]; [email protected]; Daniel Baluta
> > <[email protected]>; Andy Gross <[email protected]>;
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected];
> > [email protected]; [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected];
> > linux- [email protected]; dl-linux-imx <[email protected]>
> > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > binding
> >
> > Hi, Rob/Eduardo
> >
> > Best Regards!
> > Anson Huang
> >
> > > -----Original Message-----
> > > From: Rob Herring [mailto:[email protected]]
> > > Sent: 2019年2月28日 22:49
> > > To: Anson Huang <[email protected]>
> > > Cc: [email protected]; [email protected];
> > [email protected];
> > > [email protected]; [email protected];
> [email protected];
> > > [email protected]; [email protected]; [email protected];
> > > [email protected]; Aisheng Dong <[email protected]>;
> > > [email protected]; [email protected]; Daniel Baluta
> > > <[email protected]>; Andy Gross <[email protected]>;
> > > [email protected]; [email protected]; [email protected];
> > > [email protected]; [email protected];
> > > [email protected]; [email protected];
> > > [email protected]; [email protected]; [email protected];
> > > [email protected]; [email protected];
> > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > binding
> > >
> > > On Wed, Feb 27, 2019 at 6:48 PM Anson Huang <[email protected]>
> > > wrote:
> > > >
> > > > Hi, Rob
> > > >
> > > > Best Regards!
> > > > Anson Huang
> > > >
> > > > > -----Original Message-----
> > > > > From: Rob Herring [mailto:[email protected]]
> > > > > Sent: 2019年2月28日 7:55
> > > > > To: Anson Huang <[email protected]>
> > > > > Cc: [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > [email protected];
> > > > > [email protected]; [email protected];
> > [email protected];
> > > > > [email protected]; [email protected]; Aisheng Dong
> > > > > <[email protected]>; [email protected];
> > > > > [email protected]; Daniel Baluta <[email protected]>; Andy
> > > > > Gross <[email protected]>; [email protected];
> > > > > [email protected]; [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > > > > [email protected];
> > > > > [email protected];
> > > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > > > binding
> > > > >
> > > > > On Wed, Feb 27, 2019 at 08:46:21AM +0000, Anson Huang wrote:
> > > > > > NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core inside as
> > > > > > system controller, the system controller is in charge of
> > > > > > system power, clock and thermal sensors etc. management, Linux
> > > > > > kernel has to communicate with system controller via MU
> > > > > > (message unit) IPC to get temperature from thermal sensors,
> > > > > > this patch adds binding doc for i.MX system controller thermal
> driver.
> > > > > >
> > > > > > Signed-off-by: Anson Huang <[email protected]>
> > > > > > ---
> > > > > > Changes since V9:
> > > > > > - change #thermal-sensor-cells value in example to 1,
> > > > > > since there are
> > > > > other
> > > > > > thermal sensors inside system controller, it is just
> > > > > > because there are
> > > > > still
> > > > > > some issue, so system controller does NOT expose them
> > > > > > for now,
> > > > > they could
> > > > > > be exposed later, so it should be 1 from HW perspective.
> > > > > > ---
> > > > > > .../devicetree/bindings/arm/freescale/fsl,scu.txt | 21
> > > > > +++++++++++++++++++++
> > > > > > 1 file changed, 21 insertions(+)
> > > > > >
> > > > > > 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?
> >
> > 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
Ping...
Hi, Eduardo
What is your opinion about where to put the HW resource ID in DT?
Best Regards!
Anson Huang
> -----Original Message-----
> From: Anson Huang
> Sent: 2019年3月13日 16:12
> To: 'Rob Herring' <[email protected]>; '[email protected]'
> <[email protected]>
> Cc: '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; Aisheng Dong
> <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <[email protected]>; Daniel
> Baluta <[email protected]>; Andy Gross <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <linux-
> [email protected]>; '[email protected]' <linux-arm-
> [email protected]>; '[email protected]' <linux-
> [email protected]>; dl-linux-imx <[email protected]>
> Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal binding
>
> Ping...
> Hi, Eduardo
> Can you take a look at this thread? Thanks.
>
>
> Best Regards!
> Anson Huang
>
> > -----Original Message-----
> > From: Anson Huang
> > Sent: 2019年3月6日 13:27
> > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > <[email protected]>
> > Cc: '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>;
> '[email protected]'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>; Aisheng Dong
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <[email protected]>;
> > Daniel Baluta <[email protected]>; Andy Gross
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <linux-
> > [email protected]>; '[email protected]'
> > <linux-arm- [email protected]>; '[email protected]'
> > <linux- [email protected]>; dl-linux-imx <[email protected]>
> > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > binding
> >
> > Ping...
> >
> > Hi, Eduardo
> > Looks like we are going around in circle, can we make decision of
> > which direction to go?
> >
> > Best Regards!
> > Anson Huang
> >
> > > -----Original Message-----
> > > From: Anson Huang
> > > Sent: 2019年3月1日 9:41
> > > To: 'Rob Herring' <[email protected]>; [email protected]
> > > Cc: [email protected]; [email protected];
> > [email protected];
> > > [email protected]; [email protected];
> [email protected];
> > > [email protected]; [email protected]; [email protected];
> > > [email protected]; Aisheng Dong <[email protected]>;
> > > [email protected]; [email protected]; Daniel Baluta
> > > <[email protected]>; Andy Gross <[email protected]>;
> > > [email protected]; [email protected]; [email protected];
> > > [email protected]; [email protected];
> > > [email protected]; [email protected];
> > > [email protected]; [email protected]; [email protected];
> > > [email protected]; [email protected];
> > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > binding
> > >
> > > Hi, Rob/Eduardo
> > >
> > > Best Regards!
> > > Anson Huang
> > >
> > > > -----Original Message-----
> > > > From: Rob Herring [mailto:[email protected]]
> > > > Sent: 2019年2月28日 22:49
> > > > To: Anson Huang <[email protected]>
> > > > Cc: [email protected]; [email protected];
> > > [email protected];
> > > > [email protected]; [email protected];
> > [email protected];
> > > > [email protected]; [email protected]; [email protected];
> > > > [email protected]; Aisheng Dong <[email protected]>;
> > > > [email protected]; [email protected]; Daniel Baluta
> > > > <[email protected]>; Andy Gross <[email protected]>;
> > > > [email protected]; [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > > [email protected];
> > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > > binding
> > > >
> > > > On Wed, Feb 27, 2019 at 6:48 PM Anson Huang
> <[email protected]>
> > > > wrote:
> > > > >
> > > > > Hi, Rob
> > > > >
> > > > > Best Regards!
> > > > > Anson Huang
> > > > >
> > > > > > -----Original Message-----
> > > > > > From: Rob Herring [mailto:[email protected]]
> > > > > > Sent: 2019年2月28日 7:55
> > > > > > To: Anson Huang <[email protected]>
> > > > > > Cc: [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > [email protected];
> > > > > > [email protected]; [email protected];
> > > [email protected];
> > > > > > [email protected]; [email protected]; Aisheng Dong
> > > > > > <[email protected]>; [email protected];
> > > > > > [email protected]; Daniel Baluta <[email protected]>; Andy
> > > > > > Gross <[email protected]>; [email protected];
> > > > > > [email protected]; [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > > > > [email protected];
> > > > > > [email protected];
> > > > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add
> > > > > > thermal binding
> > > > > >
> > > > > > On Wed, Feb 27, 2019 at 08:46:21AM +0000, Anson Huang wrote:
> > > > > > > NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core inside as
> > > > > > > system controller, the system controller is in charge of
> > > > > > > system power, clock and thermal sensors etc. management,
> > > > > > > Linux kernel has to communicate with system controller via
> > > > > > > MU (message unit) IPC to get temperature from thermal
> > > > > > > sensors, this patch adds binding doc for i.MX system
> > > > > > > controller thermal
> > driver.
> > > > > > >
> > > > > > > Signed-off-by: Anson Huang <[email protected]>
> > > > > > > ---
> > > > > > > Changes since V9:
> > > > > > > - change #thermal-sensor-cells value in example to 1,
> > > > > > > since there are
> > > > > > other
> > > > > > > thermal sensors inside system controller, it is just
> > > > > > > because there are
> > > > > > still
> > > > > > > some issue, so system controller does NOT expose them
> > > > > > > for now,
> > > > > > they could
> > > > > > > be exposed later, so it should be 1 from HW perspective.
> > > > > > > ---
> > > > > > > .../devicetree/bindings/arm/freescale/fsl,scu.txt | 21
> > > > > > +++++++++++++++++++++
> > > > > > > 1 file changed, 21 insertions(+)
> > > > > > >
> > > > > > > diff --git
> > > > > > > a/Documentation/devicetree/bindings/arm/freescale/fsl,scu.tx
> > > > > > > t
> > > > > > > b/Documentation/devicetree/bindings/arm/freescale/fsl,scu.tx
> > > > > > > t index 72d481c..855270b 100644
> > > > > > > ---
> > > > > > > a/Documentation/devicetree/bindings/arm/freescale/fsl,scu.tx
> > > > > > > t
> > > > > > > +++ 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?
> > >
> > > 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
Ping...
Can anyone provide some suggestion about how to proceed next?
Best Regards!
Anson Huang
> -----Original Message-----
> From: Anson Huang
> Sent: 2019年3月26日 10:45
> To: 'Rob Herring' <[email protected]>; '[email protected]'
> <[email protected]>
> Cc: '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; Aisheng Dong
> <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <[email protected]>; Daniel
> Baluta <[email protected]>; Andy Gross <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>;
> '[email protected]' <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]' <linux-
> [email protected]>; '[email protected]' <linux-arm-
> [email protected]>; '[email protected]' <linux-
> [email protected]>; dl-linux-imx <[email protected]>
> Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal binding
>
> Ping...
>
> Hi, Eduardo
> What is your opinion about where to put the HW resource ID in DT?
>
> Best Regards!
> Anson Huang
>
> > -----Original Message-----
> > From: Anson Huang
> > Sent: 2019年3月13日 16:12
> > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > <[email protected]>
> > Cc: '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>;
> '[email protected]'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>; Aisheng Dong
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <[email protected]>;
> > Daniel Baluta <[email protected]>; Andy Gross
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <linux-
> > [email protected]>; '[email protected]'
> > <linux-arm- [email protected]>; '[email protected]'
> > <linux- [email protected]>; dl-linux-imx <[email protected]>
> > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > binding
> >
> > Ping...
> > Hi, Eduardo
> > Can you take a look at this thread? Thanks.
> >
> >
> > Best Regards!
> > Anson Huang
> >
> > > -----Original Message-----
> > > From: Anson Huang
> > > Sent: 2019年3月6日 13:27
> > > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > > <[email protected]>
> > > Cc: '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]>;
> > '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> <[email protected]>;
> > > '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> <[email protected]>;
> > > '[email protected]' <[email protected]>; Aisheng
> > > Dong <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]' <[email protected]>;
> > > Daniel Baluta <[email protected]>; Andy Gross
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]' <linux-
> > > [email protected]>; '[email protected]'
> > > <linux-arm- [email protected]>; '[email protected]'
> > > <linux- [email protected]>; dl-linux-imx <[email protected]>
> > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > binding
> > >
> > > Ping...
> > >
> > > Hi, Eduardo
> > > Looks like we are going around in circle, can we make decision of
> > > which direction to go?
> > >
> > > Best Regards!
> > > Anson Huang
> > >
> > > > -----Original Message-----
> > > > From: Anson Huang
> > > > Sent: 2019年3月1日 9:41
> > > > To: 'Rob Herring' <[email protected]>; [email protected]
> > > > Cc: [email protected]; [email protected];
> > > [email protected];
> > > > [email protected]; [email protected];
> > [email protected];
> > > > [email protected]; [email protected]; [email protected];
> > > > [email protected]; Aisheng Dong <[email protected]>;
> > > > [email protected]; [email protected]; Daniel Baluta
> > > > <[email protected]>; Andy Gross <[email protected]>;
> > > > [email protected]; [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > > [email protected]; [email protected];
> > > > [email protected];
> > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > > binding
> > > >
> > > > Hi, Rob/Eduardo
> > > >
> > > > Best Regards!
> > > > Anson Huang
> > > >
> > > > > -----Original Message-----
> > > > > From: Rob Herring [mailto:[email protected]]
> > > > > Sent: 2019年2月28日 22:49
> > > > > To: Anson Huang <[email protected]>
> > > > > Cc: [email protected]; [email protected];
> > > > [email protected];
> > > > > [email protected]; [email protected];
> > > [email protected];
> > > > > [email protected]; [email protected]; [email protected];
> > > > > [email protected]; Aisheng Dong <[email protected]>;
> > > > > [email protected]; [email protected]; Daniel Baluta
> > > > > <[email protected]>; Andy Gross <[email protected]>;
> > > > > [email protected]; [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > > > > [email protected];
> > > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > > > binding
> > > > >
> > > > > On Wed, Feb 27, 2019 at 6:48 PM Anson Huang
> > <[email protected]>
> > > > > wrote:
> > > > > >
> > > > > > Hi, Rob
> > > > > >
> > > > > > Best Regards!
> > > > > > Anson Huang
> > > > > >
> > > > > > > -----Original Message-----
> > > > > > > From: Rob Herring [mailto:[email protected]]
> > > > > > > Sent: 2019年2月28日 7:55
> > > > > > > To: Anson Huang <[email protected]>
> > > > > > > Cc: [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > [email protected];
> > > > > > > [email protected]; [email protected];
> > > > [email protected];
> > > > > > > [email protected]; [email protected]; Aisheng Dong
> > > > > > > <[email protected]>; [email protected];
> > > > > > > [email protected]; Daniel Baluta <[email protected]>;
> > > > > > > Andy Gross <[email protected]>;
> > > > > > > [email protected]; [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected];
> > > > > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add
> > > > > > > thermal binding
> > > > > > >
> > > > > > > On Wed, Feb 27, 2019 at 08:46:21AM +0000, Anson Huang wrote:
> > > > > > > > NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core inside
> > > > > > > > as system controller, the system controller is in charge
> > > > > > > > of system power, clock and thermal sensors etc.
> > > > > > > > management, Linux kernel has to communicate with system
> > > > > > > > controller via MU (message unit) IPC to get temperature
> > > > > > > > from thermal sensors, this patch adds binding doc for i.MX
> > > > > > > > system controller thermal
> > > driver.
> > > > > > > >
> > > > > > > > Signed-off-by: Anson Huang <[email protected]>
> > > > > > > > ---
> > > > > > > > Changes since V9:
> > > > > > > > - change #thermal-sensor-cells value in example to 1,
> > > > > > > > since there are
> > > > > > > other
> > > > > > > > thermal sensors inside system controller, it is just
> > > > > > > > because there are
> > > > > > > still
> > > > > > > > some issue, so system controller does NOT expose
> > > > > > > > them for now,
> > > > > > > they could
> > > > > > > > be exposed later, so it should be 1 from HW perspective.
> > > > > > > > ---
> > > > > > > > .../devicetree/bindings/arm/freescale/fsl,scu.txt | 21
> > > > > > > +++++++++++++++++++++
> > > > > > > > 1 file changed, 21 insertions(+)
> > > > > > > >
> > > > > > > > diff --git
> > > > > > > > a/Documentation/devicetree/bindings/arm/freescale/fsl,scu.
> > > > > > > > tx
> > > > > > > > t
> > > > > > > > b/Documentation/devicetree/bindings/arm/freescale/fsl,scu.
> > > > > > > > tx t index 72d481c..855270b 100644
> > > > > > > > ---
> > > > > > > > a/Documentation/devicetree/bindings/arm/freescale/fsl,scu.
> > > > > > > > tx
> > > > > > > > t
> > > > > > > > +++
> 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?
> > > >
> > > > 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
On 二, 2019-04-09 at 05:28 +0000, Anson Huang wrote:
> Ping...
> Can anyone provide some suggestion about how to proceed next?
>
Hi, Eduardo,
I guess you will comment on this patch, right?
Or else I will take the patch following Rob' suggestion.
thanks,
rui
> Best Regards!
> Anson Huang
>
> >
> > -----Original Message-----
> > From: Anson Huang
> > Sent: 2019年3月26日 10:45
> > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > <[email protected]>
> > Cc: '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>; '[email protected]
> > e'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>; Aisheng
> > Dong
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]' <[email protected]>;
> > Daniel
> > Baluta <[email protected]>; Andy Gross <[email protected]>;
> > '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>; '[email protected]' <[email protected]
> > >;
> > '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>;
> > '[email protected]' <[email protected]>; '[email protected]
> > t'
> > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> > <linux-
> > [email protected]>; '[email protected]'
> > <linux-arm-
> > [email protected]>; '[email protected]' <linux-
> > [email protected]>; dl-linux-imx <[email protected]>
> > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > binding
> >
> > Ping...
> >
> > Hi, Eduardo
> > What is your opinion about where to put the HW resource ID in
> > DT?
> >
> > Best Regards!
> > Anson Huang
> >
> > >
> > > -----Original Message-----
> > > From: Anson Huang
> > > Sent: 2019年3月13日 16:12
> > > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > > <[email protected]>
> > > Cc: '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]>;
> > '[email protected]'
> > >
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]' <[email protected]
> > > >;
> > > '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]>; '[email protected]
> > > '
> > > <[email protected]>; '[email protected]' <[email protected]
> > > >;
> > > '[email protected]' <[email protected]>; Aisheng
> > > Dong
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]' <[email protected]>;
> > > Daniel Baluta <[email protected]>; Andy Gross
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]' <[email protected]>
> > > ;
> > > '[email protected]' <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > <[email protected]>; '[email protected]'
> > >
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > <linux-
> > > [email protected]>; '[email protected]'
> > > <linux-arm- [email protected]>; '[email protected]
> > > g'
> > > <linux- [email protected]>; dl-linux-imx <[email protected]>
> > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > binding
> > >
> > > Ping...
> > > Hi, Eduardo
> > > Can you take a look at this thread? Thanks.
> > >
> > >
> > > Best Regards!
> > > Anson Huang
> > >
> > > >
> > > > -----Original Message-----
> > > > From: Anson Huang
> > > > Sent: 2019年3月6日 13:27
> > > > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > > > <[email protected]>
> > > > Cc: '[email protected]' <[email protected]>;
> > > > '[email protected]' <[email protected]>;
> > > '[email protected]'
> > > >
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > <[email protected]>;
> > >
> > > >
> > > > '[email protected]' <[email protected]>;
> > > > '[email protected]' <[email protected]>; '[email protected]
> > > > om'
> > > > <[email protected]>; '[email protected]'
> > <[email protected]>;
> > >
> > > >
> > > > '[email protected]' <[email protected]>;
> > > > Aisheng
> > > > Dong <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]' <[email protected]>
> > > > ;
> > > > Daniel Baluta <[email protected]>; Andy Gross
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]' <[email protected]
> > > > e>;
> > > > '[email protected]' <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > >
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > > <linux-
> > > > [email protected]>; '[email protected]'
> > > > <linux-arm- [email protected]>; '[email protected].
> > > > org'
> > > > <linux- [email protected]>; dl-linux-imx <[email protected]>
> > > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > > binding
> > > >
> > > > Ping...
> > > >
> > > > Hi, Eduardo
> > > > Looks like we are going around in circle, can we make
> > > > decision of
> > > > which direction to go?
> > > >
> > > > Best Regards!
> > > > Anson Huang
> > > >
> > > > >
> > > > > -----Original Message-----
> > > > > From: Anson Huang
> > > > > Sent: 2019年3月1日 9:41
> > > > > To: 'Rob Herring' <[email protected]>; [email protected]
> > > > > Cc: [email protected]; [email protected];
> > > > [email protected];
> > > > >
> > > > > [email protected]; [email protected];
> > > [email protected];
> > > >
> > > > >
> > > > > [email protected]; [email protected]; [email protected]
> > > > > ;
> > > > > [email protected]; Aisheng Dong <[email protected]
> > > > > >;
> > > > > [email protected]; [email protected]; Daniel Baluta
> > > > > <[email protected]>; Andy Gross <[email protected]>;
> > > > > [email protected]; [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > > > > [email protected]; [email protected];
> > > > > [email protected];
> > > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add
> > > > > thermal
> > > > > binding
> > > > >
> > > > > Hi, Rob/Eduardo
> > > > >
> > > > > Best Regards!
> > > > > Anson Huang
> > > > >
> > > > > >
> > > > > > -----Original Message-----
> > > > > > From: Rob Herring [mailto:[email protected]]
> > > > > > Sent: 2019年2月28日 22:49
> > > > > > To: Anson Huang <[email protected]>
> > > > > > Cc: [email protected]; [email protected];
> > > > > [email protected];
> > > > > >
> > > > > > [email protected]; [email protected];
> > > > [email protected];
> > > > >
> > > > > >
> > > > > > [email protected]; [email protected]; [email protected]
> > > > > > om;
> > > > > > [email protected]; Aisheng Dong <[email protected]
> > > > > > om>;
> > > > > > [email protected]; [email protected]; Daniel Baluta
> > > > > > <[email protected]>; Andy Gross <[email protected]>
> > > > > > ;
> > > > > > [email protected]; [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > > > > [email protected];
> > > > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add
> > > > > > thermal
> > > > > > binding
> > > > > >
> > > > > > On Wed, Feb 27, 2019 at 6:48 PM Anson Huang
> > > <[email protected]>
> > > >
> > > > >
> > > > > >
> > > > > > wrote:
> > > > > > >
> > > > > > >
> > > > > > > Hi, Rob
> > > > > > >
> > > > > > > Best Regards!
> > > > > > > Anson Huang
> > > > > > >
> > > > > > > >
> > > > > > > > -----Original Message-----
> > > > > > > > From: Rob Herring [mailto:[email protected]]
> > > > > > > > Sent: 2019年2月28日 7:55
> > > > > > > > To: Anson Huang <[email protected]>
> > > > > > > > Cc: [email protected]; [email protected];
> > > > > > > > [email protected]; [email protected];
> > > > > [email protected];
> > > > > >
> > > > > > >
> > > > > > > >
> > > > > > > > [email protected]; [email protected];
> > > > > [email protected];
> > > > > >
> > > > > > >
> > > > > > > >
> > > > > > > > [email protected]; [email protected]; Aisheng
> > > > > > > > Dong
> > > > > > > > <[email protected]>; [email protected];
> > > > > > > > [email protected]; Daniel Baluta <[email protected]>
> > > > > > > > ;
> > > > > > > > Andy Gross <[email protected]>;
> > > > > > > > [email protected]; [email protected]; arnd@arndb
> > > > > > > > .de;
> > > > > > > > [email protected]; [email protected];
> > > > > > > > [email protected]; [email protected]
> > > > > > > > m;
> > > > > > > > [email protected]; [email protected];
> > > > > > > > [email protected]; [email protected]
> > > > > > > > g;
> > > > > > > > [email protected];
> > > > > > > > linux- [email protected]; dl-linux-imx <linux-imx@nxp.
> > > > > > > > com>
> > > > > > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add
> > > > > > > > thermal binding
> > > > > > > >
> > > > > > > > On Wed, Feb 27, 2019 at 08:46:21AM +0000, Anson Huang
> > > > > > > > wrote:
> > > > > > > > >
> > > > > > > > > NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core
> > > > > > > > > inside
> > > > > > > > > as system controller, the system controller is in
> > > > > > > > > charge
> > > > > > > > > of system power, clock and thermal sensors etc.
> > > > > > > > > management, Linux kernel has to communicate with
> > > > > > > > > system
> > > > > > > > > controller via MU (message unit) IPC to get
> > > > > > > > > temperature
> > > > > > > > > from thermal sensors, this patch adds binding doc for
> > > > > > > > > i.MX
> > > > > > > > > system controller thermal
> > > > driver.
> > > > >
> > > > > >
> > > > > > >
> > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > Signed-off-by: Anson Huang <[email protected]>
> > > > > > > > > ---
> > > > > > > > > Changes since V9:
> > > > > > > > > - change #thermal-sensor-cells value in example
> > > > > > > > > to 1,
> > > > > > > > > since there are
> > > > > > > > other
> > > > > > > > >
> > > > > > > > > thermal sensors inside system controller, it is
> > > > > > > > > just
> > > > > > > > > because there are
> > > > > > > > still
> > > > > > > > >
> > > > > > > > > some issue, so system controller does NOT
> > > > > > > > > expose
> > > > > > > > > them for now,
> > > > > > > > they could
> > > > > > > > >
> > > > > > > > > be exposed later, so it should be 1 from HW
> > > > > > > > > perspective.
> > > > > > > > > ---
> > > > > > > > > .../devicetree/bindings/arm/freescale/fsl,scu.txt
> > > > > > > > > | 21
> > > > > > > > +++++++++++++++++++++
> > > > > > > > >
> > > > > > > > > 1 file changed, 21 insertions(+)
> > > > > > > > >
> > > > > > > > > diff --git
> > > > > > > > > a/Documentation/devicetree/bindings/arm/freescale/fsl
> > > > > > > > > ,scu.
> > > > > > > > > tx
> > > > > > > > > t
> > > > > > > > > b/Documentation/devicetree/bindings/arm/freescale/fsl
> > > > > > > > > ,scu.
> > > > > > > > > tx t index 72d481c..855270b 100644
> > > > > > > > > ---
> > > > > > > > > a/Documentation/devicetree/bindings/arm/freescale/fsl
> > > > > > > > > ,scu.
> > > > > > > > > tx
> > > > > > > > > t
> > > > > > > > > +++
> > 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?
> > > > >
> > > > > 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
Hi, Rui/Eduardo
I just sent out a V11 patch series following Rob's suggestion, please help review it.
So if the HW resource ID can be as phandle's argument, then go with V11 patch series, if it MUST
be virtual ID starting from 0-N, then pick V10 patch series.
Thanks for your time.
Best Regards!
Anson Huang
> -----Original Message-----
> From: Zhang Rui [mailto:[email protected]]
> Sent: 2019年4月9日 15:29
> To: Anson Huang <[email protected]>; Rob Herring <[email protected]>;
> [email protected]
> Cc: [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; Aisheng Dong <[email protected]>;
> [email protected]; [email protected]; Daniel Baluta
> <[email protected]>; Andy Gross <[email protected]>;
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; linux-
> [email protected]; dl-linux-imx <[email protected]>
> Subject: [EXT] Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal binding
>
> WARNING: This email was created outside of NXP. DO NOT CLICK links or
> attachments unless you recognize the sender and know the content is safe.
>
>
>
> On 二, 2019-04-09 at 05:28 +0000, Anson Huang wrote:
> > Ping...
> > Can anyone provide some suggestion about how to proceed next?
> >
> Hi, Eduardo,
>
> I guess you will comment on this patch, right?
> Or else I will take the patch following Rob' suggestion.
>
> thanks,
> rui
>
>
> > Best Regards!
> > Anson Huang
> >
> > >
> > > -----Original Message-----
> > > From: Anson Huang
> > > Sent: 2019年3月26日 10:45
> > > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > > <[email protected]>
> > > Cc: '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]>;
> '[email protected]
> > > e'
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> <[email protected]>;
> > > '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> <[email protected]>;
> > > '[email protected]' <[email protected]>; Aisheng
> > > Dong <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]' <[email protected]>;
> > > Daniel Baluta <[email protected]>; Andy Gross
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]
> > > >;
> > > '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]>;
> > > '[email protected]' <[email protected]>; '[email protected]
> > > t'
> > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > <linux-
> > > [email protected]>; '[email protected]'
> > > <linux-arm-
> > > [email protected]>; '[email protected]' <linux-
> > > [email protected]>; dl-linux-imx <[email protected]>
> > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > binding
> > >
> > > Ping...
> > >
> > > Hi, Eduardo
> > > What is your opinion about where to put the HW resource ID in
> > > DT?
> > >
> > > Best Regards!
> > > Anson Huang
> > >
> > > >
> > > > -----Original Message-----
> > > > From: Anson Huang
> > > > Sent: 2019年3月13日 16:12
> > > > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > > > <[email protected]>
> > > > Cc: '[email protected]' <[email protected]>;
> > > > '[email protected]' <[email protected]>;
> > > '[email protected]'
> > > >
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> <[email protected]
> > > > >;
> > > > '[email protected]' <[email protected]>;
> > > > '[email protected]' <[email protected]>; '[email protected]
> > > > '
> > > > <[email protected]>; '[email protected]'
> <[email protected]
> > > > >;
> > > > '[email protected]' <[email protected]>; Aisheng
> > > > Dong <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]' <[email protected]>;
> > > > Daniel Baluta <[email protected]>; Andy Gross
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]' <[email protected]>
> > > > ; '[email protected]' <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > <[email protected]>; '[email protected]'
> > > >
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > > <linux-
> > > > [email protected]>; '[email protected]'
> > > > <linux-arm- [email protected]>; '[email protected]
> > > > g'
> > > > <linux- [email protected]>; dl-linux-imx <[email protected]>
> > > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > > binding
> > > >
> > > > Ping...
> > > > Hi, Eduardo
> > > > Can you take a look at this thread? Thanks.
> > > >
> > > >
> > > > Best Regards!
> > > > Anson Huang
> > > >
> > > > >
> > > > > -----Original Message-----
> > > > > From: Anson Huang
> > > > > Sent: 2019年3月6日 13:27
> > > > > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > > > > <[email protected]>
> > > > > Cc: '[email protected]' <[email protected]>;
> > > > > '[email protected]' <[email protected]>;
> > > > '[email protected]'
> > > > >
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > <[email protected]>;
> > > >
> > > > >
> > > > > '[email protected]' <[email protected]>;
> > > > > '[email protected]' <[email protected]>; '[email protected]
> > > > > om'
> > > > > <[email protected]>; '[email protected]'
> > > <[email protected]>;
> > > >
> > > > >
> > > > > '[email protected]' <[email protected]>; Aisheng
> > > > > Dong <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]' <[email protected]>
> > > > > ; Daniel Baluta <[email protected]>; Andy Gross
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> <[email protected]
> > > > > e>;
> > > > > '[email protected]' <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > > >
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > > <linux-
> > > > > [email protected]>; '[email protected]'
> > > > > <linux-arm- [email protected]>; '[email protected].
> > > > > org'
> > > > > <linux- [email protected]>; dl-linux-imx <[email protected]>
> > > > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > > > binding
> > > > >
> > > > > Ping...
> > > > >
> > > > > Hi, Eduardo
> > > > > Looks like we are going around in circle, can we make
> > > > > decision of which direction to go?
> > > > >
> > > > > Best Regards!
> > > > > Anson Huang
> > > > >
> > > > > >
> > > > > > -----Original Message-----
> > > > > > From: Anson Huang
> > > > > > Sent: 2019年3月1日 9:41
> > > > > > To: 'Rob Herring' <[email protected]>; [email protected]
> > > > > > Cc: [email protected]; [email protected];
> > > > > [email protected];
> > > > > >
> > > > > > [email protected]; [email protected];
> > > > [email protected];
> > > > >
> > > > > >
> > > > > > [email protected]; [email protected]; [email protected]
> > > > > > ; [email protected]; Aisheng Dong
> > > > > > <[email protected]
> > > > > > >;
> > > > > > [email protected]; [email protected]; Daniel Baluta
> > > > > > <[email protected]>; Andy Gross <[email protected]>;
> > > > > > [email protected]; [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > > > > [email protected]; [email protected];
> > > > > > [email protected];
> > > > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add
> > > > > > thermal binding
> > > > > >
> > > > > > Hi, Rob/Eduardo
> > > > > >
> > > > > > Best Regards!
> > > > > > Anson Huang
> > > > > >
> > > > > > >
> > > > > > > -----Original Message-----
> > > > > > > From: Rob Herring [mailto:[email protected]]
> > > > > > > Sent: 2019年2月28日 22:49
> > > > > > > To: Anson Huang <[email protected]>
> > > > > > > Cc: [email protected]; [email protected];
> > > > > > [email protected];
> > > > > > >
> > > > > > > [email protected]; [email protected];
> > > > > [email protected];
> > > > > >
> > > > > > >
> > > > > > > [email protected]; [email protected]; [email protected]
> > > > > > > om; [email protected]; Aisheng Dong
> > > > > > > <[email protected]
> > > > > > > om>;
> > > > > > > [email protected]; [email protected]; Daniel Baluta
> > > > > > > <[email protected]>; Andy Gross <[email protected]>
> > > > > > > ;
> > > > > > > [email protected]; [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected];
> > > > > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add
> > > > > > > thermal binding
> > > > > > >
> > > > > > > On Wed, Feb 27, 2019 at 6:48 PM Anson Huang
> > > > <[email protected]>
> > > > >
> > > > > >
> > > > > > >
> > > > > > > wrote:
> > > > > > > >
> > > > > > > >
> > > > > > > > Hi, Rob
> > > > > > > >
> > > > > > > > Best Regards!
> > > > > > > > Anson Huang
> > > > > > > >
> > > > > > > > >
> > > > > > > > > -----Original Message-----
> > > > > > > > > From: Rob Herring [mailto:[email protected]]
> > > > > > > > > Sent: 2019年2月28日 7:55
> > > > > > > > > To: Anson Huang <[email protected]>
> > > > > > > > > Cc: [email protected]; [email protected];
> > > > > > > > > [email protected]; [email protected];
> > > > > > [email protected];
> > > > > > >
> > > > > > > >
> > > > > > > > >
> > > > > > > > > [email protected]; [email protected];
> > > > > > [email protected];
> > > > > > >
> > > > > > > >
> > > > > > > > >
> > > > > > > > > [email protected]; [email protected]; Aisheng
> > > > > > > > > Dong <[email protected]>; [email protected];
> > > > > > > > > [email protected]; Daniel Baluta <[email protected]>
> > > > > > > > > ; Andy Gross <[email protected]>;
> > > > > > > > > [email protected]; [email protected]; arnd@arndb
> > > > > > > > > .de;
> > > > > > > > > [email protected]; [email protected];
> > > > > > > > > [email protected]; [email protected]
> > > > > > > > > m; [email protected]; [email protected];
> > > > > > > > > [email protected]; [email protected]
> > > > > > > > > g; [email protected];
> > > > > > > > > linux- [email protected]; dl-linux-imx <linux-imx@nxp.
> > > > > > > > > com>
> > > > > > > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add
> > > > > > > > > thermal binding
> > > > > > > > >
> > > > > > > > > On Wed, Feb 27, 2019 at 08:46:21AM +0000, Anson Huang
> > > > > > > > > wrote:
> > > > > > > > > >
> > > > > > > > > > NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core
> > > > > > > > > > inside as system controller, the system controller is
> > > > > > > > > > in charge of system power, clock and thermal sensors
> > > > > > > > > > etc.
> > > > > > > > > > management, Linux kernel has to communicate with
> > > > > > > > > > system controller via MU (message unit) IPC to get
> > > > > > > > > > temperature from thermal sensors, this patch adds
> > > > > > > > > > binding doc for i.MX system controller thermal
> > > > > driver.
> > > > > >
> > > > > > >
> > > > > > > >
> > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > Signed-off-by: Anson Huang <[email protected]>
> > > > > > > > > > ---
> > > > > > > > > > Changes since V9:
> > > > > > > > > > - change #thermal-sensor-cells value in example to
> > > > > > > > > > 1, since there are
> > > > > > > > > other
> > > > > > > > > >
> > > > > > > > > > thermal sensors inside system controller, it is
> > > > > > > > > > just because there are
> > > > > > > > > still
> > > > > > > > > >
> > > > > > > > > > some issue, so system controller does NOT expose
> > > > > > > > > > them for now,
> > > > > > > > > they could
> > > > > > > > > >
> > > > > > > > > > be exposed later, so it should be 1 from HW
> > > > > > > > > > perspective.
> > > > > > > > > > ---
> > > > > > > > > > .../devicetree/bindings/arm/freescale/fsl,scu.txt
> > > > > > > > > > | 21
> > > > > > > > > +++++++++++++++++++++
> > > > > > > > > >
> > > > > > > > > > 1 file changed, 21 insertions(+)
> > > > > > > > > >
> > > > > > > > > > diff --git
> > > > > > > > > > a/Documentation/devicetree/bindings/arm/freescale/fsl
> > > > > > > > > > ,scu.
> > > > > > > > > > tx
> > > > > > > > > > t
> > > > > > > > > > b/Documentation/devicetree/bindings/arm/freescale/fsl
> > > > > > > > > > ,scu.
> > > > > > > > > > tx t index 72d481c..855270b 100644
> > > > > > > > > > ---
> > > > > > > > > > a/Documentation/devicetree/bindings/arm/freescale/fsl
> > > > > > > > > > ,scu.
> > > > > > > > > > tx
> > > > > > > > > > t
> > > > > > > > > > +++
> > > 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?
> > > > > >
> > > > > > Thanks,
> > > > > > Anson.
> > > > > >
> > > > > >
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatch
> work.kernel.org%2Fpatch%2F10703849%2F&data=02%7C01%7Canson.h
> uang%40nxp.com%7C4ccced2bc4c94541605a08d6bcbcff74%7C686ea1d3bc2
> b4c6fa92cd99c5c301635%7C0%7C0%7C636903917265841194&sdata=k
> Q3dReprke6VnseMnOkHtP97p%2BD3IBCuRwBLj0rPCGI%3D&reserved=
> 0
> > > > > > >
> > > > > > > + 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
Hi, Rui/ Eduardo
I just resent the V11 patch series as I found previous patch series has conflict on the dt-binding patch, can NOT be applied directly, sorry for the inconvenience.
Best Regards!
Anson Huang
> -----Original Message-----
> From: Anson Huang
> Sent: 2019年4月10日 14:06
> To: Zhang Rui <[email protected]>; Rob Herring <[email protected]>;
> [email protected]
> Cc: [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; Aisheng Dong <[email protected]>;
> [email protected]; [email protected]; Daniel Baluta
> <[email protected]>; Andy Gross <[email protected]>;
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; linux-
> [email protected]; dl-linux-imx <[email protected]>
> Subject: RE: [EXT] Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> binding
>
> Hi, Rui/Eduardo
> I just sent out a V11 patch series following Rob's suggestion, please
> help review it.
> So if the HW resource ID can be as phandle's argument, then go with
> V11 patch series, if it MUST be virtual ID starting from 0-N, then pick V10
> patch series.
> Thanks for your time.
>
> Best Regards!
> Anson Huang
>
> > -----Original Message-----
> > From: Zhang Rui [mailto:[email protected]]
> > Sent: 2019年4月9日 15:29
> > To: Anson Huang <[email protected]>; Rob Herring
> <[email protected]>;
> > [email protected]
> > Cc: [email protected]; [email protected];
> [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected]; Aisheng Dong
> > <[email protected]>; [email protected]; [email protected];
> > Daniel Baluta <[email protected]>; Andy Gross
> > <[email protected]>;
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected];
> > [email protected]; [email protected];
> > [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected];
> > linux- [email protected]; dl-linux-imx <[email protected]>
> > Subject: [EXT] Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > binding
> >
> > WARNING: This email was created outside of NXP. DO NOT CLICK links or
> > attachments unless you recognize the sender and know the content is safe.
> >
> >
> >
> > On 二, 2019-04-09 at 05:28 +0000, Anson Huang wrote:
> > > Ping...
> > > Can anyone provide some suggestion about how to proceed next?
> > >
> > Hi, Eduardo,
> >
> > I guess you will comment on this patch, right?
> > Or else I will take the patch following Rob' suggestion.
> >
> > thanks,
> > rui
> >
> >
> > > Best Regards!
> > > Anson Huang
> > >
> > > >
> > > > -----Original Message-----
> > > > From: Anson Huang
> > > > Sent: 2019年3月26日 10:45
> > > > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > > > <[email protected]>
> > > > Cc: '[email protected]' <[email protected]>;
> > > > '[email protected]' <[email protected]>;
> > '[email protected]
> > > > e'
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > <[email protected]>;
> > > > '[email protected]' <[email protected]>;
> > > > '[email protected]' <[email protected]>;
> '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > <[email protected]>;
> > > > '[email protected]' <[email protected]>; Aisheng
> > > > Dong <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]' <[email protected]>;
> > > > Daniel Baluta <[email protected]>; Andy Gross
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> <[email protected]>;
> > > > '[email protected]' <[email protected]
> > > > >;
> > > > '[email protected]' <[email protected]>;
> > > > '[email protected]' <[email protected]>;
> > > > '[email protected]' <[email protected]>;
> > > > '[email protected]' <[email protected]>;
> > > > '[email protected]' <[email protected]>;
> > > > '[email protected] t'
> > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > > <linux-
> > > > [email protected]>; '[email protected]'
> > > > <linux-arm-
> > > > [email protected]>; '[email protected]' <linux-
> > > > [email protected]>; dl-linux-imx <[email protected]>
> > > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > > binding
> > > >
> > > > Ping...
> > > >
> > > > Hi, Eduardo
> > > > What is your opinion about where to put the HW resource ID in
> > > > DT?
> > > >
> > > > Best Regards!
> > > > Anson Huang
> > > >
> > > > >
> > > > > -----Original Message-----
> > > > > From: Anson Huang
> > > > > Sent: 2019年3月13日 16:12
> > > > > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > > > > <[email protected]>
> > > > > Cc: '[email protected]' <[email protected]>;
> > > > > '[email protected]' <[email protected]>;
> > > > '[email protected]'
> > > > >
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > <[email protected]
> > > > > >;
> > > > > '[email protected]' <[email protected]>;
> > > > > '[email protected]' <[email protected]>;
> > > > > '[email protected] '
> > > > > <[email protected]>; '[email protected]'
> > <[email protected]
> > > > > >;
> > > > > '[email protected]' <[email protected]>; Aisheng
> > > > > Dong <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]' <[email protected]>;
> > > > > Daniel Baluta <[email protected]>; Andy Gross
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]> ; '[email protected]' <[email protected]>;
> '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>; '[email protected]'
> > > > >
> > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > > <linux-
> > > > > [email protected]>; '[email protected]'
> > > > > <linux-arm- [email protected]>;
> > > > > '[email protected] g'
> > > > > <linux- [email protected]>; dl-linux-imx <[email protected]>
> > > > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add thermal
> > > > > binding
> > > > >
> > > > > Ping...
> > > > > Hi, Eduardo
> > > > > Can you take a look at this thread? Thanks.
> > > > >
> > > > >
> > > > > Best Regards!
> > > > > Anson Huang
> > > > >
> > > > > >
> > > > > > -----Original Message-----
> > > > > > From: Anson Huang
> > > > > > Sent: 2019年3月6日 13:27
> > > > > > To: 'Rob Herring' <[email protected]>; '[email protected]'
> > > > > > <[email protected]>
> > > > > > Cc: '[email protected]' <[email protected]>;
> > > > > > '[email protected]' <[email protected]>;
> > > > > '[email protected]'
> > > > > >
> > > > > > <[email protected]>; '[email protected]'
> > > > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>;
> > > > >
> > > > > >
> > > > > > '[email protected]' <[email protected]>;
> > > > > > '[email protected]' <[email protected]>;
> > > > > > '[email protected] om'
> > > > > > <[email protected]>; '[email protected]'
> > > > <[email protected]>;
> > > > >
> > > > > >
> > > > > > '[email protected]' <[email protected]>;
> > > > > > Aisheng Dong <[email protected]>; '[email protected]'
> > > > > > <[email protected]>; '[email protected]'
> > > > > > <[email protected]> ; Daniel Baluta <[email protected]>;
> > > > > > Andy Gross <[email protected]>;
> '[email protected]'
> > > > > > <[email protected]>; '[email protected]'
> > <[email protected]
> > > > > > e>;
> > > > > > '[email protected]' <[email protected]>; '[email protected]'
> > > > > > <[email protected]>; '[email protected]'
> > > > > > <[email protected]>; '[email protected]'
> > > > > > <[email protected]>; '[email protected]'
> > > > > > <[email protected]>; '[email protected]'
> > > > > <[email protected]>; '[email protected]'
> > > > > >
> > > > > > <[email protected]>; '[email protected]'
> > > > > > <[email protected]>; '[email protected]'
> > > > > > <linux-
> > > > > > [email protected]>; '[email protected]'
> > > > > > <linux-arm- [email protected]>; '[email protected].
> > > > > > org'
> > > > > > <linux- [email protected]>; dl-linux-imx <[email protected]>
> > > > > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add
> > > > > > thermal binding
> > > > > >
> > > > > > Ping...
> > > > > >
> > > > > > Hi, Eduardo
> > > > > > Looks like we are going around in circle, can we make
> > > > > > decision of which direction to go?
> > > > > >
> > > > > > Best Regards!
> > > > > > Anson Huang
> > > > > >
> > > > > > >
> > > > > > > -----Original Message-----
> > > > > > > From: Anson Huang
> > > > > > > Sent: 2019年3月1日 9:41
> > > > > > > To: 'Rob Herring' <[email protected]>; [email protected]
> > > > > > > Cc: [email protected]; [email protected];
> > > > > > [email protected];
> > > > > > >
> > > > > > > [email protected]; [email protected];
> > > > > [email protected];
> > > > > >
> > > > > > >
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected] ; [email protected]; Aisheng
> > > > > > > Dong <[email protected]
> > > > > > > >;
> > > > > > > [email protected]; [email protected]; Daniel Baluta
> > > > > > > <[email protected]>; Andy Gross <[email protected]>;
> > > > > > > [email protected]; [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected]; [email protected];
> > > > > > > [email protected];
> > > > > > > linux- [email protected]; dl-linux-imx <[email protected]>
> > > > > > > Subject: RE: [PATCH V10 1/4] dt-bindings: fsl: scu: add
> > > > > > > thermal binding
> > > > > > >
> > > > > > > Hi, Rob/Eduardo
> > > > > > >
> > > > > > > Best Regards!
> > > > > > > Anson Huang
> > > > > > >
> > > > > > > >
> > > > > > > > -----Original Message-----
> > > > > > > > From: Rob Herring [mailto:[email protected]]
> > > > > > > > Sent: 2019年2月28日 22:49
> > > > > > > > To: Anson Huang <[email protected]>
> > > > > > > > Cc: [email protected]; [email protected];
> > > > > > > [email protected];
> > > > > > > >
> > > > > > > > [email protected]; [email protected];
> > > > > > [email protected];
> > > > > > >
> > > > > > > >
> > > > > > > > [email protected]; [email protected];
> > > > > > > > [email protected] om; [email protected]; Aisheng
> > > > > > > > Dong <[email protected]
> > > > > > > > om>;
> > > > > > > > [email protected]; [email protected]; Daniel Baluta
> > > > > > > > <[email protected]>; Andy Gross
> > > > > > > > <[email protected]> ;
> > > > > > > > [email protected]; [email protected];
> > > > > > > > [email protected];
> > > > > > > > [email protected]; [email protected];
> > > > > > > > [email protected]; [email protected];
> > > > > > > > [email protected]; [email protected];
> > > > > > > > [email protected]; [email protected];
> > > > > > > > [email protected];
> > > > > > > > linux- [email protected]; dl-linux-imx
> > > > > > > > <[email protected]>
> > > > > > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu: add
> > > > > > > > thermal binding
> > > > > > > >
> > > > > > > > On Wed, Feb 27, 2019 at 6:48 PM Anson Huang
> > > > > <[email protected]>
> > > > > >
> > > > > > >
> > > > > > > >
> > > > > > > > wrote:
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > Hi, Rob
> > > > > > > > >
> > > > > > > > > Best Regards!
> > > > > > > > > Anson Huang
> > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > -----Original Message-----
> > > > > > > > > > From: Rob Herring [mailto:[email protected]]
> > > > > > > > > > Sent: 2019年2月28日 7:55
> > > > > > > > > > To: Anson Huang <[email protected]>
> > > > > > > > > > Cc: [email protected]; [email protected];
> > > > > > > > > > [email protected]; [email protected];
> > > > > > > [email protected];
> > > > > > > >
> > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > [email protected]; [email protected];
> > > > > > > [email protected];
> > > > > > > >
> > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > [email protected]; [email protected];
> > > > > > > > > > Aisheng Dong <[email protected]>;
> > > > > > > > > > [email protected]; [email protected]; Daniel
> > > > > > > > > > Baluta <[email protected]> ; Andy Gross
> > > > > > > > > > <[email protected]>;
> > > > > > > > > > [email protected]; [email protected];
> > > > > > > > > > horms+arnd@arndb
> > > > > > > > > > .de;
> > > > > > > > > > [email protected]; [email protected];
> > > > > > > > > > [email protected];
> > > > > > > > > > [email protected] m;
> > > > > > > > > > [email protected]; [email protected];
> > > > > > > > > > [email protected];
> > > > > > > > > > [email protected] g;
> > > > > > > > > > [email protected];
> > > > > > > > > > linux- [email protected]; dl-linux-imx <linux-imx@nxp.
> > > > > > > > > > com>
> > > > > > > > > > Subject: Re: [PATCH V10 1/4] dt-bindings: fsl: scu:
> > > > > > > > > > add thermal binding
> > > > > > > > > >
> > > > > > > > > > On Wed, Feb 27, 2019 at 08:46:21AM +0000, Anson Huang
> > > > > > > > > > wrote:
> > > > > > > > > > >
> > > > > > > > > > > NXP i.MX8QXP is an ARMv8 SoC with a Cortex-M4 core
> > > > > > > > > > > inside as system controller, the system controller
> > > > > > > > > > > is in charge of system power, clock and thermal
> > > > > > > > > > > sensors etc.
> > > > > > > > > > > management, Linux kernel has to communicate with
> > > > > > > > > > > system controller via MU (message unit) IPC to get
> > > > > > > > > > > temperature from thermal sensors, this patch adds
> > > > > > > > > > > binding doc for i.MX system controller thermal
> > > > > > driver.
> > > > > > >
> > > > > > > >
> > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > > Signed-off-by: Anson Huang <[email protected]>
> > > > > > > > > > > ---
> > > > > > > > > > > Changes since V9:
> > > > > > > > > > > - change #thermal-sensor-cells value in example
> > > > > > > > > > > to 1, since there are
> > > > > > > > > > other
> > > > > > > > > > >
> > > > > > > > > > > thermal sensors inside system controller, it
> > > > > > > > > > > is just because there are
> > > > > > > > > > still
> > > > > > > > > > >
> > > > > > > > > > > some issue, so system controller does NOT
> > > > > > > > > > > expose them for now,
> > > > > > > > > > they could
> > > > > > > > > > >
> > > > > > > > > > > be exposed later, so it should be 1 from HW
> > > > > > > > > > > perspective.
> > > > > > > > > > > ---
> > > > > > > > > > > .../devicetree/bindings/arm/freescale/fsl,scu.txt
> > > > > > > > > > > | 21
> > > > > > > > > > +++++++++++++++++++++
> > > > > > > > > > >
> > > > > > > > > > > 1 file changed, 21 insertions(+)
> > > > > > > > > > >
> > > > > > > > > > > diff --git
> > > > > > > > > > > a/Documentation/devicetree/bindings/arm/freescale/fs
> > > > > > > > > > > l
> > > > > > > > > > > ,scu.
> > > > > > > > > > > tx
> > > > > > > > > > > t
> > > > > > > > > > > b/Documentation/devicetree/bindings/arm/freescale/fs
> > > > > > > > > > > l
> > > > > > > > > > > ,scu.
> > > > > > > > > > > tx t index 72d481c..855270b 100644
> > > > > > > > > > > ---
> > > > > > > > > > > a/Documentation/devicetree/bindings/arm/freescale/fs
> > > > > > > > > > > l
> > > > > > > > > > > ,scu.
> > > > > > > > > > > tx
> > > > > > > > > > > t
> > > > > > > > > > > +++
> > > > 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?
> > > > > > >
> > > > > > > Thanks,
> > > > > > > Anson.
> > > > > > >
> > > > > > >
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatc
> > h
> work.kernel.org%2Fpatch%2F10703849%2F&data=02%7C01%7Canson.h
> >
> uang%40nxp.com%7C4ccced2bc4c94541605a08d6bcbcff74%7C686ea1d3bc2
> >
> b4c6fa92cd99c5c301635%7C0%7C0%7C636903917265841194&sdata=k
> >
> Q3dReprke6VnseMnOkHtP97p%2BD3IBCuRwBLj0rPCGI%3D&reserved=
> > 0
> > > > > > > >
> > > > > > > > + 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