cpufreq: pmac32: Use of_property_read_reg() to parse "reg"
authorRob Herring <robh@kernel.org>
Mon, 25 Sep 2023 19:02:35 +0000 (14:02 -0500)
committerViresh Kumar <viresh.kumar@linaro.org>
Wed, 27 Sep 2023 11:17:09 +0000 (16:47 +0530)
Use the recently added of_property_read_reg() helper to get the
untranslated "reg" address value.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
drivers/cpufreq/pmac32-cpufreq.c

index ec75e79659ace83e71b08125f9266f131e97ad5c..df3567c1e93b7a375027f26188b7130b48c2a3e0 100644 (file)
@@ -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;