All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH] add board support for virtex4fx12 minimodul
@ 2008-09-08 18:07 schardt
  2008-09-08 20:04 ` Ricardo
  0 siblings, 1 reply; 7+ messages in thread
From: schardt @ 2008-09-08 18:07 UTC (permalink / raw)
  To: u-boot

From: schardt <schardt@schleppi.(none)>

---
 Makefile                          |    3 +
 board/xilinx/fx12mm/Makefile      |   63 ++++++++++++++++
 board/xilinx/fx12mm/config.mk     |   28 +++++++
 board/xilinx/fx12mm/fx12mm.c      |   67 +++++++++++++++++
 board/xilinx/fx12mm/init.S        |   32 ++++++++
 board/xilinx/fx12mm/u-boot.lds    |  149 +++++++++++++++++++++++++++++++++++++
 board/xilinx/fx12mm/xparameters.h |   40 ++++++++++
 include/configs/FX12MM.h          |  127 +++++++++++++++++++++++++++++++
 8 files changed, 509 insertions(+), 0 deletions(-)
 create mode 100644 board/xilinx/fx12mm/Makefile
 create mode 100644 board/xilinx/fx12mm/config.mk
 create mode 100644 board/xilinx/fx12mm/fx12mm.c
 create mode 100644 board/xilinx/fx12mm/init.S
 create mode 100644 board/xilinx/fx12mm/u-boot.lds
 create mode 100644 board/xilinx/fx12mm/xparameters.h
 create mode 100644 include/configs/FX12MM.h

diff --git a/Makefile b/Makefile
index 8d82ef5..1fc476d 100644
--- a/Makefile
+++ b/Makefile
@@ -1282,6 +1282,9 @@ ERIC_config:	unconfig
 EXBITGEN_config:	unconfig
 	@$(MKCONFIG) $(@:_config=) ppc ppc4xx exbitgen
 
+FX12MM_config:	unconfig
+	@$(MKCONFIG) $(@:_config=) ppc ppc4xx fx12mm xilinx
+
 G2000_config:	unconfig
 	@$(MKCONFIG) $(@:_config=) ppc ppc4xx g2000
 
diff --git a/board/xilinx/fx12mm/Makefile b/board/xilinx/fx12mm/Makefile
new file mode 100644
index 0000000..aed47ef
--- /dev/null
+++ b/board/xilinx/fx12mm/Makefile
@@ -0,0 +1,63 @@
+#
+# (C) Copyright 2000-2006
+# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
+#
+# See file CREDITS for list of people who contributed to this
+# project.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of
+# the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+# MA 02111-1307 USA
+#
+
+include $(TOPDIR)/config.mk
+ifneq ($(OBJTREE),$(SRCTREE))
+$(shell mkdir -p $(obj)../common)
+$(shell mkdir -p $(obj)../xilinx_iic)
+endif
+
+INCS		:= -I../common  -I../xilinx_iic 
+CFLAGS		+= $(INCS)
+HOST_CFLAGS	+= $(INCS)
+
+LIB	= $(obj)lib$(BOARD).a
+
+COBJS	= $(BOARD).o \
+	  ../common/xbasic_types.o ../common/xdma_channel.o \
+	  ../common/xdma_channel_sg.o \
+	  ../common/xversion.o \
+
+SOBJS   = init.o 
+
+SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)
+OBJS	:= $(addprefix $(obj),$(COBJS))
+SOBJS	:= $(addprefix $(obj),$(SOBJS))
+
+$(LIB):	$(OBJS) $(SOBJS)
+	$(AR) $(ARFLAGS) $@ $^
+
+clean:
+	rm -f $(SOBJS) $(OBJS)
+
+distclean:	clean
+	rm -f $(LIB) core *.bak .depend
+
+#########################################################################
+
+# defines $(obj).depend target
+include $(SRCTREE)/rules.mk
+
+sinclude $(obj).depend
+
+#########################################################################
diff --git a/board/xilinx/fx12mm/config.mk b/board/xilinx/fx12mm/config.mk
new file mode 100644
index 0000000..69490fb
--- /dev/null
+++ b/board/xilinx/fx12mm/config.mk
@@ -0,0 +1,28 @@
+#
+# (C) Copyright 2000
+# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
+#
+# See file CREDITS for list of people who contributed to this
+# project.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of
+# the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+# MA 02111-1307 USA
+#
+
+#
+# Memec/Avnet Virtex4FX12 MiniModul
+# Standard EDK 10.1 Flash Address
+#
+TEXT_BASE = 0xFF800000
diff --git a/board/xilinx/fx12mm/fx12mm.c b/board/xilinx/fx12mm/fx12mm.c
new file mode 100644
index 0000000..66adde9
--- /dev/null
+++ b/board/xilinx/fx12mm/fx12mm.c
@@ -0,0 +1,67 @@
+/*
+ * (C) Copyright 2008
+ *
+ * Georg Schardt <schardt@team-ctech.de>
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ */
+
+#include <config.h>
+#include <common.h>
+#include <asm/processor.h>
+
+int
+checkboard(void)
+{
+  char tmp[64];
+  char *s, *e;
+  int i = getenv_r("serial", tmp, sizeof(tmp));
+
+  if (i < 0) {
+    printf("Avnet Virtex4 FX12 with no serial #");
+  } else {
+    for (e = tmp; *e; ++e) {
+      if (*e == ' ')
+	break;
+    }
+    printf("Avnet Virtex4 FX12 Minimodul # ");
+    for (s = tmp; s < e; ++s)
+      putc(*s);
+  }
+  putc('\n');
+  return 0;
+}
+
+phys_size_t
+initdram(int board_type)
+{
+  /* 64MB of SDRAM */
+  return 64 * 1024 * 1024;
+}
+
+/* implement functions originally in cpu/ppc4xx/speed.c */
+void
+get_sys_info(sys_info_t *sysInfo)
+{
+  sysInfo->freqProcessor = XPAR_CORE_CLOCK_FREQ_HZ;
+  /* only correct if the PLB and OPB run at the same frequency */
+  sysInfo->freqPLB = XPAR_UARTNS550_0_CLOCK_FREQ_HZ;
+  sysInfo->freqPCI = XPAR_UARTNS550_0_CLOCK_FREQ_HZ / 3;
+}
diff --git a/board/xilinx/fx12mm/init.S b/board/xilinx/fx12mm/init.S
new file mode 100644
index 0000000..c05a211
--- /dev/null
+++ b/board/xilinx/fx12mm/init.S
@@ -0,0 +1,32 @@
+/*
+ * (C) Copyright 2008
+ *
+ * Georg Schardt <schardt@team-ctech.de>
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ */
+
+	.globl ext_bus_cntlr_init
+ext_bus_cntlr_init:
+	blr
+
+	.globl sdram_init
+sdram_init:
+	blr
diff --git a/board/xilinx/fx12mm/u-boot.lds b/board/xilinx/fx12mm/u-boot.lds
new file mode 100644
index 0000000..31af107
--- /dev/null
+++ b/board/xilinx/fx12mm/u-boot.lds
@@ -0,0 +1,149 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+OUTPUT_ARCH(powerpc)
+ENTRY(_start)
+SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib); SEARCH_DIR(/usr/local/powerpc-any-elf/lib);
+/* Do we need any of these for elf?
+   __DYNAMIC = 0;    */
+SECTIONS
+{
+  /* Read-only sections, merged into text segment: */
+  . = + SIZEOF_HEADERS;
+  .interp : { *(.interp) }
+  .hash          : { *(.hash)		}
+  .dynsym        : { *(.dynsym)		}
+  .dynstr        : { *(.dynstr)		}
+  .rel.text      : { *(.rel.text)		}
+  .rela.text     : { *(.rela.text) 	}
+  .rel.data      : { *(.rel.data)		}
+  .rela.data     : { *(.rela.data) 	}
+  .rel.rodata    : { *(.rel.rodata) 	}
+  .rela.rodata   : { *(.rela.rodata) 	}
+  .rel.got       : { *(.rel.got)		}
+  .rela.got      : { *(.rela.got)		}
+  .rel.ctors     : { *(.rel.ctors)	}
+  .rela.ctors    : { *(.rela.ctors)	}
+  .rel.dtors     : { *(.rel.dtors)	}
+  .rela.dtors    : { *(.rela.dtors)	}
+  .rel.bss       : { *(.rel.bss)		}
+  .rela.bss      : { *(.rela.bss)		}
+  .rel.plt       : { *(.rel.plt)		}
+  .rela.plt      : { *(.rela.plt)		}
+  .init          : { *(.init)	}
+  .plt : { *(.plt) }
+  .text      :
+  {
+    /* WARNING - the following is hand-optimized to fit within	*/
+    /* the sector layout of our flash chips!	XXX FIXME XXX	*/
+/*
+    cpu/ppc4xx/start.o	(.text)
+    board/xilinx/fx12mm/init.o	(.text)
+    cpu/ppc4xx/kgdb.o	(.text)
+    cpu/ppc4xx/traps.o	(.text)
+    cpu/ppc4xx/interrupts.o	(.text)
+    cpu/ppc4xx/serial.o	(.text)
+    cpu/ppc4xx/cpu_init.o	(.text)
+    cpu/ppc4xx/speed.o	(.text)
+    cpu/ppc4xx/4xx_enet.o	(.text)
+    common/dlmalloc.o	(.text)
+    lib_generic/crc32.o		(.text)
+    lib_ppc/extable.o	(.text)
+    lib_generic/zlib.o		(.text)
+*/
+/*    . = env_offset;*/
+/*    common/environment.o(.text)*/
+
+    *(.text)
+    *(.fixup)
+    *(.got1)
+  }
+  _etext = .;
+  PROVIDE (etext = .);
+  .rodata    :
+  {
+    *(.rodata)
+    *(.rodata1)
+    *(.rodata.str1.4)
+    *(.eh_frame)
+  }
+  .fini      : { *(.fini)    } =0
+  .ctors     : { *(.ctors)   }
+  .dtors     : { *(.dtors)   }
+
+  /* Read-write section, merged into data segment: */
+  . = (. + 0x00FF) & 0xFFFFFF00;
+  _erotext = .;
+  PROVIDE (erotext = .);
+  .reloc   :
+  {
+    *(.got)
+    _GOT2_TABLE_ = .;
+    *(.got2)
+    _FIXUP_TABLE_ = .;
+    *(.fixup)
+  }
+  __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;
+  __fixup_entries = (. - _FIXUP_TABLE_)>>2;
+
+  .data    :
+  {
+    *(.data)
+    *(.data1)
+    *(.sdata)
+    *(.sdata2)
+    *(.dynamic)
+    CONSTRUCTORS
+  }
+  _edata  =  .;
+  PROVIDE (edata = .);
+
+  . = .;
+  __u_boot_cmd_start = .;
+  .u_boot_cmd : { *(.u_boot_cmd) }
+  __u_boot_cmd_end = .;
+
+
+  . = .;
+  __start___ex_table = .;
+  __ex_table : { *(__ex_table) }
+  __stop___ex_table = .;
+
+  . = ALIGN(256);
+  __init_begin = .;
+  .text.init : { *(.text.init) }
+  .data.init : { *(.data.init) }
+  . = ALIGN(256);
+  __init_end = .;
+
+  __bss_start = .;
+  .bss       :
+  {
+   *(.sbss) *(.scommon)
+   *(.dynbss)
+   *(.bss)
+   *(COMMON)
+  }
+  _end = . ;
+  PROVIDE (end = .);
+}
diff --git a/board/xilinx/fx12mm/xparameters.h b/board/xilinx/fx12mm/xparameters.h
new file mode 100644
index 0000000..b85ded0
--- /dev/null
+++ b/board/xilinx/fx12mm/xparameters.h
@@ -0,0 +1,40 @@
+/*
+ * (C) Copyright 2008
+ *
+ * Georg Schardt <schardt@team-ctech.de>
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ * CAUTION: This file is based on the xparameters.h automatically
+ * generated by libgen. Version: Xilinx EDK 8.2.02 EDK_Im_Sp2.4
+ */
+
+
+/* RS232 */
+#define XPAR_UARTNS550_0_CLOCK_FREQ_HZ 100000000
+#define XPAR_UARTNS550_0_BASEADDR 0x83E00000
+
+
+/* INT_C */
+#define XPAR_XPS_INTC_0_DEVICE_ID 0
+#define XPAR_XPS_INTC_0_BASEADDR 0x81800000
+#define XPAR_INTC_MAX_NUM_INTR_INPUTS 2
+
+/* CPU core clock */
+#define XPAR_CORE_CLOCK_FREQ_HZ 300000000
diff --git a/include/configs/FX12MM.h b/include/configs/FX12MM.h
new file mode 100644
index 0000000..00e9ee5
--- /dev/null
+++ b/include/configs/FX12MM.h
@@ -0,0 +1,127 @@
+/*
+ * (C) Copyright 2008
+ * Georg Schardt <schardt@team-ctech.de>
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+
+/*
+   Configuration file for the Virtex4FX12 Minimodul by Avnet/Memec,
+   see http://www.em.avnet.com
+*/
+
+#ifndef __CONFIG_H
+#define __CONFIG_H
+
+/* include the board specific parameter file */
+#include "../board/xilinx/fx12mm/xparameters.h"
+
+
+/* cpu parameter */
+#define CONFIG_4xx		1
+#define CONFIG_405		1
+#define CONFIG_XILINX_405	1
+#define CONFIG_SYS_CLK_FREQ	100000000
+
+/* system ace modul */
+#ifdef XPAR_SYSACE_0_DEVICE_ID
+#define CONFIG_SYSTEMACE        1
+#define CONFIG_DOS_PARTITION    1
+#define CFG_SYSTEMACE_BASE      XPAR_SYSACE_0_BASEADDR
+#define CFG_SYSTEMACE_WIDTH     XPAR_SYSACE_0_MEM_WIDTH
+#endif
+
+/* environment is in FLASH */
+#define CFG_ENV_IS_IN_FLASH     1
+#define RM_FLASH_CMDS
+
+/* flash configuration */
+#define CFG_FLASH_BASE          0xff800000
+#define CFG_MAX_FLASH_BANKS     1       /* max number of memory banks        */
+#define CFG_MAX_FLASH_SECT      256     /* max number of sectors on one chip */
+#define CFG_FLASH_ERASE_TOUT    150000  /* Timeout for Flash Erase (in ms)   */
+#define CFG_FLASH_WRITE_TOUT    500     /* Timeout for Flash Write (in ms)   */
+#define CFG_FLASH_CFI		1
+#define CONFIG_FLASH_CFI_DRIVER	1
+#define CFG_ENV_OFFSET          0x003f0000
+#define CFG_ENV_SIZE            0x00010000
+#define CONFIG_ENV_OVERWRITE    1       /* writable ethaddr and serial# */
+#define CFG_MONITOR_BASE        0xff800000
+
+/* serial communication */
+#ifdef XILINX_UARTLITE_BASEADDR
+#define	CONFIG_XILINX_UARTLITE
+#define	CONFIG_SERIAL_BASE	XILINX_UARTLITE_BASEADDR
+#define	CONFIG_BAUDRATE		XILINX_UARTLITE_BAUDRATE
+#define	CFG_BAUDRATE_TABLE	{ CONFIG_BAUDRATE }
+#else
+#ifdef XPAR_UARTNS550_0_BASEADDR
+#define CFG_NS16550
+#define CFG_NS16550_SERIAL
+#define CFG_NS16550_REG_SIZE	4
+#define CONFIG_CONS_INDEX	1
+#define CFG_NS16550_COM1	XPAR_UARTNS550_0_BASEADDR
+#define CFG_NS16550_CLK		XPAR_UARTNS550_0_CLOCK_FREQ_HZ
+#define	CONFIG_BAUDRATE		115200
+#define	CFG_BAUDRATE_TABLE	{ 9600, 115200 }
+#endif
+#endif
+
+/* interrupt controller */
+#ifdef XPAR_XPS_INTC_0_DEVICE_ID
+#define	CFG_INTC_0		1
+#define	CFG_INTC_0_ADDR		XPAR_XPS_INTC_0_BASEADDR
+#define	CFG_INTC_0_NUM		XPAR_INTC_MAX_NUM_INTR_INPUTS
+#endif
+
+/* u-boot commands configuration */
+#include <config_cmd_default.h>
+#undef CONFIG_CMD_NET
+#define CONFIG_CMD_JFFS2
+
+/* u-boot configuration */
+#define CFG_PROMPT      "=> "   /* Monitor Command Prompt       */
+#define CFG_CBSIZE      256     /* Console I/O Buffer Size      */
+#define CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16)   /* Print Buffer Size */
+#define CFG_MAXARGS     16      /* max number of command args   */
+#define CFG_BARGSIZE    CFG_CBSIZE      /* Boot Argument Buffer Size    */
+#define CFG_MEMTEST_START       0x0400000       /* memtest works on     */
+#define CFG_MEMTEST_END         0x0800000       /* 4 ... 12 MB in DRAM  */
+#define CFG_LOAD_ADDR           0x01000000        /* default load address */
+#define CFG_HZ          	2000    /* decrementer freq: 1 ms ticks */
+#define CFG_SDRAM_BASE          0x00000000
+#define CFG_MONITOR_LEN         (192 * 1024)
+#define CFG_MALLOC_LEN          (1024 * 1024)
+#define CFG_CACHELINE_SIZE      32
+#define CFG_CACHELINE_SHIFT	2
+#define CFG_BOOTMAPSZ           (8 << 20)
+
+/* memory configuration */
+#define CFG_INIT_RAM_ADDR       0x800000  /* inside of SDRAM */
+#define CFG_INIT_RAM_END        0x2000    /* End of used area in RAM */
+#define CFG_GBL_DATA_SIZE       128
+#define CFG_GBL_DATA_OFFSET    (CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE)
+#define CFG_INIT_SP_OFFSET      CFG_GBL_DATA_OFFSET
+
+#define BOOTFLAG_COLD   0x01    /* Normal Power-On: Boot from FLASH     */
+#define BOOTFLAG_WARM   0x02    /* Software reboot                      */
+
+#endif                          /* __CONFIG_H */
+
-- 
1.5.4.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [U-Boot] [PATCH] add board support for virtex4fx12 minimodul
  2008-09-08 18:07 [U-Boot] [PATCH] add board support for virtex4fx12 minimodul schardt
@ 2008-09-08 20:04 ` Ricardo
  2008-09-09  7:21   ` Georg Schardt
  0 siblings, 1 reply; 7+ messages in thread
From: Ricardo @ 2008-09-08 20:04 UTC (permalink / raw)
  To: u-boot

Hello again

  Some comments:

1) The board is manufactured by avnet, you must create it under the
folder boards/avnet/fx12mm
2) Try to unificate the fx12mm board under a more global board, like
the ml507 with is now in mainstream
3) Add your boad to the MAKEALL script and yourself to the MAINTAINERS
4) There are some object that are not used (or I don't see where are
they used) in your makefile. (../common/*)
5) You can obtain CONFIG_SYS_CLK_FREQ from the xparameters (it is
adjustable by the suer)

Best regards


On Mon, Sep 8, 2008 at 14:07, schardt <schardt@team-ctech.de> wrote:
> From: schardt <schardt@schleppi.(none)>
>
> ---
>  Makefile                          |    3 +
>  board/xilinx/fx12mm/Makefile      |   63 ++++++++++++++++
>  board/xilinx/fx12mm/config.mk     |   28 +++++++
>  board/xilinx/fx12mm/fx12mm.c      |   67 +++++++++++++++++
>  board/xilinx/fx12mm/init.S        |   32 ++++++++
>  board/xilinx/fx12mm/u-boot.lds    |  149 +++++++++++++++++++++++++++++++++++++
>  board/xilinx/fx12mm/xparameters.h |   40 ++++++++++
>  include/configs/FX12MM.h          |  127 +++++++++++++++++++++++++++++++
>  8 files changed, 509 insertions(+), 0 deletions(-)
>  create mode 100644 board/xilinx/fx12mm/Makefile
>  create mode 100644 board/xilinx/fx12mm/config.mk
>  create mode 100644 board/xilinx/fx12mm/fx12mm.c
>  create mode 100644 board/xilinx/fx12mm/init.S
>  create mode 100644 board/xilinx/fx12mm/u-boot.lds
>  create mode 100644 board/xilinx/fx12mm/xparameters.h
>  create mode 100644 include/configs/FX12MM.h
>
> diff --git a/Makefile b/Makefile
> index 8d82ef5..1fc476d 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1282,6 +1282,9 @@ ERIC_config:      unconfig
>  EXBITGEN_config:       unconfig
>        @$(MKCONFIG) $(@:_config=) ppc ppc4xx exbitgen
>
> +FX12MM_config: unconfig
> +       @$(MKCONFIG) $(@:_config=) ppc ppc4xx fx12mm xilinx
> +
>  G2000_config:  unconfig
>        @$(MKCONFIG) $(@:_config=) ppc ppc4xx g2000
>
> diff --git a/board/xilinx/fx12mm/Makefile b/board/xilinx/fx12mm/Makefile
> new file mode 100644
> index 0000000..aed47ef
> --- /dev/null
> +++ b/board/xilinx/fx12mm/Makefile
> @@ -0,0 +1,63 @@
> +#
> +# (C) Copyright 2000-2006
> +# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
> +#
> +# See file CREDITS for list of people who contributed to this
> +# project.
> +#
> +# This program is free software; you can redistribute it and/or
> +# modify it under the terms of the GNU General Public License as
> +# published by the Free Software Foundation; either version 2 of
> +# the License, or (at your option) any later version.
> +#
> +# This program is distributed in the hope that it will be useful,
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +# GNU General Public License for more details.
> +#
> +# You should have received a copy of the GNU General Public License
> +# along with this program; if not, write to the Free Software
> +# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> +# MA 02111-1307 USA
> +#
> +
> +include $(TOPDIR)/config.mk
> +ifneq ($(OBJTREE),$(SRCTREE))
> +$(shell mkdir -p $(obj)../common)
> +$(shell mkdir -p $(obj)../xilinx_iic)
> +endif
> +
> +INCS           := -I../common  -I../xilinx_iic
> +CFLAGS         += $(INCS)
> +HOST_CFLAGS    += $(INCS)
> +
> +LIB    = $(obj)lib$(BOARD).a
> +
> +COBJS  = $(BOARD).o \
> +         ../common/xbasic_types.o ../common/xdma_channel.o \
> +         ../common/xdma_channel_sg.o \
> +         ../common/xversion.o \
> +
> +SOBJS   = init.o
> +
> +SRCS   := $(SOBJS:.o=.S) $(COBJS:.o=.c)
> +OBJS   := $(addprefix $(obj),$(COBJS))
> +SOBJS  := $(addprefix $(obj),$(SOBJS))
> +
> +$(LIB):        $(OBJS) $(SOBJS)
> +       $(AR) $(ARFLAGS) $@ $^
> +
> +clean:
> +       rm -f $(SOBJS) $(OBJS)
> +
> +distclean:     clean
> +       rm -f $(LIB) core *.bak .depend
> +
> +#########################################################################
> +
> +# defines $(obj).depend target
> +include $(SRCTREE)/rules.mk
> +
> +sinclude $(obj).depend
> +
> +#########################################################################
> diff --git a/board/xilinx/fx12mm/config.mk b/board/xilinx/fx12mm/config.mk
> new file mode 100644
> index 0000000..69490fb
> --- /dev/null
> +++ b/board/xilinx/fx12mm/config.mk
> @@ -0,0 +1,28 @@
> +#
> +# (C) Copyright 2000
> +# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
> +#
> +# See file CREDITS for list of people who contributed to this
> +# project.
> +#
> +# This program is free software; you can redistribute it and/or
> +# modify it under the terms of the GNU General Public License as
> +# published by the Free Software Foundation; either version 2 of
> +# the License, or (at your option) any later version.
> +#
> +# This program is distributed in the hope that it will be useful,
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +# GNU General Public License for more details.
> +#
> +# You should have received a copy of the GNU General Public License
> +# along with this program; if not, write to the Free Software
> +# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> +# MA 02111-1307 USA
> +#
> +
> +#
> +# Memec/Avnet Virtex4FX12 MiniModul
> +# Standard EDK 10.1 Flash Address
> +#
> +TEXT_BASE = 0xFF800000
> diff --git a/board/xilinx/fx12mm/fx12mm.c b/board/xilinx/fx12mm/fx12mm.c
> new file mode 100644
> index 0000000..66adde9
> --- /dev/null
> +++ b/board/xilinx/fx12mm/fx12mm.c
> @@ -0,0 +1,67 @@
> +/*
> + * (C) Copyright 2008
> + *
> + * Georg Schardt <schardt@team-ctech.de>
> + *
> + * See file CREDITS for list of people who contributed to this
> + * project.
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU General Public License as
> + * published by the Free Software Foundation; either version 2 of
> + * the License, or (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> + * GNU General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program; if not, write to the Free Software
> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> + * MA 02111-1307 USA
> + *
> + */
> +
> +#include <config.h>
> +#include <common.h>
> +#include <asm/processor.h>
> +
> +int
> +checkboard(void)
> +{
> +  char tmp[64];
> +  char *s, *e;
> +  int i = getenv_r("serial", tmp, sizeof(tmp));
> +
> +  if (i < 0) {
> +    printf("Avnet Virtex4 FX12 with no serial #");
> +  } else {
> +    for (e = tmp; *e; ++e) {
> +      if (*e == ' ')
> +       break;
> +    }
> +    printf("Avnet Virtex4 FX12 Minimodul # ");
> +    for (s = tmp; s < e; ++s)
> +      putc(*s);
> +  }
> +  putc('\n');
> +  return 0;
> +}
> +
> +phys_size_t
> +initdram(int board_type)
> +{
> +  /* 64MB of SDRAM */
> +  return 64 * 1024 * 1024;
> +}
> +
> +/* implement functions originally in cpu/ppc4xx/speed.c */
> +void
> +get_sys_info(sys_info_t *sysInfo)
> +{
> +  sysInfo->freqProcessor = XPAR_CORE_CLOCK_FREQ_HZ;
> +  /* only correct if the PLB and OPB run at the same frequency */
> +  sysInfo->freqPLB = XPAR_UARTNS550_0_CLOCK_FREQ_HZ;
> +  sysInfo->freqPCI = XPAR_UARTNS550_0_CLOCK_FREQ_HZ / 3;
> +}
> diff --git a/board/xilinx/fx12mm/init.S b/board/xilinx/fx12mm/init.S
> new file mode 100644
> index 0000000..c05a211
> --- /dev/null
> +++ b/board/xilinx/fx12mm/init.S
> @@ -0,0 +1,32 @@
> +/*
> + * (C) Copyright 2008
> + *
> + * Georg Schardt <schardt@team-ctech.de>
> + *
> + * See file CREDITS for list of people who contributed to this
> + * project.
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU General Public License as
> + * published by the Free Software Foundation; either version 2 of
> + * the License, or (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> + * GNU General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program; if not, write to the Free Software
> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> + * MA 02111-1307 USA
> + *
> + */
> +
> +       .globl ext_bus_cntlr_init
> +ext_bus_cntlr_init:
> +       blr
> +
> +       .globl sdram_init
> +sdram_init:
> +       blr
> diff --git a/board/xilinx/fx12mm/u-boot.lds b/board/xilinx/fx12mm/u-boot.lds
> new file mode 100644
> index 0000000..31af107
> --- /dev/null
> +++ b/board/xilinx/fx12mm/u-boot.lds
> @@ -0,0 +1,149 @@
> +/*
> + * (C) Copyright 2000
> + * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
> + *
> + * See file CREDITS for list of people who contributed to this
> + * project.
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU General Public License as
> + * published by the Free Software Foundation; either version 2 of
> + * the License, or (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> + * GNU General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program; if not, write to the Free Software
> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> + * MA 02111-1307 USA
> + */
> +
> +OUTPUT_ARCH(powerpc)
> +ENTRY(_start)
> +SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib); SEARCH_DIR(/usr/local/powerpc-any-elf/lib);
> +/* Do we need any of these for elf?
> +   __DYNAMIC = 0;    */
> +SECTIONS
> +{
> +  /* Read-only sections, merged into text segment: */
> +  . = + SIZEOF_HEADERS;
> +  .interp : { *(.interp) }
> +  .hash          : { *(.hash)          }
> +  .dynsym        : { *(.dynsym)                }
> +  .dynstr        : { *(.dynstr)                }
> +  .rel.text      : { *(.rel.text)              }
> +  .rela.text     : { *(.rela.text)     }
> +  .rel.data      : { *(.rel.data)              }
> +  .rela.data     : { *(.rela.data)     }
> +  .rel.rodata    : { *(.rel.rodata)    }
> +  .rela.rodata   : { *(.rela.rodata)   }
> +  .rel.got       : { *(.rel.got)               }
> +  .rela.got      : { *(.rela.got)              }
> +  .rel.ctors     : { *(.rel.ctors)     }
> +  .rela.ctors    : { *(.rela.ctors)    }
> +  .rel.dtors     : { *(.rel.dtors)     }
> +  .rela.dtors    : { *(.rela.dtors)    }
> +  .rel.bss       : { *(.rel.bss)               }
> +  .rela.bss      : { *(.rela.bss)              }
> +  .rel.plt       : { *(.rel.plt)               }
> +  .rela.plt      : { *(.rela.plt)              }
> +  .init          : { *(.init)  }
> +  .plt : { *(.plt) }
> +  .text      :
> +  {
> +    /* WARNING - the following is hand-optimized to fit within */
> +    /* the sector layout of our flash chips!   XXX FIXME XXX   */
> +/*
> +    cpu/ppc4xx/start.o (.text)
> +    board/xilinx/fx12mm/init.o (.text)
> +    cpu/ppc4xx/kgdb.o  (.text)
> +    cpu/ppc4xx/traps.o (.text)
> +    cpu/ppc4xx/interrupts.o    (.text)
> +    cpu/ppc4xx/serial.o        (.text)
> +    cpu/ppc4xx/cpu_init.o      (.text)
> +    cpu/ppc4xx/speed.o (.text)
> +    cpu/ppc4xx/4xx_enet.o      (.text)
> +    common/dlmalloc.o  (.text)
> +    lib_generic/crc32.o                (.text)
> +    lib_ppc/extable.o  (.text)
> +    lib_generic/zlib.o         (.text)
> +*/
> +/*    . = env_offset;*/
> +/*    common/environment.o(.text)*/
> +
> +    *(.text)
> +    *(.fixup)
> +    *(.got1)
> +  }
> +  _etext = .;
> +  PROVIDE (etext = .);
> +  .rodata    :
> +  {
> +    *(.rodata)
> +    *(.rodata1)
> +    *(.rodata.str1.4)
> +    *(.eh_frame)
> +  }
> +  .fini      : { *(.fini)    } =0
> +  .ctors     : { *(.ctors)   }
> +  .dtors     : { *(.dtors)   }
> +
> +  /* Read-write section, merged into data segment: */
> +  . = (. + 0x00FF) & 0xFFFFFF00;
> +  _erotext = .;
> +  PROVIDE (erotext = .);
> +  .reloc   :
> +  {
> +    *(.got)
> +    _GOT2_TABLE_ = .;
> +    *(.got2)
> +    _FIXUP_TABLE_ = .;
> +    *(.fixup)
> +  }
> +  __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;
> +  __fixup_entries = (. - _FIXUP_TABLE_)>>2;
> +
> +  .data    :
> +  {
> +    *(.data)
> +    *(.data1)
> +    *(.sdata)
> +    *(.sdata2)
> +    *(.dynamic)
> +    CONSTRUCTORS
> +  }
> +  _edata  =  .;
> +  PROVIDE (edata = .);
> +
> +  . = .;
> +  __u_boot_cmd_start = .;
> +  .u_boot_cmd : { *(.u_boot_cmd) }
> +  __u_boot_cmd_end = .;
> +
> +
> +  . = .;
> +  __start___ex_table = .;
> +  __ex_table : { *(__ex_table) }
> +  __stop___ex_table = .;
> +
> +  . = ALIGN(256);
> +  __init_begin = .;
> +  .text.init : { *(.text.init) }
> +  .data.init : { *(.data.init) }
> +  . = ALIGN(256);
> +  __init_end = .;
> +
> +  __bss_start = .;
> +  .bss       :
> +  {
> +   *(.sbss) *(.scommon)
> +   *(.dynbss)
> +   *(.bss)
> +   *(COMMON)
> +  }
> +  _end = . ;
> +  PROVIDE (end = .);
> +}
> diff --git a/board/xilinx/fx12mm/xparameters.h b/board/xilinx/fx12mm/xparameters.h
> new file mode 100644
> index 0000000..b85ded0
> --- /dev/null
> +++ b/board/xilinx/fx12mm/xparameters.h
> @@ -0,0 +1,40 @@
> +/*
> + * (C) Copyright 2008
> + *
> + * Georg Schardt <schardt@team-ctech.de>
> + *
> + * See file CREDITS for list of people who contributed to this
> + * project.
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU General Public License as
> + * published by the Free Software Foundation; either version 2 of
> + * the License, or (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> + * GNU General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program; if not, write to the Free Software
> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> + * MA 02111-1307 USA
> + *
> + * CAUTION: This file is based on the xparameters.h automatically
> + * generated by libgen. Version: Xilinx EDK 8.2.02 EDK_Im_Sp2.4
> + */
> +
> +
> +/* RS232 */
> +#define XPAR_UARTNS550_0_CLOCK_FREQ_HZ 100000000
> +#define XPAR_UARTNS550_0_BASEADDR 0x83E00000
> +
> +
> +/* INT_C */
> +#define XPAR_XPS_INTC_0_DEVICE_ID 0
> +#define XPAR_XPS_INTC_0_BASEADDR 0x81800000
> +#define XPAR_INTC_MAX_NUM_INTR_INPUTS 2
> +
> +/* CPU core clock */
> +#define XPAR_CORE_CLOCK_FREQ_HZ 300000000
> diff --git a/include/configs/FX12MM.h b/include/configs/FX12MM.h
> new file mode 100644
> index 0000000..00e9ee5
> --- /dev/null
> +++ b/include/configs/FX12MM.h
> @@ -0,0 +1,127 @@
> +/*
> + * (C) Copyright 2008
> + * Georg Schardt <schardt@team-ctech.de>
> + *
> + * See file CREDITS for list of people who contributed to this
> + * project.
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU General Public License as
> + * published by the Free Software Foundation; either version 2 of
> + * the License, or (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> + * GNU General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program; if not, write to the Free Software
> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> + * MA 02111-1307 USA
> + */
> +
> +
> +/*
> +   Configuration file for the Virtex4FX12 Minimodul by Avnet/Memec,
> +   see http://www.em.avnet.com
> +*/
> +
> +#ifndef __CONFIG_H
> +#define __CONFIG_H
> +
> +/* include the board specific parameter file */
> +#include "../board/xilinx/fx12mm/xparameters.h"
> +
> +
> +/* cpu parameter */
> +#define CONFIG_4xx             1
> +#define CONFIG_405             1
> +#define CONFIG_XILINX_405      1
> +#define CONFIG_SYS_CLK_FREQ    100000000
> +
> +/* system ace modul */
> +#ifdef XPAR_SYSACE_0_DEVICE_ID
> +#define CONFIG_SYSTEMACE        1
> +#define CONFIG_DOS_PARTITION    1
> +#define CFG_SYSTEMACE_BASE      XPAR_SYSACE_0_BASEADDR
> +#define CFG_SYSTEMACE_WIDTH     XPAR_SYSACE_0_MEM_WIDTH
> +#endif
> +
> +/* environment is in FLASH */
> +#define CFG_ENV_IS_IN_FLASH     1
> +#define RM_FLASH_CMDS
> +
> +/* flash configuration */
> +#define CFG_FLASH_BASE          0xff800000
> +#define CFG_MAX_FLASH_BANKS     1       /* max number of memory banks        */
> +#define CFG_MAX_FLASH_SECT      256     /* max number of sectors on one chip */
> +#define CFG_FLASH_ERASE_TOUT    150000  /* Timeout for Flash Erase (in ms)   */
> +#define CFG_FLASH_WRITE_TOUT    500     /* Timeout for Flash Write (in ms)   */
> +#define CFG_FLASH_CFI          1
> +#define CONFIG_FLASH_CFI_DRIVER        1
> +#define CFG_ENV_OFFSET          0x003f0000
> +#define CFG_ENV_SIZE            0x00010000
> +#define CONFIG_ENV_OVERWRITE    1       /* writable ethaddr and serial# */
> +#define CFG_MONITOR_BASE        0xff800000
> +
> +/* serial communication */
> +#ifdef XILINX_UARTLITE_BASEADDR
> +#define        CONFIG_XILINX_UARTLITE
> +#define        CONFIG_SERIAL_BASE      XILINX_UARTLITE_BASEADDR
> +#define        CONFIG_BAUDRATE         XILINX_UARTLITE_BAUDRATE
> +#define        CFG_BAUDRATE_TABLE      { CONFIG_BAUDRATE }
> +#else
> +#ifdef XPAR_UARTNS550_0_BASEADDR
> +#define CFG_NS16550
> +#define CFG_NS16550_SERIAL
> +#define CFG_NS16550_REG_SIZE   4
> +#define CONFIG_CONS_INDEX      1
> +#define CFG_NS16550_COM1       XPAR_UARTNS550_0_BASEADDR
> +#define CFG_NS16550_CLK                XPAR_UARTNS550_0_CLOCK_FREQ_HZ
> +#define        CONFIG_BAUDRATE         115200
> +#define        CFG_BAUDRATE_TABLE      { 9600, 115200 }
> +#endif
> +#endif
> +
> +/* interrupt controller */
> +#ifdef XPAR_XPS_INTC_0_DEVICE_ID
> +#define        CFG_INTC_0              1
> +#define        CFG_INTC_0_ADDR         XPAR_XPS_INTC_0_BASEADDR
> +#define        CFG_INTC_0_NUM          XPAR_INTC_MAX_NUM_INTR_INPUTS
> +#endif
> +
> +/* u-boot commands configuration */
> +#include <config_cmd_default.h>
> +#undef CONFIG_CMD_NET
> +#define CONFIG_CMD_JFFS2
> +
> +/* u-boot configuration */
> +#define CFG_PROMPT      "=> "   /* Monitor Command Prompt       */
> +#define CFG_CBSIZE      256     /* Console I/O Buffer Size      */
> +#define CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16)   /* Print Buffer Size */
> +#define CFG_MAXARGS     16      /* max number of command args   */
> +#define CFG_BARGSIZE    CFG_CBSIZE      /* Boot Argument Buffer Size    */
> +#define CFG_MEMTEST_START       0x0400000       /* memtest works on     */
> +#define CFG_MEMTEST_END         0x0800000       /* 4 ... 12 MB in DRAM  */
> +#define CFG_LOAD_ADDR           0x01000000        /* default load address */
> +#define CFG_HZ                 2000    /* decrementer freq: 1 ms ticks */
> +#define CFG_SDRAM_BASE          0x00000000
> +#define CFG_MONITOR_LEN         (192 * 1024)
> +#define CFG_MALLOC_LEN          (1024 * 1024)
> +#define CFG_CACHELINE_SIZE      32
> +#define CFG_CACHELINE_SHIFT    2
> +#define CFG_BOOTMAPSZ           (8 << 20)
> +
> +/* memory configuration */
> +#define CFG_INIT_RAM_ADDR       0x800000  /* inside of SDRAM */
> +#define CFG_INIT_RAM_END        0x2000    /* End of used area in RAM */
> +#define CFG_GBL_DATA_SIZE       128
> +#define CFG_GBL_DATA_OFFSET    (CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE)
> +#define CFG_INIT_SP_OFFSET      CFG_GBL_DATA_OFFSET
> +
> +#define BOOTFLAG_COLD   0x01    /* Normal Power-On: Boot from FLASH     */
> +#define BOOTFLAG_WARM   0x02    /* Software reboot                      */
> +
> +#endif                          /* __CONFIG_H */
> +
> --
> 1.5.4.1
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>



-- 
Ricardo Ribalda
http://www.eps.uam.es/~rribalda/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot] [PATCH] add board support for virtex4fx12 minimodul
  2008-09-08 20:04 ` Ricardo
@ 2008-09-09  7:21   ` Georg Schardt
  2008-09-09  8:19     ` Wolfgang Denk
       [not found]     ` <aa76a2be0809090553j482c2f9x1172a634eaf1a405@mail.gmail.com>
  0 siblings, 2 replies; 7+ messages in thread
From: Georg Schardt @ 2008-09-09  7:21 UTC (permalink / raw)
  To: u-boot

Hello Ricardo,

thanks for your comments.  i have some more questions :
> 1) The board is manufactured by avnet, you must create it under the
> folder boards/avnet/fx12mm
>   
your are right, i will move it
> 2) Try to unificate the fx12mm board under a more global board, like
> the ml507 with is now in mainstream
>   
you mean, that i create only a new config file and use the ml507 board 
code ?
is this better than create new board specific files under 
board/avnet/fx12mm ?
> 4) There are some object that are not used (or I don't see where are
> they used) in your makefile. (../common/*)
>   
ups, i clean it up. its correct, the objects are not used

regards
georg
>
> On Mon, Sep 8, 2008 at 14:07, schardt <schardt@team-ctech.de> wrote:
>   
>> From: schardt <schardt@schleppi.(none)>
>>
>> ---
>>  Makefile                          |    3 +
>>  board/xilinx/fx12mm/Makefile      |   63 ++++++++++++++++
>>  board/xilinx/fx12mm/config.mk     |   28 +++++++
>>  board/xilinx/fx12mm/fx12mm.c      |   67 +++++++++++++++++
>>  board/xilinx/fx12mm/init.S        |   32 ++++++++
>>  board/xilinx/fx12mm/u-boot.lds    |  149 +++++++++++++++++++++++++++++++++++++
>>  board/xilinx/fx12mm/xparameters.h |   40 ++++++++++
>>  include/configs/FX12MM.h          |  127 +++++++++++++++++++++++++++++++
>>  8 files changed, 509 insertions(+), 0 deletions(-)
>>  create mode 100644 board/xilinx/fx12mm/Makefile
>>  create mode 100644 board/xilinx/fx12mm/config.mk
>>  create mode 100644 board/xilinx/fx12mm/fx12mm.c
>>  create mode 100644 board/xilinx/fx12mm/init.S
>>  create mode 100644 board/xilinx/fx12mm/u-boot.lds
>>  create mode 100644 board/xilinx/fx12mm/xparameters.h
>>  create mode 100644 include/configs/FX12MM.h
>>
>> diff --git a/Makefile b/Makefile
>> index 8d82ef5..1fc476d 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -1282,6 +1282,9 @@ ERIC_config:      unconfig
>>  EXBITGEN_config:       unconfig
>>        @$(MKCONFIG) $(@:_config=) ppc ppc4xx exbitgen
>>
>> +FX12MM_config: unconfig
>> +       @$(MKCONFIG) $(@:_config=) ppc ppc4xx fx12mm xilinx
>> +
>>  G2000_config:  unconfig
>>        @$(MKCONFIG) $(@:_config=) ppc ppc4xx g2000
>>
>> diff --git a/board/xilinx/fx12mm/Makefile b/board/xilinx/fx12mm/Makefile
>> new file mode 100644
>> index 0000000..aed47ef
>> --- /dev/null
>> +++ b/board/xilinx/fx12mm/Makefile
>> @@ -0,0 +1,63 @@
>> +#
>> +# (C) Copyright 2000-2006
>> +# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
>> +#
>> +# See file CREDITS for list of people who contributed to this
>> +# project.
>> +#
>> +# This program is free software; you can redistribute it and/or
>> +# modify it under the terms of the GNU General Public License as
>> +# published by the Free Software Foundation; either version 2 of
>> +# the License, or (at your option) any later version.
>> +#
>> +# This program is distributed in the hope that it will be useful,
>> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
>> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>> +# GNU General Public License for more details.
>> +#
>> +# You should have received a copy of the GNU General Public License
>> +# along with this program; if not, write to the Free Software
>> +# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
>> +# MA 02111-1307 USA
>> +#
>> +
>> +include $(TOPDIR)/config.mk
>> +ifneq ($(OBJTREE),$(SRCTREE))
>> +$(shell mkdir -p $(obj)../common)
>> +$(shell mkdir -p $(obj)../xilinx_iic)
>> +endif
>> +
>> +INCS           := -I../common  -I../xilinx_iic
>> +CFLAGS         += $(INCS)
>> +HOST_CFLAGS    += $(INCS)
>> +
>> +LIB    = $(obj)lib$(BOARD).a
>> +
>> +COBJS  = $(BOARD).o \
>> +         ../common/xbasic_types.o ../common/xdma_channel.o \
>> +         ../common/xdma_channel_sg.o \
>> +         ../common/xversion.o \
>> +
>> +SOBJS   = init.o
>> +
>> +SRCS   := $(SOBJS:.o=.S) $(COBJS:.o=.c)
>> +OBJS   := $(addprefix $(obj),$(COBJS))
>> +SOBJS  := $(addprefix $(obj),$(SOBJS))
>> +
>> +$(LIB):        $(OBJS) $(SOBJS)
>> +       $(AR) $(ARFLAGS) $@ $^
>> +
>> +clean:
>> +       rm -f $(SOBJS) $(OBJS)
>> +
>> +distclean:     clean
>> +       rm -f $(LIB) core *.bak .depend
>> +
>> +#########################################################################
>> +
>> +# defines $(obj).depend target
>> +include $(SRCTREE)/rules.mk
>> +
>> +sinclude $(obj).depend
>> +
>> +#########################################################################
>> diff --git a/board/xilinx/fx12mm/config.mk b/board/xilinx/fx12mm/config.mk
>> new file mode 100644
>> index 0000000..69490fb
>> --- /dev/null
>> +++ b/board/xilinx/fx12mm/config.mk
>> @@ -0,0 +1,28 @@
>> +#
>> +# (C) Copyright 2000
>> +# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
>> +#
>> +# See file CREDITS for list of people who contributed to this
>> +# project.
>> +#
>> +# This program is free software; you can redistribute it and/or
>> +# modify it under the terms of the GNU General Public License as
>> +# published by the Free Software Foundation; either version 2 of
>> +# the License, or (at your option) any later version.
>> +#
>> +# This program is distributed in the hope that it will be useful,
>> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
>> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>> +# GNU General Public License for more details.
>> +#
>> +# You should have received a copy of the GNU General Public License
>> +# along with this program; if not, write to the Free Software
>> +# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
>> +# MA 02111-1307 USA
>> +#
>> +
>> +#
>> +# Memec/Avnet Virtex4FX12 MiniModul
>> +# Standard EDK 10.1 Flash Address
>> +#
>> +TEXT_BASE = 0xFF800000
>> diff --git a/board/xilinx/fx12mm/fx12mm.c b/board/xilinx/fx12mm/fx12mm.c
>> new file mode 100644
>> index 0000000..66adde9
>> --- /dev/null
>> +++ b/board/xilinx/fx12mm/fx12mm.c
>> @@ -0,0 +1,67 @@
>> +/*
>> + * (C) Copyright 2008
>> + *
>> + * Georg Schardt <schardt@team-ctech.de>
>> + *
>> + * See file CREDITS for list of people who contributed to this
>> + * project.
>> + *
>> + * This program is free software; you can redistribute it and/or
>> + * modify it under the terms of the GNU General Public License as
>> + * published by the Free Software Foundation; either version 2 of
>> + * the License, or (at your option) any later version.
>> + *
>> + * This program is distributed in the hope that it will be useful,
>> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
>> + * GNU General Public License for more details.
>> + *
>> + * You should have received a copy of the GNU General Public License
>> + * along with this program; if not, write to the Free Software
>> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
>> + * MA 02111-1307 USA
>> + *
>> + */
>> +
>> +#include <config.h>
>> +#include <common.h>
>> +#include <asm/processor.h>
>> +
>> +int
>> +checkboard(void)
>> +{
>> +  char tmp[64];
>> +  char *s, *e;
>> +  int i = getenv_r("serial", tmp, sizeof(tmp));
>> +
>> +  if (i < 0) {
>> +    printf("Avnet Virtex4 FX12 with no serial #");
>> +  } else {
>> +    for (e = tmp; *e; ++e) {
>> +      if (*e == ' ')
>> +       break;
>> +    }
>> +    printf("Avnet Virtex4 FX12 Minimodul # ");
>> +    for (s = tmp; s < e; ++s)
>> +      putc(*s);
>> +  }
>> +  putc('\n');
>> +  return 0;
>> +}
>> +
>> +phys_size_t
>> +initdram(int board_type)
>> +{
>> +  /* 64MB of SDRAM */
>> +  return 64 * 1024 * 1024;
>> +}
>> +
>> +/* implement functions originally in cpu/ppc4xx/speed.c */
>> +void
>> +get_sys_info(sys_info_t *sysInfo)
>> +{
>> +  sysInfo->freqProcessor = XPAR_CORE_CLOCK_FREQ_HZ;
>> +  /* only correct if the PLB and OPB run at the same frequency */
>> +  sysInfo->freqPLB = XPAR_UARTNS550_0_CLOCK_FREQ_HZ;
>> +  sysInfo->freqPCI = XPAR_UARTNS550_0_CLOCK_FREQ_HZ / 3;
>> +}
>> diff --git a/board/xilinx/fx12mm/init.S b/board/xilinx/fx12mm/init.S
>> new file mode 100644
>> index 0000000..c05a211
>> --- /dev/null
>> +++ b/board/xilinx/fx12mm/init.S
>> @@ -0,0 +1,32 @@
>> +/*
>> + * (C) Copyright 2008
>> + *
>> + * Georg Schardt <schardt@team-ctech.de>
>> + *
>> + * See file CREDITS for list of people who contributed to this
>> + * project.
>> + *
>> + * This program is free software; you can redistribute it and/or
>> + * modify it under the terms of the GNU General Public License as
>> + * published by the Free Software Foundation; either version 2 of
>> + * the License, or (at your option) any later version.
>> + *
>> + * This program is distributed in the hope that it will be useful,
>> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
>> + * GNU General Public License for more details.
>> + *
>> + * You should have received a copy of the GNU General Public License
>> + * along with this program; if not, write to the Free Software
>> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
>> + * MA 02111-1307 USA
>> + *
>> + */
>> +
>> +       .globl ext_bus_cntlr_init
>> +ext_bus_cntlr_init:
>> +       blr
>> +
>> +       .globl sdram_init
>> +sdram_init:
>> +       blr
>> diff --git a/board/xilinx/fx12mm/u-boot.lds b/board/xilinx/fx12mm/u-boot.lds
>> new file mode 100644
>> index 0000000..31af107
>> --- /dev/null
>> +++ b/board/xilinx/fx12mm/u-boot.lds
>> @@ -0,0 +1,149 @@
>> +/*
>> + * (C) Copyright 2000
>> + * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
>> + *
>> + * See file CREDITS for list of people who contributed to this
>> + * project.
>> + *
>> + * This program is free software; you can redistribute it and/or
>> + * modify it under the terms of the GNU General Public License as
>> + * published by the Free Software Foundation; either version 2 of
>> + * the License, or (at your option) any later version.
>> + *
>> + * This program is distributed in the hope that it will be useful,
>> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>> + * GNU General Public License for more details.
>> + *
>> + * You should have received a copy of the GNU General Public License
>> + * along with this program; if not, write to the Free Software
>> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
>> + * MA 02111-1307 USA
>> + */
>> +
>> +OUTPUT_ARCH(powerpc)
>> +ENTRY(_start)
>> +SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib); SEARCH_DIR(/usr/local/powerpc-any-elf/lib);
>> +/* Do we need any of these for elf?
>> +   __DYNAMIC = 0;    */
>> +SECTIONS
>> +{
>> +  /* Read-only sections, merged into text segment: */
>> +  . = + SIZEOF_HEADERS;
>> +  .interp : { *(.interp) }
>> +  .hash          : { *(.hash)          }
>> +  .dynsym        : { *(.dynsym)                }
>> +  .dynstr        : { *(.dynstr)                }
>> +  .rel.text      : { *(.rel.text)              }
>> +  .rela.text     : { *(.rela.text)     }
>> +  .rel.data      : { *(.rel.data)              }
>> +  .rela.data     : { *(.rela.data)     }
>> +  .rel.rodata    : { *(.rel.rodata)    }
>> +  .rela.rodata   : { *(.rela.rodata)   }
>> +  .rel.got       : { *(.rel.got)               }
>> +  .rela.got      : { *(.rela.got)              }
>> +  .rel.ctors     : { *(.rel.ctors)     }
>> +  .rela.ctors    : { *(.rela.ctors)    }
>> +  .rel.dtors     : { *(.rel.dtors)     }
>> +  .rela.dtors    : { *(.rela.dtors)    }
>> +  .rel.bss       : { *(.rel.bss)               }
>> +  .rela.bss      : { *(.rela.bss)              }
>> +  .rel.plt       : { *(.rel.plt)               }
>> +  .rela.plt      : { *(.rela.plt)              }
>> +  .init          : { *(.init)  }
>> +  .plt : { *(.plt) }
>> +  .text      :
>> +  {
>> +    /* WARNING - the following is hand-optimized to fit within */
>> +    /* the sector layout of our flash chips!   XXX FIXME XXX   */
>> +/*
>> +    cpu/ppc4xx/start.o (.text)
>> +    board/xilinx/fx12mm/init.o (.text)
>> +    cpu/ppc4xx/kgdb.o  (.text)
>> +    cpu/ppc4xx/traps.o (.text)
>> +    cpu/ppc4xx/interrupts.o    (.text)
>> +    cpu/ppc4xx/serial.o        (.text)
>> +    cpu/ppc4xx/cpu_init.o      (.text)
>> +    cpu/ppc4xx/speed.o (.text)
>> +    cpu/ppc4xx/4xx_enet.o      (.text)
>> +    common/dlmalloc.o  (.text)
>> +    lib_generic/crc32.o                (.text)
>> +    lib_ppc/extable.o  (.text)
>> +    lib_generic/zlib.o         (.text)
>> +*/
>> +/*    . = env_offset;*/
>> +/*    common/environment.o(.text)*/
>> +
>> +    *(.text)
>> +    *(.fixup)
>> +    *(.got1)
>> +  }
>> +  _etext = .;
>> +  PROVIDE (etext = .);
>> +  .rodata    :
>> +  {
>> +    *(.rodata)
>> +    *(.rodata1)
>> +    *(.rodata.str1.4)
>> +    *(.eh_frame)
>> +  }
>> +  .fini      : { *(.fini)    } =0
>> +  .ctors     : { *(.ctors)   }
>> +  .dtors     : { *(.dtors)   }
>> +
>> +  /* Read-write section, merged into data segment: */
>> +  . = (. + 0x00FF) & 0xFFFFFF00;
>> +  _erotext = .;
>> +  PROVIDE (erotext = .);
>> +  .reloc   :
>> +  {
>> +    *(.got)
>> +    _GOT2_TABLE_ = .;
>> +    *(.got2)
>> +    _FIXUP_TABLE_ = .;
>> +    *(.fixup)
>> +  }
>> +  __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;
>> +  __fixup_entries = (. - _FIXUP_TABLE_)>>2;
>> +
>> +  .data    :
>> +  {
>> +    *(.data)
>> +    *(.data1)
>> +    *(.sdata)
>> +    *(.sdata2)
>> +    *(.dynamic)
>> +    CONSTRUCTORS
>> +  }
>> +  _edata  =  .;
>> +  PROVIDE (edata = .);
>> +
>> +  . = .;
>> +  __u_boot_cmd_start = .;
>> +  .u_boot_cmd : { *(.u_boot_cmd) }
>> +  __u_boot_cmd_end = .;
>> +
>> +
>> +  . = .;
>> +  __start___ex_table = .;
>> +  __ex_table : { *(__ex_table) }
>> +  __stop___ex_table = .;
>> +
>> +  . = ALIGN(256);
>> +  __init_begin = .;
>> +  .text.init : { *(.text.init) }
>> +  .data.init : { *(.data.init) }
>> +  . = ALIGN(256);
>> +  __init_end = .;
>> +
>> +  __bss_start = .;
>> +  .bss       :
>> +  {
>> +   *(.sbss) *(.scommon)
>> +   *(.dynbss)
>> +   *(.bss)
>> +   *(COMMON)
>> +  }
>> +  _end = . ;
>> +  PROVIDE (end = .);
>> +}
>> diff --git a/board/xilinx/fx12mm/xparameters.h b/board/xilinx/fx12mm/xparameters.h
>> new file mode 100644
>> index 0000000..b85ded0
>> --- /dev/null
>> +++ b/board/xilinx/fx12mm/xparameters.h
>> @@ -0,0 +1,40 @@
>> +/*
>> + * (C) Copyright 2008
>> + *
>> + * Georg Schardt <schardt@team-ctech.de>
>> + *
>> + * See file CREDITS for list of people who contributed to this
>> + * project.
>> + *
>> + * This program is free software; you can redistribute it and/or
>> + * modify it under the terms of the GNU General Public License as
>> + * published by the Free Software Foundation; either version 2 of
>> + * the License, or (at your option) any later version.
>> + *
>> + * This program is distributed in the hope that it will be useful,
>> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
>> + * GNU General Public License for more details.
>> + *
>> + * You should have received a copy of the GNU General Public License
>> + * along with this program; if not, write to the Free Software
>> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
>> + * MA 02111-1307 USA
>> + *
>> + * CAUTION: This file is based on the xparameters.h automatically
>> + * generated by libgen. Version: Xilinx EDK 8.2.02 EDK_Im_Sp2.4
>> + */
>> +
>> +
>> +/* RS232 */
>> +#define XPAR_UARTNS550_0_CLOCK_FREQ_HZ 100000000
>> +#define XPAR_UARTNS550_0_BASEADDR 0x83E00000
>> +
>> +
>> +/* INT_C */
>> +#define XPAR_XPS_INTC_0_DEVICE_ID 0
>> +#define XPAR_XPS_INTC_0_BASEADDR 0x81800000
>> +#define XPAR_INTC_MAX_NUM_INTR_INPUTS 2
>> +
>> +/* CPU core clock */
>> +#define XPAR_CORE_CLOCK_FREQ_HZ 300000000
>> diff --git a/include/configs/FX12MM.h b/include/configs/FX12MM.h
>> new file mode 100644
>> index 0000000..00e9ee5
>> --- /dev/null
>> +++ b/include/configs/FX12MM.h
>> @@ -0,0 +1,127 @@
>> +/*
>> + * (C) Copyright 2008
>> + * Georg Schardt <schardt@team-ctech.de>
>> + *
>> + * See file CREDITS for list of people who contributed to this
>> + * project.
>> + *
>> + * This program is free software; you can redistribute it and/or
>> + * modify it under the terms of the GNU General Public License as
>> + * published by the Free Software Foundation; either version 2 of
>> + * the License, or (at your option) any later version.
>> + *
>> + * This program is distributed in the hope that it will be useful,
>> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>> + * GNU General Public License for more details.
>> + *
>> + * You should have received a copy of the GNU General Public License
>> + * along with this program; if not, write to the Free Software
>> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
>> + * MA 02111-1307 USA
>> + */
>> +
>> +
>> +/*
>> +   Configuration file for the Virtex4FX12 Minimodul by Avnet/Memec,
>> +   see http://www.em.avnet.com
>> +*/
>> +
>> +#ifndef __CONFIG_H
>> +#define __CONFIG_H
>> +
>> +/* include the board specific parameter file */
>> +#include "../board/xilinx/fx12mm/xparameters.h"
>> +
>> +
>> +/* cpu parameter */
>> +#define CONFIG_4xx             1
>> +#define CONFIG_405             1
>> +#define CONFIG_XILINX_405      1
>> +#define CONFIG_SYS_CLK_FREQ    100000000
>> +
>> +/* system ace modul */
>> +#ifdef XPAR_SYSACE_0_DEVICE_ID
>> +#define CONFIG_SYSTEMACE        1
>> +#define CONFIG_DOS_PARTITION    1
>> +#define CFG_SYSTEMACE_BASE      XPAR_SYSACE_0_BASEADDR
>> +#define CFG_SYSTEMACE_WIDTH     XPAR_SYSACE_0_MEM_WIDTH
>> +#endif
>> +
>> +/* environment is in FLASH */
>> +#define CFG_ENV_IS_IN_FLASH     1
>> +#define RM_FLASH_CMDS
>> +
>> +/* flash configuration */
>> +#define CFG_FLASH_BASE          0xff800000
>> +#define CFG_MAX_FLASH_BANKS     1       /* max number of memory banks        */
>> +#define CFG_MAX_FLASH_SECT      256     /* max number of sectors on one chip */
>> +#define CFG_FLASH_ERASE_TOUT    150000  /* Timeout for Flash Erase (in ms)   */
>> +#define CFG_FLASH_WRITE_TOUT    500     /* Timeout for Flash Write (in ms)   */
>> +#define CFG_FLASH_CFI          1
>> +#define CONFIG_FLASH_CFI_DRIVER        1
>> +#define CFG_ENV_OFFSET          0x003f0000
>> +#define CFG_ENV_SIZE            0x00010000
>> +#define CONFIG_ENV_OVERWRITE    1       /* writable ethaddr and serial# */
>> +#define CFG_MONITOR_BASE        0xff800000
>> +
>> +/* serial communication */
>> +#ifdef XILINX_UARTLITE_BASEADDR
>> +#define        CONFIG_XILINX_UARTLITE
>> +#define        CONFIG_SERIAL_BASE      XILINX_UARTLITE_BASEADDR
>> +#define        CONFIG_BAUDRATE         XILINX_UARTLITE_BAUDRATE
>> +#define        CFG_BAUDRATE_TABLE      { CONFIG_BAUDRATE }
>> +#else
>> +#ifdef XPAR_UARTNS550_0_BASEADDR
>> +#define CFG_NS16550
>> +#define CFG_NS16550_SERIAL
>> +#define CFG_NS16550_REG_SIZE   4
>> +#define CONFIG_CONS_INDEX      1
>> +#define CFG_NS16550_COM1       XPAR_UARTNS550_0_BASEADDR
>> +#define CFG_NS16550_CLK                XPAR_UARTNS550_0_CLOCK_FREQ_HZ
>> +#define        CONFIG_BAUDRATE         115200
>> +#define        CFG_BAUDRATE_TABLE      { 9600, 115200 }
>> +#endif
>> +#endif
>> +
>> +/* interrupt controller */
>> +#ifdef XPAR_XPS_INTC_0_DEVICE_ID
>> +#define        CFG_INTC_0              1
>> +#define        CFG_INTC_0_ADDR         XPAR_XPS_INTC_0_BASEADDR
>> +#define        CFG_INTC_0_NUM          XPAR_INTC_MAX_NUM_INTR_INPUTS
>> +#endif
>> +
>> +/* u-boot commands configuration */
>> +#include <config_cmd_default.h>
>> +#undef CONFIG_CMD_NET
>> +#define CONFIG_CMD_JFFS2
>> +
>> +/* u-boot configuration */
>> +#define CFG_PROMPT      "=> "   /* Monitor Command Prompt       */
>> +#define CFG_CBSIZE      256     /* Console I/O Buffer Size      */
>> +#define CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16)   /* Print Buffer Size */
>> +#define CFG_MAXARGS     16      /* max number of command args   */
>> +#define CFG_BARGSIZE    CFG_CBSIZE      /* Boot Argument Buffer Size    */
>> +#define CFG_MEMTEST_START       0x0400000       /* memtest works on     */
>> +#define CFG_MEMTEST_END         0x0800000       /* 4 ... 12 MB in DRAM  */
>> +#define CFG_LOAD_ADDR           0x01000000        /* default load address */
>> +#define CFG_HZ                 2000    /* decrementer freq: 1 ms ticks */
>> +#define CFG_SDRAM_BASE          0x00000000
>> +#define CFG_MONITOR_LEN         (192 * 1024)
>> +#define CFG_MALLOC_LEN          (1024 * 1024)
>> +#define CFG_CACHELINE_SIZE      32
>> +#define CFG_CACHELINE_SHIFT    2
>> +#define CFG_BOOTMAPSZ           (8 << 20)
>> +
>> +/* memory configuration */
>> +#define CFG_INIT_RAM_ADDR       0x800000  /* inside of SDRAM */
>> +#define CFG_INIT_RAM_END        0x2000    /* End of used area in RAM */
>> +#define CFG_GBL_DATA_SIZE       128
>> +#define CFG_GBL_DATA_OFFSET    (CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE)
>> +#define CFG_INIT_SP_OFFSET      CFG_GBL_DATA_OFFSET
>> +
>> +#define BOOTFLAG_COLD   0x01    /* Normal Power-On: Boot from FLASH     */
>> +#define BOOTFLAG_WARM   0x02    /* Software reboot                      */
>> +
>> +#endif                          /* __CONFIG_H */
>> +
>> --
>> 1.5.4.1
>>
>> _______________________________________________
>> U-Boot mailing list
>> U-Boot at lists.denx.de
>> http://lists.denx.de/mailman/listinfo/u-boot
>>
>>     
>
>
>
>   

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot] [PATCH] add board support for virtex4fx12 minimodul
  2008-09-09  7:21   ` Georg Schardt
