powerpc/fsl_soc: improve and simplify get_brgfreq
authorHeiner Kallweit <hkallweit1@gmail.com>
Sat, 29 Oct 2016 14:28:25 +0000 (16:28 +0200)
committerScott Wood <oss@buserror.net>
Wed, 23 Nov 2016 07:23:36 +0000 (01:23 -0600)
Use of_property_read_u32 instead of the generic of_get_property to
simplify the code. In addition move the declaration of brgfreq
into get_brgfreq because it's private to this function.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
[scottwood: minor whitespace fixes]
Signed-off-by: Scott Wood <oss@buserror.net>
arch/powerpc/sysdev/fsl_soc.c

index 48fc36b3851fd4b133cad6051e9e0a7fd3b930d2..ebccf0bad4a1465a8a3a4ed93df3d49a8e6a942f 100644 (file)
@@ -100,23 +100,17 @@ EXPORT_SYMBOL(fsl_get_sys_freq);
 
 #if defined(CONFIG_CPM2) || defined(CONFIG_QUICC_ENGINE) || defined(CONFIG_8xx)
 
-static u32 brgfreq = -1;
-
 u32 get_brgfreq(void)
 {
+       static u32 brgfreq = -1;
        struct device_node *node;
-       const unsigned int *prop;
-       int size;
 
        if (brgfreq != -1)
                return brgfreq;
 
        node = of_find_compatible_node(NULL, NULL, "fsl,cpm-brg");
        if (node) {
-               prop = of_get_property(node, "clock-frequency", &size);
-               if (prop && size == 4)
-                       brgfreq = *prop;
-
+               of_property_read_u32(node, "clock-frequency", &brgfreq);
                of_node_put(node);
                return brgfreq;
        }
@@ -129,15 +123,11 @@ u32 get_brgfreq(void)
                node = of_find_node_by_type(NULL, "qe");
 
        if (node) {
-               prop = of_get_property(node, "brg-frequency", &size);
-               if (prop && size == 4)
-                       brgfreq = *prop;
-
-               if (brgfreq == -1 || brgfreq == 0) {
-                       prop = of_get_property(node, "bus-frequency", &size);
-                       if (prop && size == 4)
-                               brgfreq = *prop / 2;
-               }
+               of_property_read_u32(node, "brg-frequency", &brgfreq);
+               if (brgfreq == -1 || !brgfreq)
+                       if (!of_property_read_u32(node, "bus-frequency",
+                                                 &brgfreq))
+                               brgfreq /= 2;
                of_node_put(node);
        }