[U-Boot] [PATCH v4 4/4] drivers:usb:common:fsl-dt-fixup: fix fdt_usb_get_node_type() to return error code
Sriram Dash
sriram.dash at nxp.com
Fri Mar 11 07:26:16 CET 2016
fdt_usb_get_node_type() to return error code instead of pointer.
Signed-off-by: Sriram Dash <sriram.dash at nxp.com>
Signed-off-by: Rajesh Bhagat <rajesh.bhagat at nxp.com>
---
drivers/usb/common/fsl-dt-fixup.c | 25 ++++++++++++++-----------
1 file changed, 14 insertions(+), 11 deletions(-)
diff --git a/drivers/usb/common/fsl-dt-fixup.c b/drivers/usb/common/fsl-dt-fixup.c
index b574127..f7137e4 100644
--- a/drivers/usb/common/fsl-dt-fixup.c
+++ b/drivers/usb/common/fsl-dt-fixup.c
@@ -19,8 +19,8 @@
#define CONFIG_USB_MAX_CONTROLLER_COUNT 1
#endif
-static char *fdt_usb_get_node_type(void *blob, int start_offset,
- int *node_offset);
+static int fdt_usb_get_node_type(void *blob, int start_offset,
+ int *node_offset, char **node_type);
char compat_usb_fsl[] = {
"fsl-usb2-mph" "\0"
@@ -37,8 +37,9 @@ static int fdt_fixup_usb_mode_phy_type(void *blob, const char *mode,
int node_offset;
int err;
- node_type = fdt_usb_get_node_type(blob, start_offset, &node_offset);
- if (!node_type)
+ err = fdt_usb_get_node_type(blob, start_offset,
+ &node_offset, &node_type);
+ if (err < 0)
return -1;
if (mode) {
@@ -60,11 +61,11 @@ static int fdt_fixup_usb_mode_phy_type(void *blob, const char *mode,
return node_offset;
}
-static char *fdt_usb_get_node_type(void *blob, int start_offset,
- int *node_offset)
+static int fdt_usb_get_node_type(void *blob, int start_offset,
+ int *node_offset, char **node_type)
{
- char *node_type = NULL;
char *node_name, *nxt;
+ int ret = -1;
for (node_name = compat_usb_fsl; *node_name; node_name = nxt + 1) {
nxt = node_name;
@@ -73,11 +74,12 @@ static char *fdt_usb_get_node_type(void *blob, int start_offset,
*node_offset = fdt_node_offset_by_compatible
(blob, start_offset, node_name);
if (*node_offset >= 0) {
- node_type = node_name;
+ *node_type = node_name;
+ ret = 0;
break;
}
}
- return node_type;
+ return ret;
}
static int fdt_fixup_usb_erratum(void *blob, const char *prop_erratum,
@@ -86,8 +88,9 @@ static int fdt_fixup_usb_erratum(void *blob, const char *prop_erratum,
int node_offset, err;
char *node_type = NULL;
- node_type = fdt_usb_get_node_type(blob, start_offset, &node_offset);
- if (!node_type)
+ err = fdt_usb_get_node_type(blob, start_offset,
+ &node_offset, &node_type);
+ if (err < 0)
return -1;
err = fdt_setprop(blob, node_offset, prop_erratum, NULL, 0);
--
2.1.0
More information about the U-Boot
mailing list