@ 2008-09-09  8:19     ` Wolfgang Denk
  2008-09-09  8:23       ` Georg Schardt
       [not found]     ` <aa76a2be0809090553j482c2f9x1172a634eaf1a405@mail.gmail.com>
  1 sibling, 1 reply; 7+ messages in thread
From: Wolfgang Denk @ 2008-09-09  8:19 UTC (permalink / raw)
  To: u-boot

Dear Georg Schardt,

In message <48C623F0.4010301@team-ctech.de> you wrote:
> 
> > On Mon, Sep 8, 2008 at 14:07, schardt <schardt@team-ctech.de> wrote:
> >   
> >> From: schardt <schardt@schleppi.(none)>
[600+ lines of quote deleted]

was there any need to re-quote the 600+ lines of your own posting?

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Genitiv ins Wasser, weil's Dativ ist!

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot] [PATCH] add board support for virtex4fx12 minimodul
  2008-09-09  8:19     ` Wolfgang Denk
@ 2008-09-09  8:23       ` Georg Schardt
  0 siblings, 0 replies; 7+ messages in thread
From: Georg Schardt @ 2008-09-09  8:23 UTC (permalink / raw)
  To: u-boot

sorry, just pressed ctrl-r without thinking about

georg
> [600+ lines of quote deleted]
>
> was there any need to re-quote the 600+ lines of your own posting?
>
> Best regards,
>
> Wolfgang Denk
>
>   

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot] [PATCH] add board support for virtex4fx12 minimodul
       [not found]     ` <aa76a2be0809090553j482c2f9x1172a634eaf1a405@mail.gmail.com>
