]> rtime.felk.cvut.cz Git - zynq/linux.git/commitdiff
powerpc: Use of_node_name_eq for node name comparisons
authorRob Herring <robh@kernel.org>
Wed, 5 Dec 2018 19:50:18 +0000 (13:50 -0600)
committerMichael Ellerman <mpe@ellerman.id.au>
Sat, 22 Dec 2018 10:29:50 +0000 (21:29 +1100)
Convert string compares of DT node names to use of_node_name_eq helper
instead. This removes direct access to the node name pointer.

A couple of open coded iterating thru the child node names are converted
to use for_each_child_of_node() instead.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
15 files changed:
arch/powerpc/kernel/legacy_serial.c
arch/powerpc/platforms/44x/warp.c
arch/powerpc/platforms/52xx/efika.c
arch/powerpc/platforms/cell/setup.c
arch/powerpc/platforms/cell/spu_manage.c
arch/powerpc/platforms/chrp/setup.c
arch/powerpc/platforms/powermac/feature.c
arch/powerpc/platforms/powermac/low_i2c.c
arch/powerpc/platforms/powermac/pci.c
arch/powerpc/platforms/powermac/pfunc_base.c
arch/powerpc/platforms/powermac/pic.c
arch/powerpc/platforms/powermac/setup.c
arch/powerpc/platforms/powermac/udbg_scc.c
arch/powerpc/platforms/powernv/opal.c
arch/powerpc/platforms/pseries/setup.c

