From patchwork Wed Feb 19 01:54:44 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kever Yang X-Patchwork-Id: 236538 List-Id: U-Boot discussion From: kever.yang at rock-chips.com (Kever Yang) Date: Wed, 19 Feb 2020 09:54:44 +0800 Subject: [PATCH 07/10] usb: musb-new: Migrate to use ofnode API In-Reply-To: <20200219015447.19392-1-kever.yang@rock-chips.com> References: <20200219015447.19392-1-kever.yang@rock-chips.com> Message-ID: <20200219015447.19392-8-kever.yang@rock-chips.com> Use ofnode_ instead of fdt_ APIs so that the driver can support live DT. Signed-off-by: Kever Yang --- drivers/usb/musb-new/ti-musb.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/usb/musb-new/ti-musb.c b/drivers/usb/musb-new/ti-musb.c index 20ca2731b4..28172c9c99 100644 --- a/drivers/usb/musb-new/ti-musb.c +++ b/drivers/usb/musb-new/ti-musb.c @@ -284,28 +284,26 @@ U_BOOT_DRIVER(ti_musb_peripheral) = { #if CONFIG_IS_ENABLED(OF_CONTROL) static int ti_musb_wrapper_bind(struct udevice *parent) { - const void *fdt = gd->fdt_blob; - int node; + ofnode node; int ret; - for (node = fdt_first_subnode(fdt, dev_of_offset(parent)); node > 0; - node = fdt_next_subnode(fdt, node)) { + ofnode_for_each_subnode(node, parent->node) { struct udevice *dev; - const char *name = fdt_get_name(fdt, node, NULL); + const char *name = ofnode_get_name(node); enum usb_dr_mode dr_mode; struct driver *drv; if (strncmp(name, "usb@", 4)) continue; - dr_mode = usb_get_dr_mode(node); + dr_mode = usb_get_dr_mode(ofnode_to_offset(node)); switch (dr_mode) { case USB_DR_MODE_PERIPHERAL: /* Bind MUSB device */ ret = device_bind_driver_to_node(parent, "ti-musb-peripheral", name, - offset_to_ofnode(node), + node, &dev); if (ret) pr_err("musb - not able to bind usb peripheral node\n"); @@ -315,7 +313,7 @@ static int ti_musb_wrapper_bind(struct udevice *parent) ret = device_bind_driver_to_node(parent, "ti-musb-host", name, - offset_to_ofnode(node), + node, &dev); if (ret) pr_err("musb - not able to bind usb host node\n");