diff options
author | Stephan Linz <linz@li-pro.net> | 2012-02-25 00:48:31 +0000 |
---|---|---|
committer | Joe Hershberger <joe.hershberger@ni.com> | 2012-04-04 09:36:19 -0500 |
commit | df48265036dc7332d488ded34aa298f7f5bf3513 (patch) | |
tree | 178742a61fd899d5b4b2a0fe55943dc8291053a8 /include/netdev.h | |
parent | 1295f08c7e778a258cba779263ba03b0c86f8a6e (diff) | |
download | u-boot-imx-df48265036dc7332d488ded34aa298f7f5bf3513.zip u-boot-imx-df48265036dc7332d488ded34aa298f7f5bf3513.tar.gz u-boot-imx-df48265036dc7332d488ded34aa298f7f5bf3513.tar.bz2 |
net: ll_temac: Add LL TEMAC driver to u-boot
Xilinx LocalLink Tri-Mode Ether MAC driver can be
used by Xilinx Microblaze or Xilinx ppc405/440 in
SDMA and FIFO mode. DCR or XPS bus can be used.
The driver uses and requires MII and PHYLIB.
CP: 4 warnings: 'Use of volatile is usually wrong'
I won't fix this, because it depends on the network
driver subsystem.
Reported-by: Michal Simek <monstr@monstr.eu>
Signed-off-by: Stephan Linz <linz@li-pro.net>
Diffstat (limited to 'include/netdev.h')
-rw-r--r-- | include/netdev.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/netdev.h b/include/netdev.h index b0c21d5..4724717 100644 --- a/include/netdev.h +++ b/include/netdev.h @@ -102,6 +102,18 @@ int xilinx_axiemac_initialize(bd_t *bis, unsigned long base_addr, unsigned long dma_addr); int xilinx_emaclite_initialize(bd_t *bis, unsigned long base_addr, int txpp, int rxpp); +int xilinx_ll_temac_eth_init(bd_t *bis, unsigned long base_addr, int flags, + unsigned long ctrl_addr); + +/* + * As long as the Xilinx xps_ll_temac ethernet driver has not its own interface + * exported by a public hader file, we need a global definition at this point. + */ +#if defined(CONFIG_XILINX_LL_TEMAC) +#define XILINX_LL_TEMAC_M_FIFO 0 /* use FIFO Ctrl */ +#define XILINX_LL_TEMAC_M_SDMA_PLB (1 << 0)/* use SDMA Ctrl via PLB */ +#define XILINX_LL_TEMAC_M_SDMA_DCR (1 << 1)/* use SDMA Ctrl via DCR */ +#endif /* Boards with PCI network controllers can call this from their board_eth_init() * function to initialize whatever's on board. |