]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - drivers/i2c/muxes/i2c-mux-uclass.c
Merge git://git.denx.de/u-boot-sunxi
[people/ms/u-boot.git] / drivers / i2c / muxes / i2c-mux-uclass.c
index d243b8e32d62aee3f34cb73ba57c8fc9eb63b7e5..187e8a7c91730afe56ab52ca04ee39dc1b0b0002 100644 (file)
@@ -51,24 +51,21 @@ static int i2c_mux_child_post_bind(struct udevice *dev)
 /* Find the I2C buses selected by this mux */
 static int i2c_mux_post_bind(struct udevice *mux)
 {
-       const void *blob = gd->fdt_blob;
+       ofnode node;
        int ret;
-       int offset;
 
        debug("%s: %s\n", __func__, mux->name);
        /*
         * There is no compatible string in the sub-nodes, so we must manually
         * bind these
         */
-       for (offset = fdt_first_subnode(blob, dev_of_offset(mux));
-            offset > 0;
-            offset = fdt_next_subnode(blob, offset)) {
+       dev_for_each_subnode(node, mux) {
                struct udevice *dev;
                const char *name;
 
-               name = fdt_get_name(blob, offset, NULL);
+               name = ofnode_get_name(node);
                ret = device_bind_driver_to_node(mux, "i2c_mux_bus_drv", name,
-                                                offset, &dev);
+                                                node, &dev);
                debug("   - bind ret=%d, %s\n", ret, dev ? dev->name : NULL);
                if (ret)
                        return ret;