Use the recently added of_property_read_reg() helper to get the
untranslated "reg" address value.

Acked-by: Viresh Kumar <viresh.ku...@linaro.org>
Signed-off-by: Rob Herring <r...@kernel.org>
---
v2:
 - Add missing include
---
 drivers/cpufreq/pmac32-cpufreq.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/cpufreq/pmac32-cpufreq.c b/drivers/cpufreq/pmac32-cpufreq.c
index ec75e79659ac..df3567c1e93b 100644
--- a/drivers/cpufreq/pmac32-cpufreq.c
+++ b/drivers/cpufreq/pmac32-cpufreq.c
@@ -24,6 +24,7 @@
 #include <linux/device.h>
 #include <linux/hardirq.h>
 #include <linux/of.h>
+#include <linux/of_address.h>
 
 #include <asm/machdep.h>
 #include <asm/irq.h>
@@ -378,10 +379,9 @@ static int pmac_cpufreq_cpu_init(struct cpufreq_policy 
*policy)
 
 static u32 read_gpio(struct device_node *np)
 {
-       const u32 *reg = of_get_property(np, "reg", NULL);
-       u32 offset;
+       u64 offset;
 
-       if (reg == NULL)
+       if (of_property_read_reg(np, 0, &offset, NULL) < 0)
                return 0;
        /* That works for all keylargos but shall be fixed properly
         * some day... The problem is that it seems we can't rely
@@ -389,7 +389,6 @@ static u32 read_gpio(struct device_node *np)
         * relative to the base of KeyLargo or to the base of the
         * GPIO space, and the device-tree doesn't help.
         */
-       offset = *reg;
        if (offset < KEYLARGO_GPIO_LEVELS0)
                offset += KEYLARGO_GPIO_LEVELS0;
        return offset;
-- 
2.40.1

Reply via email to