From: Punit Agrawal <punit.agrawal@arm.com>
To: edubezval@gmail.com
Cc: rui.zhang@intel.com, linux-pm@vger.kernel.org,
devicetree@vger.kernel.org, Punit Agrawal <punit.agrawal@arm.com>
Subject: [PATCH] thermal: Fix cdev registration with THERMAL_NO_LIMIT on 64bit
Date: Tue, 9 Dec 2014 12:22:01 +0000 [thread overview]
Message-ID: <1418127721-1182-1-git-send-email-punit.agrawal@arm.com> (raw)
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.
Signed-off-by: Punit Agrawal <punit.agrawal@arm.com>
---
include/dt-bindings/thermal/thermal.h | 2 +-
include/linux/thermal.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/dt-bindings/thermal/thermal.h b/include/dt-bindings/thermal/thermal.h
index 59822a9..b5e6b00 100644
--- a/include/dt-bindings/thermal/thermal.h
+++ b/include/dt-bindings/thermal/thermal.h
@@ -11,7 +11,7 @@
#define _DT_BINDINGS_THERMAL_THERMAL_H
/* On cooling devices upper and lower limits */
-#define THERMAL_NO_LIMIT (-1UL)
+#define THERMAL_NO_LIMIT (~0)
#endif
diff --git a/include/linux/thermal.h b/include/linux/thermal.h
index ef90838..005586f 100644
--- a/include/linux/thermal.h
+++ b/include/linux/thermal.h
@@ -38,7 +38,7 @@
#define THERMAL_CSTATE_INVALID -1UL
/* No upper/lower limit requirement */
-#define THERMAL_NO_LIMIT THERMAL_CSTATE_INVALID
+#define THERMAL_NO_LIMIT ((u32)~0)
/* Unit conversion macros */
#define KELVIN_TO_CELSIUS(t) (long)(((long)t-2732 >= 0) ? \
--
2.1.1
next reply other threads:[~2014-12-09 12:22 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-09 12:22 Punit Agrawal [this message]
2014-12-10 1:57 ` [PATCH] thermal: Fix cdev registration with THERMAL_NO_LIMIT on 64bit Zhang Rui
2014-12-10 14:42 ` Eduardo Valentin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1418127721-1182-1-git-send-email-punit.agrawal@arm.com \
--to=punit.agrawal@arm.com \
--cc=devicetree@vger.kernel.org \
--cc=edubezval@gmail.com \
--cc=linux-pm@vger.kernel.org \
--cc=rui.zhang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).