@ 2008-09-09 12:55       ` Ricardo
  2008-09-09 13:23         ` Georg Schardt
  0 siblings, 1 reply; 7+ messages in thread
From: Ricardo @ 2008-09-09 12:55 UTC (permalink / raw)
  To: u-boot

Hello Georg

 Its a pleasure to help.

>> 2) Try to unificate the fx12mm board under a more global board, like
>> the ml507 with is now in mainstream
>>
>
> you mean, that i create only a new config file and use the ml507 board code
> ?
> is this better than create new board specific files under board/avnet/fx12mm
> ?

I mean something more... If you take a look to your board, it is
basically a modern version of the ml300 (what is great).
Unfortunately, the ml300 board cannot use all your improvements.

We faced the same problems building the v5fx30teval board and we
decide to generate a generic board called ppc440-generic which will be
the skeleton of all the fpgas boards with the ppc440 processor.

What I am asking you is to create the same architechture for the
ppc400 processor.


Best Regards
-- 
Ricardo Ribalda
http://www.eps.uam.es/~rribalda/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot] [PATCH] add board support for virtex4fx12 minimodul
  2008-09-09 12:55       ` Ricardo
@ 2008-09-09 13:23         ` Georg Schardt
  0 siblings, 0 replies; 7+ messages in thread
