lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Tue, 29 Jul 2014 09:47:19 -0400
From:	Eduardo Valentin <edubezval@...il.com>
To:	Laxman Dewangan <ldewangan@...dia.com>
Cc:	rui.zhang@...el.com, eduardo.valentin@...il.com,
	linux-pm@...r.kernel.org, linux-kernel@...r.kernel.org,
	javi.merino@....com
Subject: Re: [PATCH] thermal: add support to disable thermal zone from DTS

On Fri, Jul 25, 2014 at 03:31:58PM +0530, Laxman Dewangan wrote:
> Add support to check status of the thermal zone before registering the
> zone. This will help on disabling some non-existing thermal zone from
> the top level DTS file out of common dtsi thermalzone file.
> 
> For example,
> we have 3 platforms almost same but thermal zones on this platform are
> little bit different. Platform 1 and 2 have three thermal zones and
> platform 3 has two thermal zones. To avoid duplication of the thermal
> zones entries on each DTS file of platforms,we created one common
> dtsi file for thermal zone and included this dtsi file from these
> 3 platform's top level dts file.
> 
> On common thermal zone com dtsi file, all thermal zone are enabled and
> need to disable one of thermal zone on platform 3 dts file. For this, we
> just added entry status = "disabled" for that thermal zone on platform 3
> dts file and along with this change to make it work.
> 
> This way, we reuse the common file and control the enable/disable of the
> thermal zone from top level dts file.
> 
> Signed-off-by: Laxman Dewangan <ldewangan@...dia.com>

This patch looks sane to me.

Applied. Thanks.

> ---
>  drivers/thermal/of-thermal.c | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/drivers/thermal/of-thermal.c b/drivers/thermal/of-thermal.c
> index 4b2b999..f8eb625 100644
> --- a/drivers/thermal/of-thermal.c
> +++ b/drivers/thermal/of-thermal.c
> @@ -401,6 +401,10 @@ thermal_zone_of_sensor_register(struct device *dev, int sensor_id,
>  		struct of_phandle_args sensor_specs;
>  		int ret, id;
>  
> +		/* Check whether child is enabled or not */
> +		if (!of_device_is_available(child))
> +			continue;
> +
>  		/* For now, thermal framework supports only 1 sensor per zone */
>  		ret = of_parse_phandle_with_args(child, "thermal-sensors",
>  						 "#thermal-sensor-cells",
> @@ -771,6 +775,10 @@ int __init of_parse_thermal_zones(void)
>  		struct thermal_zone_device *zone;
>  		struct thermal_zone_params *tzp;
>  
> +		/* Check whether child is enabled or not */
> +		if (!of_device_is_available(child))
> +			continue;
> +
>  		tz = thermal_of_build_thermal_zone(child);
>  		if (IS_ERR(tz)) {
>  			pr_err("failed to build thermal zone %s: %ld\n",
> @@ -838,6 +846,10 @@ void of_thermal_destroy_zones(void)
>  	for_each_child_of_node(np, child) {
>  		struct thermal_zone_device *zone;
>  
> +		/* Check whether child is enabled or not */
> +		if (!of_device_is_available(child))
> +			continue;
> +
>  		zone = thermal_zone_get_zone_by_name(child->name);
>  		if (IS_ERR(zone))
>  			continue;
> -- 
> 1.8.1.5
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists