dm: usb: Convert uclass to livetree
authorSimon Glass <sjg@chromium.org>
Fri, 19 May 2017 02:09:38 +0000 (20:09 -0600)
committerSimon Glass <sjg@chromium.org>
Thu, 1 Jun 2017 13:03:13 +0000 (07:03 -0600)
Update the usb uclass to support a live device tree.

Signed-off-by: Simon Glass <sjg@chromium.org>
drivers/usb/host/usb-uclass.c

index 6eded4abad029ac11fea795628771ea9e7e40517..110ddc92fa3ada91f181cedcc454077b8da527b2 100644 (file)
@@ -683,20 +683,18 @@ int usb_detect_change(void)
 int usb_child_post_bind(struct udevice *dev)
 {
        struct usb_dev_platdata *plat = dev_get_parent_platdata(dev);
-       const void *blob = gd->fdt_blob;
        int val;
 
-       if (dev_of_offset(dev) == -1)
+       if (!dev_of_valid(dev))
                return 0;
 
        /* We only support matching a few things */
-       val = fdtdec_get_int(blob, dev_of_offset(dev), "usb,device-class", -1);
+       val = dev_read_u32_default(dev, "usb,device-class", -1);
        if (val != -1) {
                plat->id.match_flags |= USB_DEVICE_ID_MATCH_DEV_CLASS;
                plat->id.bDeviceClass = val;
        }
-       val = fdtdec_get_int(blob, dev_of_offset(dev), "usb,interface-class",
-                            -1);
+       val = dev_read_u32_default(dev, "usb,interface-class", -1);
        if (val != -1) {
                plat->id.match_flags |= USB_DEVICE_ID_MATCH_INT_CLASS;
                plat->id.bInterfaceClass = val;