From df48265036dc7332d488ded34aa298f7f5bf3513 Mon Sep 17 00:00:00 2001 From: Stephan Linz Date: Sat, 25 Feb 2012 00:48:31 +0000 Subject: 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 Signed-off-by: Stephan Linz --- include/netdev.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'include') diff --git a/include/netdev.h b/include/netdev.h index b0c21d5336..4724717d99 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. -- cgit From 8422a35e9bb4c1c9947258a29d7020a673cf7a2e Mon Sep 17 00:00:00 2001 From: Stephan Linz Date: Sat, 25 Feb 2012 00:48:32 +0000 Subject: microblaze: Enable several ethernet driver compilation U-Boot's multipple network supports enables to use several ethernet drivers but microblaze-generic platform config file select only one driver. Reported-by: Michal Simek Signed-off-by: Stephan Linz --- include/configs/microblaze-generic.h | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'include') diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h index 9f66fbfc3f..efca13608b 100644 --- a/include/configs/microblaze-generic.h +++ b/include/configs/microblaze-generic.h @@ -65,11 +65,12 @@ /* ethernet */ #undef CONFIG_SYS_ENET -#ifdef XILINX_EMACLITE_BASEADDR -# define CONFIG_XILINX_EMACLITE 1 +#if defined(XILINX_EMACLITE_BASEADDR) +# define CONFIG_XILINX_EMACLITE 1 # define CONFIG_SYS_ENET -#elif XILINX_LLTEMAC_BASEADDR -# define CONFIG_XILINX_LL_TEMAC 1 +#endif +#if defined(XILINX_LLTEMAC_BASEADDR) +# define CONFIG_XILINX_LL_TEMAC 1 # define CONFIG_SYS_ENET #endif #if defined(XILINX_AXIEMAC_BASEADDR) @@ -339,7 +340,7 @@ #define CONFIG_FIT 1 #define CONFIG_OF_LIBFDT 1 -#if defined(CONFIG_XILINX_AXIEMAC) +#if defined(CONFIG_XILINX_LL_TEMAC) || defined(CONFIG_XILINX_AXIEMAC) # define CONFIG_MII 1 # define CONFIG_CMD_MII 1 # define CONFIG_PHY_GIGE 1 -- cgit