diff options
author | Ben Warren <biggerbadderben@gmail.com> | 2008-06-23 22:57:27 -0700 |
---|---|---|
committer | Ben Warren <biggerbadderben@gmail.com> | 2008-07-06 00:20:59 -0700 |
commit | dd35479a50f6c7c31ea491c07c5200c6dfd06a24 (patch) | |
tree | e9e32e2c807c0a1bd1e85bc6702a21cb2dd88911 /cpu/mpc83xx | |
parent | 914f58c5766860373a7d232e961cee5a4b54a55b (diff) | |
download | u-boot-imx-dd35479a50f6c7c31ea491c07c5200c6dfd06a24.zip u-boot-imx-dd35479a50f6c7c31ea491c07c5200c6dfd06a24.tar.gz u-boot-imx-dd35479a50f6c7c31ea491c07c5200c6dfd06a24.tar.bz2 |
Add mechanisms for CPU and board-specific Ethernet initialization
This patch is the first step in cleaning up net/eth.c, by moving Ethernet
initialization to CPU or board-specific code. Initial implementation is
only on the Freescale TSEC controller, but others will be added soon.
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Diffstat (limited to 'cpu/mpc83xx')
-rw-r--r-- | cpu/mpc83xx/cpu.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/cpu/mpc83xx/cpu.c b/cpu/mpc83xx/cpu.c index 36de78d..94d1a13 100644 --- a/cpu/mpc83xx/cpu.c +++ b/cpu/mpc83xx/cpu.c @@ -358,3 +358,23 @@ int dma_xfer(void *dest, u32 count, void *src) return ((int)dma_check()); } #endif /*CONFIG_DDR_ECC*/ + +#ifdef CONFIG_TSEC_ENET +/* Default initializations for TSEC controllers. To override, + * create a board-specific function called: + * int board_eth_init(bd_t *bis) + */ + +extern int tsec_initialize(bd_t * bis, int index, char *devname); + +int cpu_eth_init(bd_t *bis) +{ +#if defined(CONFIG_TSEC1) + tsec_initialize(bis, 0, CONFIG_TSEC1_NAME); +#endif +#if defined(CONFIG_TSEC2) + tsec_initialize(bis, 1, CONFIG_TSEC2_NAME); +#endif + return 0; +} +#endif |