index fde632335a9727fd09a81583e13d48980c37da33..7cea5978f21f000317240d5092b68bd2f1561e17 100644 (file)
@@ -400,8 +400,7 @@ void __init find_legacy_serial_ports(void)
        /* Next, fill our array with ISA ports */
        for_each_node_by_type(np, "serial") {
                struct device_node *isa = of_get_parent(np);
-               if (isa && (!strcmp(isa->name, "isa") ||
-                           !strcmp(isa->name, "lpc"))) {
+               if (of_node_name_eq(isa, "isa") || of_node_name_eq(isa, "lpc")) {
                        if (of_device_is_available(np)) {
                                index = add_legacy_isa_port(np, isa);
                                if (index >= 0 && np == stdout)
@@ -415,11 +414,11 @@ void __init find_legacy_serial_ports(void)
        /* Next, try to locate PCI ports */
        for (np = NULL; (np = of_find_all_nodes(np));) {
                struct device_node *pci, *parent = of_get_parent(np);
-               if (parent && !strcmp(parent->name, "isa")) {
+               if (of_node_name_eq(parent, "isa")) {
                        of_node_put(parent);
                        continue;
                }
-               if (strcmp(np->name, "serial") &&
+               if (!of_node_name_eq(np, "serial") &&
                    !of_node_is_type(np, "serial")) {
                        of_node_put(parent);
                        continue;
index 7e4f8ca19ce85715b2ba9536241b033264b6f7f9..f467247fd1c45033b49a673caffb3917e1b19a1e 100644 (file)
@@ -179,9 +179,9 @@ static int pika_setup_leds(void)
        }
 
        for_each_child_of_node(np, child)
-               if (strcmp(child->name, "green") == 0)
+               if (of_node_name_eq(child, "green"))
                        green_led = of_get_gpio(child, 0);
-               else if (strcmp(child->name, "red") == 0)
+               else if (of_node_name_eq(child, "red"))
                        red_led = of_get_gpio(child, 0);
 
        of_node_put(np);
index 1ecbf176d35a16aca54fc1193fe8b5a78ff3bcb6..61538869e88a277d29a94999cfbe944fe5c3a1ce 100644 (file)
@@ -82,11 +82,9 @@ static void __init efika_pcisetup(void)
                return;
        }
 
-       for (pcictrl = NULL;;) {
-               pcictrl = of_get_next_child(root, pcictrl);
-               if ((pcictrl == NULL) || (strcmp(pcictrl->name, "pci") == 0))
+       for_each_child_of_node(root, pcictrl)
+               if (of_node_name_eq(pcictrl, "pci"))
                        break;
-       }
 
        of_node_put(root);
 
index 902d527d043fb9e4cd0e21647ccf033d9af35893..e2e1371a71e2cf6267ff4a200bdf52cf896da57e 100644 (file)
@@ -131,7 +131,7 @@ static int cell_setup_phb(struct pci_controller *phb)
 
        np = phb->dn;
        model = of_get_property(np, "model", NULL);
-       if (model == NULL || strcmp(np->name, "pci"))
+       if (model == NULL || !of_node_name_eq(np, "pci"))
                return 0;
 
        /* Setup workarounds for spider */
index f7e36373f6e045c47c8c333e681d01a40f5b1605..bed935c51ec21694fadcc0ecc3d8fc0e8be94b4a 100644 (file)
@@ -458,7 +458,6 @@ static void init_affinity_node(int cbe)
        struct device_node *vic_dn, *last_spu_dn;
        phandle avoid_ph;
        const phandle *vic_handles;
-       const char *name;
        int lenp, i, added;
 
        last_spu = list_first_entry(&cbe_spu_info[cbe].spus, struct spu,
@@ -480,12 +479,7 @@ static void init_affinity_node(int cbe)
                        if (!vic_dn)
                                continue;
 
-                       /* a neighbour might be spe, mic-tm, or bif0 */
-                       name = of_get_property(vic_dn, "name", NULL);
-                       if (!name)
-                               continue;
-
-                       if (strcmp(name, "spe") == 0) {
+                       if (of_node_name_eq(vic_dn, "spe") ) {
                                spu = devnode_spu(cbe, vic_dn);
                                avoid_ph = last_spu_dn->phandle;
                        } else {
@@ -498,7 +492,7 @@ static void init_affinity_node(int cbe)
                                spu = neighbour_spu(cbe, vic_dn, last_spu_dn);
                                if (!spu)
                                        continue;
-                               if (!strcmp(name, "mic-tm")) {
+                               if (of_node_name_eq(vic_dn, "mic-tm")) {
                                        last_spu->has_mem_affinity = 1;
                                        spu->has_mem_affinity = 1;
                                }
index 3c21f046e20cadce0f262a9d5f7b6a969ac3ad58..e66644e0fb400c6df684423cc6f2f63fa3095abc 100644 (file)
@@ -287,10 +287,7 @@ static __init void chrp_init(void)
         * or /pci@80000000/isa@C/serial@i2F8
         * The optional graphics card has also type 'serial' in VGA mode.
         */
-       property = of_get_property(node, "name", NULL);
-       if (!property)
-               goto out_put;
-       if (!strcmp(property, "failsafe") || !strcmp(property, "serial"))
+       if (of_node_name_eq(node, "failsafe") || of_node_name_eq(node, "serial"))
                add_preferred_console("ttyS", 0, NULL);
 out_put:
        of_node_put(node);
index bdb3316337b67075666a7dbce99cbec8a3c8a7ac..c3e5ee8b5175ab45c6a26c593ae406ebd8f64b2f 100644 (file)
@@ -173,9 +173,9 @@ static long ohare_htw_scc_enable(struct device_node *node, long param,
        macio = macio_find(node, 0);
        if (!macio)
                return -ENODEV;
-       if (!strcmp(node->name, "ch-a"))
+       if (of_node_name_eq(node, "ch-a"))
                chan_mask = MACIO_FLAG_SCCA_ON;
-       else if (!strcmp(node->name, "ch-b"))
+       else if (of_node_name_eq(node, "ch-b"))
                chan_mask = MACIO_FLAG_SCCB_ON;
        else
                return -ENODEV;
@@ -610,9 +610,9 @@ static long core99_scc_enable(struct device_node *node, long param, long value)
        macio = macio_find(node, 0);
        if (!macio)
                return -ENODEV;
-       if (!strcmp(node->name, "ch-a"))
+       if (of_node_name_eq(node, "ch-a"))
                chan_mask = MACIO_FLAG_SCCA_ON;
-       else if (!strcmp(node->name, "ch-b"))
+       else if (of_node_name_eq(node, "ch-b"))
                chan_mask = MACIO_FLAG_SCCB_ON;
        else
                return -ENODEV;
@@ -1392,8 +1392,7 @@ static long g5_mpic_enable(struct device_node *node, long param, long value)
 
        if (parent == NULL)
                return 0;
-       is_u3 = strcmp(parent->name, "u3") == 0 ||
-               strcmp(parent->name, "u4") == 0;
+       is_u3 = of_node_name_eq(parent, "u3") || of_node_name_eq(parent, "u4");
        of_node_put(parent);
        if (!is_u3)
                return 0;
index 84bace3b546ad6ff7892ea5fdac1250929d983be..4de058a20d2bd6fbfb2fc680506fe440834cfa4b 100644 (file)
@@ -617,7 +617,7 @@ static void __init kw_i2c_probe(void)
                 * but not for now
                 */
                child = of_get_next_child(np, NULL);
-               multibus = !child || strcmp(child->name, "i2c-bus");
+               multibus = !of_node_name_eq(child, "i2c-bus");
                of_node_put(child);
 
                /* For a multibus setup, we get the bus count based on the
@@ -1205,7 +1205,7 @@ static void pmac_i2c_devscan(void (*callback)(struct device_node *dev,
                                if (bus != pmac_i2c_find_bus(np))
                                        continue;
                        for (p = whitelist; p->name != NULL; p++) {
-                               if (strcmp(np->name, p->name))
+                               if (!of_node_name_eq(np, p->name))
                                        continue;
                                if (p->compatible &&
                                    !of_device_is_compatible(np, p->compatible))
index 04527d13d5a44a82161680cf619d1b70c10de4d4..3d7420503c37ce7f319a9eaa4de48add875f33b3 100644 (file)
@@ -501,9 +501,7 @@ static void __init init_p2pbridge(void)
        /* XXX it would be better here to identify the specific
           PCI-PCI bridge chip we have. */
        p2pbridge = of_find_node_by_name(NULL, "pci-bridge");
-       if (p2pbridge == NULL
-           || p2pbridge->parent == NULL
-           || strcmp(p2pbridge->parent->name, "pci") != 0)
+       if (p2pbridge == NULL || !of_node_name_eq(p2pbridge->parent, "pci"))
                goto done;
        if (pci_device_from_OF_node(p2pbridge, &bus, &devfn) < 0) {
                DBG("Can't find PCI infos for PCI<->PCI bridge\n");
@@ -828,14 +826,14 @@ static int __init pmac_add_bridge(struct device_node *dev)
        if (of_device_is_compatible(dev, "uni-north")) {
                primary = setup_uninorth(hose, &rsrc);
                disp_name = "UniNorth";
-       } else if (strcmp(dev->name, "pci") == 0) {
+       } else if (of_node_name_eq(dev, "pci")) {
                /* XXX assume this is a mpc106 (grackle) */
                setup_grackle(hose);
                disp_name = "Grackle (MPC106)";
-       } else if (strcmp(dev->name, "bandit") == 0) {
+       } else if (of_node_name_eq(dev, "bandit")) {
                setup_bandit(hose, &rsrc);
                disp_name = "Bandit";
-       } else if (strcmp(dev->name, "chaos") == 0) {
+       } else if (of_node_name_eq(dev, "chaos")) {
                setup_chaos(hose, &rsrc);
                disp_name = "Chaos";
                primary = 0;
@@ -914,16 +912,14 @@ void __init pmac_pci_init(void)
                       "of device tree\n");
                return;
        }
-       for (np = NULL; (np = of_get_next_child(root, np)) != NULL;) {
-               if (np->name == NULL)
-                       continue;
-               if (strcmp(np->name, "bandit") == 0
-                   || strcmp(np->name, "chaos") == 0
-                   || strcmp(np->name, "pci") == 0) {
+       for_each_child_of_node(root, np) {
+               if (of_node_name_eq(np, "bandit")
+                   || of_node_name_eq(np, "chaos")
+                   || of_node_name_eq(np, "pci")) {
                        if (pmac_add_bridge(np) == 0)
                                of_node_get(np);
                }
-               if (strcmp(np->name, "ht") == 0) {
+               if (of_node_name_eq(np, "ht")) {
                        of_node_get(np);
                        ht = np;
                }
@@ -983,7 +979,7 @@ static bool pmac_pci_enable_device_hook(struct pci_dev *dev)
        /* Firewire & GMAC were disabled after PCI probe, the driver is
         * claiming them, we must re-enable them now.
         */
-       if (uninorth_child && !strcmp(node->name, "firewire") &&
+       if (uninorth_child && of_node_name_eq(node, "firewire") &&
            (of_device_is_compatible(node, "pci106b,18") ||
             of_device_is_compatible(node, "pci106b,30") ||
             of_device_is_compatible(node, "pci11c1,5811"))) {
@@ -991,7 +987,7 @@ static bool pmac_pci_enable_device_hook(struct pci_dev *dev)
                pmac_call_feature(PMAC_FTR_1394_ENABLE, node, 0, 1);
                updatecfg = 1;
        }
-       if (uninorth_child && !strcmp(node->name, "ethernet") &&
+       if (uninorth_child && of_node_name_eq(node, "ethernet") &&
            of_device_is_compatible(node, "gmac")) {
                pmac_call_feature(PMAC_FTR_GMAC_ENABLE, node, 0, 1);
                updatecfg = 1;
@@ -1262,4 +1258,3 @@ struct pci_controller_ops pmac_pci_controller_ops = {
        .enable_device_hook     = pmac_pci_enable_device_hook,
 #endif
 };
-
index fd2e210559c8b6ee6366b10f43fad3f08b89da35..62311e84a4232c4170f53fd65a8653eea5fa1005 100644 (file)
@@ -101,9 +101,8 @@ static void macio_gpio_init_one(struct macio_chip *macio)
         * Find the "gpio" parent node
         */
 
-       for (gparent = NULL;
-            (gparent = of_get_next_child(macio->of_node, gparent)) != NULL;)
-               if (strcmp(gparent->name, "gpio") == 0)
+       for_each_child_of_node(macio->of_node, gparent)
+               if (of_node_name_eq(gparent, "gpio"))
                        break;
        if (gparent == NULL)
                return;
@@ -313,7 +312,7 @@ static void uninorth_install_pfunc(void)
         * Install handlers for the hwclock child if any
         */
        for (np = NULL; (np = of_get_next_child(uninorth_node, np)) != NULL;)
-               if (strcmp(np->name, "hw-clock") == 0) {
+               if (of_node_name_eq(np, "hw-clock")) {
                        unin_hwclock = np;
                        break;
                }
index 5a71395e535e56a69752be2ab2adb2b5755288f4..c292ffac2ed4549f124fb01b4fa9b8153dbddd4e 100644 (file)
@@ -553,13 +553,13 @@ void __init pmac_pic_init(void)
 
                for_each_node_with_property(np, "interrupt-controller") {
                        /* Skip /chosen/interrupt-controller */
-                       if (strcmp(np->name, "chosen") == 0)
+                       if (of_node_name_eq(np, "chosen"))
                                continue;
                        /* It seems like at least one person wants
                         * to use BootX on a machine with an AppleKiwi
                         * controller which happens to pretend to be an
                         * interrupt controller too. */
-                       if (strcmp(np->name, "AppleKiwi") == 0)
+                       if (of_node_name_eq(np, "AppleKiwi"))
                                continue;
                        /* I think we found one ! */
                        of_irq_dflt_pic = np;
index 2f00e3daafb09f9a90430e10ba1dd57172dfd389..2e8221e20ee876b4cf280a0f5f98921ab04bb596 100644 (file)
@@ -560,15 +560,9 @@ static int __init check_pmac_serial_console(void)
        }
        pr_debug("stdout is %pOF\n", prom_stdout);
 
-       name = of_get_property(prom_stdout, "name", NULL);
-       if (!name) {
-               pr_debug(" stdout package has no name !\n");
-               goto not_found;
-       }
-
-       if (strcmp(name, "ch-a") == 0)
+       if (of_node_name_eq(prom_stdout, "ch-a"))
                offset = 0;
-       else if (strcmp(name, "ch-b") == 0)
+       else if (of_node_name_eq(prom_stdout, "ch-b"))
                offset = 1;
        else
                goto not_found;
index 8901973ed683d6d2afed613741ad088e6951ee70..415b74d7c2537fb5041a632ffdd139b87747a98d 100644 (file)
@@ -87,7 +87,7 @@ void udbg_scc_init(int force_scc)
        for (ch = NULL; (ch = of_get_next_child(escc, ch)) != NULL;) {
                if (ch == stdout)
                        ch_def = of_node_get(ch);
-               if (strcmp(ch->name, "ch-a") == 0)
+               if (of_node_name_eq(ch, "ch-a"))
                        ch_a = of_node_get(ch);
        }
        if (ch_def == NULL && !force_scc)
index f6dfc0534969991e0619886b292782ca890c3cdf..79586f127521349784ccba896ee6635bdd8d0bbb 100644 (file)
@@ -877,7 +877,7 @@ static int __init opal_init(void)
        consoles = of_find_node_by_path("/ibm,opal/consoles");
        if (consoles) {
                for_each_child_of_node(consoles, np) {
-                       if (strcmp(np->name, "serial"))
+                       if (!of_node_name_eq(np, "serial"))
                                continue;
                        of_platform_device_create(np, NULL, NULL);
                }
index 4078a05fa5c0faeb48c862c5253f498ea211baf6..41f62ca27c63563b8ef00db4cdd9af0bbb69628f 100644 (file)
@@ -190,7 +190,7 @@ static void __init pseries_setup_i8259_cascade(void)
                of_node_put(old);
                if (np == NULL)
                        break;
-               if (strcmp(np->name, "pci") != 0)
+               if (!of_node_name_eq(np, "pci"))
                        continue;
                addrp = of_get_property(np, "8259-interrupt-acknowledge", NULL);
                if (addrp == NULL)