[U-Boot] [PATCH 6/8] microblaze: Add faked LL_TEMAC driver configuration

Stephan Linz linz at li-pro.net
Tue Jan 31 20:27:02 CET 2012


Am Dienstag, den 31.01.2012, 10:01 +0100 schrieb Michal Simek: 
> Stephan Linz wrote:
> > Expand the specific configuration for the microblaze-generic
> > board in xparameters.h with a faked setup to enable the
> > LL_TEMAC driver.
> > 
> > Note: From now the microblaze-generic board is no longer a
> > valid board configuration for a real piece of hardware. Rather
> > than, we use the file config.mk and xparameters.h as a faked
> > board configuration to force the compilation of all potential
> > driver code for Microblaze systems.
> > 
> > Signed-off-by: Stephan Linz <linz at li-pro.net>
> > ---
> >  board/xilinx/microblaze-generic/config.mk     |    6 ++++--
> >  board/xilinx/microblaze-generic/xparameters.h |   24 ++++++++++++++++++++++--
> >  2 files changed, 26 insertions(+), 4 deletions(-)
> > 
> > diff --git a/board/xilinx/microblaze-generic/config.mk b/board/xilinx/microblaze-generic/config.mk
> > index f8d7e26..9fd1015 100644
> > --- a/board/xilinx/microblaze-generic/config.mk
> > +++ b/board/xilinx/microblaze-generic/config.mk
> > @@ -21,8 +21,10 @@
> >  # Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> >  # MA 02111-1307 USA
> >  #
> > -# CAUTION: This file is automatically generated by libgen.
> > -# Version: Xilinx EDK 6.3 EDK_Gmm.12.3
> > +# CAUTION: This file is a faked configuration !!!
> > +#          There is no real target for the microblaze-generic
> > +#          configuration. You have to replace this file with
> > +#          the generated file from your Xilinx design flow.
> >  #
> >  
> >  CONFIG_SYS_TEXT_BASE = 0x29000000
> > diff --git a/board/xilinx/microblaze-generic/xparameters.h b/board/xilinx/microblaze-generic/xparameters.h
> > index fae03bf..69758c3 100644
> > --- a/board/xilinx/microblaze-generic/xparameters.h
> > +++ b/board/xilinx/microblaze-generic/xparameters.h
> > @@ -21,8 +21,10 @@
> >   * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> >   * MA 02111-1307 USA
> >   *
> > - * CAUTION: This file is automatically generated by libgen.
> > - * Version: Xilinx EDK 8.2.02 EDK_Im_Sp2.4
> > + * CAUTION: This file is a faked configuration !!!
> > + *          There is no real target for the microblaze-generic
> > + *          configuration. You have to replace this file with
> > + *          the generated file from your Xilinx design flow.
> >   */
> >  
> >  #define XILINX_BOARD_NAME	microblaze-generic
> > @@ -69,3 +71,21 @@
> >  
> >  /* Ethernet controller is Ethernet_MAC */
> >  #define XILINX_EMACLITE_BASEADDR       0x40C00000
> > +
> > +/* Ethernet controller is Ethernet_MAC */
> > +#define XILINX_LLTEMAC_BASEADDR			0x44000000
> > +#define XILINX_LLTEMAC_SDMA_CTRL_BASEADDR	0x42000180
> > +#define XILINX_LLTEMAC_BASEADDR1		0x44000040
> > +#define XILINX_LLTEMAC_SDMA_CTRL_BASEADDR1	0x42000200
> 
> > +#define XILINX_LLTEMAC_BASEADDR2		0x44100000
> > +#define XILINX_LLTEMAC_SDMA_CTRL_BASEADDR2	0x42000280
> > +#define XILINX_LLTEMAC_BASEADDR3		0x44100040
> > +#define XILINX_LLTEMAC_SDMA_CTRL_BASEADDR3	0x42000300
> 
> Do these two options test anything?

This is a faked configuration to evaluate the preprocessor stage in
xconversions.h and the ll_temac driver setup in
xilinx_ll_temac_standard_init().

I do not known any FPGA design / board on which I could test it in real
live. But I've run a simple test with BASEADDR1 set to same value of
BASEADDR. So I could test faked memory access to a single TEMAC in
hardware by two driver instance in software -- it works.

> 
> > +#define XILINX_LLTEMAC_BASEADDR4		0x44200000
> > +#define XILINX_LLTEMAC_FIFO_BASEADDR4		0x42100000
> > +#define XILINX_LLTEMAC_BASEADDR5		0x44200040
> > +#define XILINX_LLTEMAC_FIFO_BASEADDR5		0x42110000
> 
> > +#define XILINX_LLTEMAC_BASEADDR6		0x44300000
> > +#define XILINX_LLTEMAC_FIFO_BASEADDR6		0x42120000
> > +#define XILINX_LLTEMAC_BASEADDR7		0x44300040
> > +#define XILINX_LLTEMAC_FIFO_BASEADDR7		0x42130000
> 
> The same here.

The ll_temac driver supports up to eight TEMAC entities in hardware.
That's why I've expand the faked Xilinx parameter list to eight.


br
Stephan



More information about the U-Boot mailing list