From: Georg Schardt @ 2008-09-09 13:23 UTC (permalink / raw)
  To: u-boot

Hi Ricardo,

if such an architecture is wanted i can try to create it ?
but i'm stil a beginner in u-boot and not very firm in git, so i think i 
ask many things here on the list :)

Georg
Ricardo wrote:
> Hello Georg
>
>  Its a pleasure to help.
>
>   
>>> 2) Try to unificate the fx12mm board under a more global board, like
>>> the ml507 with is now in mainstream
>>>
>>>       
>> you mean, that i create only a new config file and use the ml507 board code
>> ?
>> is this better than create new board specific files under board/avnet/fx12mm
>> ?
>>     
>
> I mean something more... If you take a look to your board, it is
> basically a modern version of the ml300 (what is great).
> Unfortunately, the ml300 board cannot use all your improvements.
>
> We faced the same problems building the v5fx30teval board and we
> decide to generate a generic board called ppc440-generic which will be
> the skeleton of all the fpgas boards with the ppc440 processor.
>
> What I am asking you is to create the same architechture for the
> ppc400 processor.
>
>
> Best Regards
>   

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2008-09-09 13:23 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-09-08 18:07 [U-Boot] [PATCH] add board support for virtex4fx12 minimodul schardt
2008-09-08 20:04 ` Ricardo
2008-09-09  7:21   ` Georg Schardt
2008-09-09  8:19     ` Wolfgang Denk
2008-09-09  8:23       ` Georg Schardt
     [not found]     ` <aa76a2be0809090553j482c2f9x1172a634eaf1a405@mail.gmail.com>
2008-09-09 12:55       ` Ricardo
2008-09-09 13:23         ` Georg Schardt

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.