From 5a52977f2850dc0923151ad2d75c6af518940294 Mon Sep 17 00:00:00 2001 From: ramneek mehresh Date: Mon, 6 Feb 2012 19:17:29 +0000 Subject: [PATCH] powerpc/8xxx: Cleanup USB device-tree fixup Some code cleanup done for USB device-tree fixup: - handling error value returned from fdt_fixup_usb_mode_phy_type() - using ARRAY_SIZE macro - using snprintf instead of sprintf Signed-off-by: Ramneek Mehresh --- arch/powerpc/cpu/mpc8xxx/fdt.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/arch/powerpc/cpu/mpc8xxx/fdt.c b/arch/powerpc/cpu/mpc8xxx/fdt.c index d07ae1b4fe..bc1c30e44c 100644 --- a/arch/powerpc/cpu/mpc8xxx/fdt.c +++ b/arch/powerpc/cpu/mpc8xxx/fdt.c @@ -1,5 +1,5 @@ /* - * Copyright 2009-2011 Freescale Semiconductor, Inc. + * Copyright 2009-2012 Freescale Semiconductor, Inc. * * This file is derived from arch/powerpc/cpu/mpc85xx/cpu.c and * arch/powerpc/cpu/mpc86xx/cpu.c. Basically this file contains @@ -137,28 +137,34 @@ void fdt_fixup_dr_usb(void *blob, bd_t *bd) for (i = 1; i <= FSL_MAX_NUM_USB_CTRLS; i++) { int mode_idx = -1, phy_idx = -1; - sprintf(str, "%s%d", "usb", i); + snprintf(str, 5, "%s%d", "usb", i); if (hwconfig(str)) { - for (j = 0; j < sizeof(modes); j++) { + for (j = 0; j < ARRAY_SIZE(modes); j++) { if (hwconfig_subarg_cmp(str, "dr_mode", modes[j])) { mode_idx = j; break; } } - for (j = 0; j < sizeof(phys); j++) { + for (j = 0; j < ARRAY_SIZE(phys); j++) { if (hwconfig_subarg_cmp(str, "phy_type", phys[j])) { phy_idx = j; break; } } - if (mode_idx >= 0) + if (mode_idx >= 0) { usb_mode_off = fdt_fixup_usb_mode_phy_type(blob, modes[mode_idx], NULL, usb_mode_off); - if (phy_idx >= 0) + if (usb_mode_off < 0) + return; + } + if (phy_idx >= 0) { usb_phy_off = fdt_fixup_usb_mode_phy_type(blob, NULL, phys[phy_idx], usb_phy_off); + if (usb_phy_off < 0) + return; + } if (!strcmp(str, "usb1")) usb1_defined = 1; if (mode_idx < 0 && phy_idx < 0) -- 2.30.2