[PATCH 1/4] am33xx_generic: convert from switch to if/else
Jan Luebbe
jlu at pengutronix.de
Wed Oct 2 15:30:08 EDT 2013
The function am33xx_get_cpu_rev may be called before barebox_arm_entry(),
so we need to avoid switch statements. One example is the BeagleBone,
where we use this function to differenciate between the white and black
variants.
Signed-off-by: Jan Luebbe <jlu at pengutronix.de>
---
arch/arm/mach-omap/am33xx_generic.c | 31 +++++++++++--------------------
1 file changed, 11 insertions(+), 20 deletions(-)
diff --git a/arch/arm/mach-omap/am33xx_generic.c b/arch/arm/mach-omap/am33xx_generic.c
index 3690ce1..251c8d4 100644
--- a/arch/arm/mach-omap/am33xx_generic.c
+++ b/arch/arm/mach-omap/am33xx_generic.c
@@ -43,30 +43,21 @@ void __noreturn reset_cpu(unsigned long addr)
* The significance of the CPU revision depends upon the cpu type.
* Latest known revision is considered default.
*
+ * This function is called before barebox_arm_entry(), so avoid switch
+ * statements.
+ *
* @return silicon version
*/
u32 am33xx_get_cpu_rev(void)
{
- u32 version, retval;
-
- version = (readl(AM33XX_IDCODE_REG) >> 28) & 0xF;
-
- switch (version) {
- case 0:
- retval = AM335X_ES1_0;
- break;
- case 1:
- retval = AM335X_ES2_0;
- break;
- case 2:
- /*
- * Fall through the default case.
- */
- default:
- retval = AM335X_ES2_1;
- }
-
- return retval;
+ u32 version = (readl(AM33XX_IDCODE_REG) >> 28) & 0xF;
+
+ if (version == 0)
+ return AM335X_ES1_0;
+ else if (version == 1)
+ return AM335X_ES2_0;
+ else
+ return AM335X_ES2_1;
}
/**
--
1.7.10.4
More information about the barebox
mailing list