[U-Boot] [u-boot-release] [PATCH 3/6] powerpc/85xx: introduce function serdes_device_from_fm_port()

Kim Phillips kim.phillips at freescale.com
Mon Aug 13 23:34:44 CEST 2012


On Mon, 13 Aug 2012 16:22:01 -0500
Timur Tabi <timur at freescale.com> wrote:

> Kim Phillips wrote:
> > shouldn't this be a static const array lookup?
> 
> The compiler should convert it into an array lookup automatically, but I
> can change it if you insist.  Since I don't like writing code that depends
> on the values of an enum, the array will look like this:
> 
> 	static const enum srds_prtcl srds_table[] = {
> 		[FM1_DTSEC1] = SGMII_FM1_DTSEC1,
> 		[FM1_DTSEC2] = SGMII_FM1_DTSEC2,
> 		[FM1_DTSEC3] = SGMII_FM1_DTSEC3,
> 		[FM1_DTSEC4] = SGMII_FM1_DTSEC4,
> 		[FM1_DTSEC5] = SGMII_FM1_DTSEC5,
> 		[FM1_10GEC1] = XAUI_FM1,
> 		[FM2_DTSEC1] = SGMII_FM2_DTSEC1,
> 		[FM2_DTSEC2] = SGMII_FM2_DTSEC2,
> 		[FM2_DTSEC3] = SGMII_FM2_DTSEC3,
> 		[FM2_DTSEC4] = SGMII_FM2_DTSEC4,
> 		[FM2_DTSEC5] = SGMII_FM2_DTSEC5,
> 		[FM2_10GEC1] = XAUI_FM2,
> 	};
> 
> 	if ((port < FM1_DTSEC1) || (port > FM2_10GEC1))
> 		return NONE;
> 	else
> 		return srds_table[port];
> 
> I'm not sure that's an improvement.

it's ~30% less lines of code, and the maps lie on the same line,
which helps when grepping.

Kim



More information about the U-Boot mailing list