From dec7231baca3ad8d7ed4990fd9b04f8f7cd4e91f Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 17 Jul 2012 17:39:00 +0200 Subject: bsp/mpc55xx: Add SMSC9218I_ENABLE_LED_OUTPUTS --- c/src/lib/libbsp/powerpc/mpc55xxevb/configure.ac | 4 ++++ c/src/lib/libbsp/powerpc/mpc55xxevb/include/bspopts.h.in | 3 +++ c/src/lib/libbsp/powerpc/mpc55xxevb/include/smsc9218i.h | 3 +++ c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c | 6 ++++++ 4 files changed, 16 insertions(+) diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/configure.ac b/c/src/lib/libbsp/powerpc/mpc55xxevb/configure.ac index 743e6855dd..5ba2928963 100644 --- a/c/src/lib/libbsp/powerpc/mpc55xxevb/configure.ac +++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/configure.ac @@ -110,6 +110,10 @@ RTEMS_BSPOPTS_SET([SMSC9218I_BIG_ENDIAN_SUPPORT],[mpc5674f_ecu508*],[1]) RTEMS_BSPOPTS_HELP([SMSC9218I_BIG_ENDIAN_SUPPORT], [enable big endian support for SMSC9218I network interface]) +RTEMS_BSPOPTS_SET([SMSC9218I_ENABLE_LED_OUTPUTS],[mpc5674f_ecu508*],[1]) +RTEMS_BSPOPTS_HELP([SMSC9218I_ENABLE_LED_OUTPUTS], +[enable LED outputs for SMSC9218I network interface]) + RTEMS_BSPOPTS_SET([MPC55XX_CLOCK_EMIOS_CHANNEL],[mpc5643l*],[]) RTEMS_BSPOPTS_SET([MPC55XX_CLOCK_EMIOS_CHANNEL],[mpc5674f*],[31]) RTEMS_BSPOPTS_SET([MPC55XX_CLOCK_EMIOS_CHANNEL],[*],[23]) diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/include/bspopts.h.in b/c/src/lib/libbsp/powerpc/mpc55xxevb/include/bspopts.h.in index 01bc608f79..687c2ac860 100644 --- a/c/src/lib/libbsp/powerpc/mpc55xxevb/include/bspopts.h.in +++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/include/bspopts.h.in @@ -124,3 +124,6 @@ /* transmit eDMA channel for SMSC9218I network interface */ #undef SMSC9218I_EDMA_TX_CHANNEL + +/* enable LED outputs for SMSC9218I network interface */ +#undef SMSC9218I_ENABLE_LED_OUTPUTS diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/include/smsc9218i.h b/c/src/lib/libbsp/powerpc/mpc55xxevb/include/smsc9218i.h index a083683d9a..018633c1f0 100644 --- a/c/src/lib/libbsp/powerpc/mpc55xxevb/include/smsc9218i.h +++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/include/smsc9218i.h @@ -296,6 +296,9 @@ typedef struct { * @{ */ +#define SMSC9218I_HW_CFG_LED_3 SMSC9218I_FLAG(30) +#define SMSC9218I_HW_CFG_LED_2 SMSC9218I_FLAG(29) +#define SMSC9218I_HW_CFG_LED_1 SMSC9218I_FLAG(28) #define SMSC9218I_HW_CFG_AMDIX SMSC9218I_FLAG(24) #define SMSC9218I_HW_CFG_MBO SMSC9218I_FLAG(20) #define SMSC9218I_HW_CFG_TX_FIF_SZ(val) SMSC9218I_FIELD_8(val, 16) diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c b/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c index c32486c6d5..37a4d621d8 100644 --- a/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c +++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/network/smsc9218i.c @@ -1669,6 +1669,12 @@ static void smsc9218i_interface_init(void *arg) ANAR_TX_FD | ANAR_TX | ANAR_10_FD | ANAR_10 | ANAR_CSMA ); +#ifdef SMSC9218I_ENABLE_LED_OUTPUTS + regs->gpio_cfg = SMSC9218I_HW_CFG_LED_1 + | SMSC9218I_HW_CFG_LED_2 + | SMSC9218I_HW_CFG_LED_3; +#endif + /* Initialize interrupts */ smsc9218i_interrupt_init(e, regs); -- cgit v1.2.3