[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