diff options
Diffstat (limited to 'board/hymod')
-rw-r--r-- | board/hymod/Makefile | 2 | ||||
-rw-r--r-- | board/hymod/bsp.c | 39 | ||||
-rw-r--r-- | board/hymod/u-boot.lds | 6 | ||||
-rw-r--r-- | board/hymod/u-boot.lds.debug | 6 |
4 files changed, 43 insertions, 10 deletions
diff --git a/board/hymod/Makefile b/board/hymod/Makefile index 4d3097c..b52af9a 100644 --- a/board/hymod/Makefile +++ b/board/hymod/Makefile @@ -28,7 +28,7 @@ LIB = lib$(BOARD).a OBJS = $(BOARD).o flash.o bsp.o eeprom.o fetch.o input.o env.o $(LIB): .depend $(OBJS) - $(AR) crv $@ $^ + $(AR) crv $@ $(OBJS) ######################################################################### diff --git a/board/hymod/bsp.c b/board/hymod/bsp.c index 02b6421..f131e51 100644 --- a/board/hymod/bsp.c +++ b/board/hymod/bsp.c @@ -276,7 +276,30 @@ do_fpga (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]) printf ("Usage:\n%s\n", cmdtp->usage); return 1; } - +cmd_tbl_t U_BOOT_CMD(fpga) = MK_CMD_ENTRY( + "fpga", 6, 1, do_fpga, + "fpga - FPGA sub-system\n", + "load [type] addr size\n" + " - write the configuration data at memory address `addr',\n" + " size `size' bytes, into the FPGA of type `type' (either\n" + " `main' or `mezz', default `main'). e.g.\n" + " `fpga load 100000 7d8f'\n" + " loads the main FPGA with config data at address 100000\n" + " HEX, size 7d8f HEX (32143 DEC) bytes\n" + "fpga tftp file addr\n" + " - transfers `file' from the tftp server into memory at\n" + " address `addr', then writes the entire file contents\n" + " into the main FPGA\n" + "fpga store addr\n" + " - read configuration data from the main FPGA (the mezz\n" + " FPGA is write-only), into address `addr'. There must be\n" + " enough memory available at `addr' to hold all the config\n" + " data - the size of which is determined by VC:???\n" + "fpga info\n" + " - print information about the Hymod FPGA, namely the\n" + " memory addresses at which the four FPGA local bus\n" + " address spaces appear in the physical address space\n" +); /* ------------------------------------------------------------------------- */ int do_eecl (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]) @@ -312,15 +335,17 @@ do_eecl (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]) return 0; } +cmd_tbl_t U_BOOT_CMD(eec) = MK_CMD_ENTRY( + "eeclear", 1, 0, do_eecl, + "eeclear - Clear the eeprom on a Hymod board \n", + "[type]\n" + " - write zeroes into the EEPROM on the board of type `type'\n" + " (`type' is either `main' or `mezz' - default `main')\n" + " Note: the EEPROM write enable jumper must be installed\n" +); /* ------------------------------------------------------------------------- */ -#if 0 -static uchar test_bitfile[] = { - /* one day ... */ -}; -#endif - int do_htest (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) { diff --git a/board/hymod/u-boot.lds b/board/hymod/u-boot.lds index d71859c..1e20425 100644 --- a/board/hymod/u-boot.lds +++ b/board/hymod/u-boot.lds @@ -111,6 +111,11 @@ SECTIONS _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 = .; @@ -138,4 +143,3 @@ SECTIONS _end = . ; PROVIDE (end = .); } - diff --git a/board/hymod/u-boot.lds.debug b/board/hymod/u-boot.lds.debug index 22138f8..c0ee849 100644 --- a/board/hymod/u-boot.lds.debug +++ b/board/hymod/u-boot.lds.debug @@ -106,6 +106,11 @@ SECTIONS _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 = .; @@ -128,4 +133,3 @@ SECTIONS _end = . ; PROVIDE (end = .); } - |