
Haavard Skinnemoen wrote:
Add support for the ATNGW100 Network Gateway reference design, including flash, ethernet and MMC support.
Signed-off-by: Haavard Skinnemoen hskinnemoen@atmel.com
MAINTAINERS | 11 ++- MAKEALL | 1 + Makefile | 3 + board/atmel/atngw100/Makefile | 40 +++++++++ board/atmel/atngw100/atngw100.c | 73 ++++++++++++++++ board/atmel/atngw100/config.mk | 3 + board/atmel/atngw100/eth.c | 36 ++++++++ board/atmel/atngw100/u-boot.lds | 80 +++++++++++++++++ include/configs/atngw100.h | 182 +++++++++++++++++++++++++++++++++++++++ net/eth.c | 4 + 10 files changed, 428 insertions(+), 5 deletions(-) create mode 100644 board/atmel/atngw100/Makefile create mode 100644 board/atmel/atngw100/atngw100.c create mode 100644 board/atmel/atngw100/config.mk create mode 100644 board/atmel/atngw100/eth.c create mode 100644 board/atmel/atngw100/u-boot.lds create mode 100644 include/configs/atngw100.h
<snip>
diff --git a/net/eth.c b/net/eth.c index 5d9e9c1..f707971 100644 --- a/net/eth.c +++ b/net/eth.c @@ -60,6 +60,7 @@ extern int npe_initialize(bd_t *); extern int uec_initialize(int); extern int bfin_EMAC_initialize(bd_t *); extern int atstk1000_eth_initialize(bd_t *); +extern int atngw100_eth_initialize(bd_t *); extern int mcffec_initialize(bd_t*);
#ifdef CONFIG_API @@ -269,6 +270,9 @@ int eth_initialize(bd_t *bis) #if defined(CONFIG_ATSTK1000) atstk1000_eth_initialize(bis); #endif +#if defined(CONFIG_ATNGW100)
- atngw100_eth_initialize(bis);
+#endif #if defined(CONFIG_MCFFEC) mcffec_initialize(bis); #endif
I'm not crazy about /net/eth.c calling board-specific ethernet initialization routines - it should be calling the driver initialization. This file is enough of a mess as it is, and adding a new entry for each board only makes it worse. Since there's precedent, though, consider this
Acked-by: Ben Warren biggerbadderben@gmail.com
In the next release (not the one finishing in a week), what do you think about this:
#if defined(CONFIG_BOARD_ETH_INIT) board_eth_initialize(bis) #endif
Moving Ethernet initialization in general to the board (not just Atmel boards) would go a long way towards cleaning up the current mess and would provide more scalability and flexibility.
Thoughts?
regards, Ben