thermal: Fix cdev registration with THERMAL_NO_LIMIT on 64bit
authorPunit Agrawal <punit.agrawal@arm.com>
Tue, 9 Dec 2014 12:22:01 +0000 (12:22 +0000)
committerEduardo Valentin <edubezval@gmail.com>
Wed, 10 Dec 2014 15:11:00 +0000 (11:11 -0400)
The size of unsigned long varies between 32 and 64 bit systems while
the size of phandle arguments is always 32 bits per parameter.

On 64-bit systems, cooling devices registered via of-thermal apis fail
to bind when the min/max cooling state is specified as
THERMAL_NO_LIMIT (-1UL) as there is a mis-match between the value read
from the device tree (32bit) and the pre-processor define (64bit).

As we're unlikely to need cooling states larger than 32 bits, and for
consistency with the size of phandle arguments, explicitly limit
THERMAL_NO_LIMIT to 32 bits.

Reported-by: Hyungwoo Yang <hwoo.yang@gmail.com>
Acked-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Punit Agrawal <punit.agrawal@arm.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>

No differences found