From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephan Linz Date: Tue, 31 Jan 2012 20:27:02 +0100 Subject: [U-Boot] [PATCH 6/8] microblaze: Add faked LL_TEMAC driver configuration In-Reply-To: <4F27ADEC.9090707@monstr.eu> References: <1327852301.3638.177.camel@keto> <9de5c65c73e877595e72747427c4a5e57c5a8a57.1327848193.git.linz@li-pro.net> <4F27ADEC.9090707@monstr.eu> Message-ID: <1328038022.2688.54.camel@keto> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 > > --- > > 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