]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
drivers: imx_tmu: Select polling-rate from cpu-thermal devicetree node
authorBenjamin Hahn <B.Hahn@phytec.de>
Mon, 4 Mar 2024 11:48:54 +0000 (12:48 +0100)
committerFabio Estevam <festevam@gmail.com>
Sun, 17 Mar 2024 21:38:46 +0000 (18:38 -0300)
The polling rate is already specified in some devicetrees, like
imx8mp.dtsi for example, but was not selected so far. For the
trippoints, the cpu-thermal node is used. Also get the polling rate from
this node. Use the default of 5000ms if the polling rate should not be
specified in the devicetree.

NOTE: The polling rate from the devicetree will be used after this
patch. In imx8*.dtsi devicetrees the polling delay is set to 2000ms for
example.

Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
drivers/thermal/imx_tmu.c

index 4721cfbc021813108ba9a559d0ea9b471a52c269..c7fe0f07a60773b1e8a8bc031a3da04f509db8f5 100644 (file)
@@ -570,12 +570,14 @@ static int imx_tmu_parse_fdt(struct udevice *dev)
 {
        struct imx_tmu_plat *pdata = dev_get_plat(dev), *p_parent_data;
        struct ofnode_phandle_args args;
-       ofnode trips_np;
+       ofnode trips_np, cpu_thermal_np;
        int ret;
 
        dev_dbg(dev, "%s\n", __func__);
 
-       pdata->polling_delay = IMX_TMU_POLLING_DELAY_MS;
+       cpu_thermal_np = ofnode_path("/thermal-zones/cpu-thermal");
+       pdata->polling_delay = ofnode_read_u32_default(cpu_thermal_np, "polling-delay",
+                                                      IMX_TMU_POLLING_DELAY_MS);
 
        if (pdata->zone_node) {
                pdata->regs = (union tmu_regs *)dev_read_addr_ptr(dev);