blob: 7966ad5bd5fbf8b2510374ab0ae60355a8af3a1c [file] [log] [blame]
wdenkc6097192002-11-03 00:24:07 +00001/*
wdenk452cfd62002-11-19 11:04:11 +00002 * (C) Copyright 2001, 2002
wdenkc6097192002-11-03 00:24:07 +00003 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4 *
5 * See file CREDITS for list of people who contributed to this
6 * project.
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation; either version 2 of
11 * the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21 * MA 02111-1307 USA
22 */
23
24#ifndef _CMD_BSP_H_
25#define _CMD_BSP_H_
26
27#include <common.h>
28#include <command.h>
29
30#if (CONFIG_COMMANDS & CFG_CMD_BSP)
31
wdenk452cfd62002-11-19 11:04:11 +000032/* ----- LWMON ---------------------------------------------------------
wdenkc6097192002-11-03 00:24:07 +000033 */
34#if defined(CONFIG_LWMON)
35
36#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
37 "pic", 3, 4, 1, do_pic, \
38 "pic - read and write PIC registers\n", \
39 "read reg - read PIC register `reg'\n" \
40 "pic write reg val - write value `val' to PIC register `reg'\n" \
41), MK_CMD_TBL_ENTRY( \
42 "kbd", 3, 1, 1, do_kbd, \
43 "kbd - read keyboard status\n", \
44 NULL \
45), MK_CMD_TBL_ENTRY( \
46 "lsb", 3, 2, 1, do_lsb, \
47 "lsb - check and set LSB switch\n", \
48 "on - switch LSB on\n" \
49 "lsb off - switch LSB off\n" \
50 "lsb - print current setting\n" \
51),
52int do_pic (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
53int do_kbd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
54int do_lsb (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
55
56#endif /* CONFIG_LWMON */
wdenk452cfd62002-11-19 11:04:11 +000057/* -------------------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +000058
wdenk452cfd62002-11-19 11:04:11 +000059/* ----- PCU E -------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +000060#if defined(CONFIG_PCU_E)
61
62#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
63 "puma", 4, 4, 1, do_puma, \
64 "puma - access PUMA FPGA\n", \
65 "status - print PUMA status\n" \
66 "puma load addr len - load PUMA configuration data\n" \
67),
68int do_puma (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
69
70#endif /* CONFIG_PCU_E */
wdenk452cfd62002-11-19 11:04:11 +000071/* -------------------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +000072
wdenk452cfd62002-11-19 11:04:11 +000073/* ----- CCM/SCM ------------------------------------------------------ */
wdenkc6097192002-11-03 00:24:07 +000074#if defined(CONFIG_CCM) || defined(CONFIG_SCM)
75
76#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
77 "fpga", 4, 4, 1, do_fpga, \
78 "fpga - access FPGA(s)\n", \
79 "fpga status [name] - print FPGA status\n" \
80 "fpga reset [name] - reset FPGA\n" \
81 "fpga load [name] addr - load FPGA configuration data\n" \
82),
83int do_fpga (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
84
85#endif /* CONFIG_CCM, CONFIG_SCM */
wdenk452cfd62002-11-19 11:04:11 +000086/* -------------------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +000087
wdenk452cfd62002-11-19 11:04:11 +000088/* ----- PIP405 ------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +000089#if defined(CONFIG_PIP405)
90
91#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
92 "pip405", 4, 6, 1, do_pip405, \
93 "pip405 - PIP405 specific Cmds\n", \
94 "flash mem [SrcAddr] - updates U-Boot with image in memory\n" \
95 "pip405 flash floppy [SrcAddr] - updates U-Boot with image from floppy\n" \
96 "pip405 flash mps - updates U-Boot with image from MPS\n" \
97),
98int do_pip405 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
99
100#endif /* CONFIG_PIP405 */
wdenk452cfd62002-11-19 11:04:11 +0000101/* -------------------------------------------------------------------- */
102
103/* ----- MIP405 ------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000104#if defined(CONFIG_MIP405)
105
106#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
107 "mip405", 4, 6, 1, do_mip405, \
108 "mip405 - MIP405 specific Cmds\n", \
109 "flash mem [SrcAddr] - updates U-Boot with image in memory\n" \
110 "mip405 flash mps - updates U-Boot with image from MPS\n" \
111),
112int do_mip405 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
113
114#endif /* CONFIG_MIP405 */
wdenk1fe2c702003-03-06 21:55:29 +0000115/* ----- VCMA9 -----------------------------------------------------------------
116 */
117#if defined(CONFIG_VCMA9)
118
119#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
120 "vcma9", 4, 6, 1, do_vcma9, \
121 "vcma9 - VCMA9 specific Cmds\n", \
122 "flash mem [SrcAddr] - updates U-Boot with image in memory\n" \
123),
124int do_vcma9 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
125
126#endif /* CONFIG_VCMA9 */
127/* ----------------------------------------------------------------------------*/
wdenkc6097192002-11-03 00:24:07 +0000128
wdenk452cfd62002-11-19 11:04:11 +0000129/* ----- DASA_SIM ----------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000130#if defined(CONFIG_DASA_SIM)
131
132#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
133 "pci9054", 7, 3, 1, do_pci9054, \
134 "pci9054 - PLX PCI9054 EEPROM access\n", \
135 "pci9054 info - print EEPROM values\n" \
136 "pci9054 update - updates EEPROM with default values\n" \
137),
138int do_pci9054 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
139
140#endif /* CONFIG_DASA_SIM */
wdenk452cfd62002-11-19 11:04:11 +0000141/* -------------------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000142
wdenk452cfd62002-11-19 11:04:11 +0000143/* ----- HYMOD -------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000144#if defined(CONFIG_HYMOD)
145
146#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
147 "fpga", 4, 6, 1, do_fpga, \
148 "fpga - FPGA sub-system\n", \
149 "load [type] addr size\n" \
150 " - write the configuration data at memory address `addr',\n" \
151 " size `size' bytes, into the FPGA of type `type' (either\n" \
152 " `main' or `mezz', default `main'). e.g.\n" \
153 " `fpga load 100000 7d8f'\n" \
154 " loads the main FPGA with config data at address 100000\n" \
155 " HEX, size 7d8f HEX (32143 DEC) bytes\n" \
156 "fpga tftp file addr\n" \
157 " - transfers `file' from the tftp server into memory at\n" \
158 " address `addr', then writes the entire file contents\n" \
159 " into the main FPGA\n" \
160 "fpga store addr\n" \
161 " - read configuration data from the main FPGA (the mezz\n" \
162 " FPGA is write-only), into address `addr'. There must be\n" \
163 " enough memory available at `addr' to hold all the config\n"\
164 " data - the size of which is determined by VC:???\n" \
165 "fpga info\n" \
166 " - print information about the Hymod FPGA, namely the\n" \
167 " memory addresses at which the four FPGA local bus\n" \
168 " address spaces appear in the physical address space\n" \
169), MK_CMD_TBL_ENTRY( \
170 "eeclear", 4, 1, 0, do_eecl, \
171 "eeclear - Clear the eeprom on a Hymod board \n", \
172 "[type]\n" \
173 " - write zeroes into the EEPROM on the board of type `type'\n"\
174 " (`type' is either `main' or `mezz' - default `main')\n" \
175 " Note: the EEPROM write enable jumper must be installed\n" \
176),
177int do_fpga (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
178int do_eecl (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
179
180#endif /* CONFIG_HYMOD */
wdenk452cfd62002-11-19 11:04:11 +0000181/* -------------------------------------------------------------------- */
182
183/* ----- CRAY405 (L1) ------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000184#if defined (CONFIG_CRAYL1)
185#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
186 "L1cmd", 5, 4, 1, do_crayL1, \
187 "L1cmd - L1 update, setup, commands \n", \
188 "L1cmd update - update flash images from host\n" \
189 "L1cmd boot - nfs or ramboot L1\n" \
190),
191int do_crayL1 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
192#endif /* CONFIG_CRAY405 */
wdenk452cfd62002-11-19 11:04:11 +0000193/* -------------------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000194
wdenk452cfd62002-11-19 11:04:11 +0000195/* ----- EVB64260 ----------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000196#if defined (CONFIG_EVB64260)
wdenkc6097192002-11-03 00:24:07 +0000197#ifdef CONFIG_ZUMA_V2
198#define CMD_TBL_BSP ZUMA_TBL_ENTRY
199
200#define ZUMA_TBL_ENTRY MK_CMD_TBL_ENTRY( \
201 "zinit", 5, 1, 0, do_zuma_init_pbb, \
202 "zinit - init zuma pbb\n", \
203 "\n" \
204 " - init zuma pbb\n" \
205), MK_CMD_TBL_ENTRY( \
206 "zdtest", 6, 3, 1, do_zuma_test_dma, \
207 "zdtest - run dma test\n", \
208 "[cmd [count]]\n" \
209 " - run dma cmd (w=0,v=1,cp=2,cmp=3,wi=4,vi=5), count bytes\n" \
210), MK_CMD_TBL_ENTRY( \
211 "zminit", 5, 1, 0, do_zuma_init_mbox, \
212 "zminit - init zuma mbox\n", \
213 "\n" \
214 " - init zuma mbox\n" \
215),
216
217int do_zuma_init_pbb (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
218int do_zuma_test_dma (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
219int do_zuma_init_mbox (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
220
221void zuma_init_pbb(void);
222int zuma_mbox_init(void);
223int zuma_test_dma(int cmd, int size);
224#else
225#define CMD_TBL_BSP
226#endif /* ZUMA_NTL */
227
228#endif /* CONFIG_EVB64260 */
wdenk452cfd62002-11-19 11:04:11 +0000229/* -------------------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000230
wdenk452cfd62002-11-19 11:04:11 +0000231/* -----W7O------------------------------------------------------------ */
wdenkc6097192002-11-03 00:24:07 +0000232#if defined(CONFIG_W7O)
233
234#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
235 "vpd", 3, 2, 1, do_vpd, \
236 "vpd - Read Vital Product Data\n", \
237 "[dev_addr]\n" \
238 " - Read VPD Data from default address, or device address 'dev_addr'.\n" \
239),
240
241extern int do_vpd (cmd_tbl_t *, int, int, char *[]);
242
243#endif /* CONFIG_W7O */
wdenk452cfd62002-11-19 11:04:11 +0000244/* -------------------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000245
wdenk452cfd62002-11-19 11:04:11 +0000246/* ---- PCIPPC2 / PCIPPC6 --------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000247#if defined(CONFIG_PCIPPC2) || defined(CONFIG_PCIPPC6)
248#if defined(CONFIG_WATCHDOG)
249
250#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
wdenk452cfd62002-11-19 11:04:11 +0000251 "wd", 3, 2, 1, do_wd, \
252 "wd - check and set watchdog\n", \
253 "on - switch watchDog on\n" \
254 "wd off - switch watchdog off\n" \
255 "wd - print current status\n" \
wdenkc6097192002-11-03 00:24:07 +0000256),
257
258extern int do_wd (cmd_tbl_t *, int, int, char *[]);
259
260#else
261#define CMD_TBL_BSP
262#endif /* CONFIG_WATCHDOG */
263
264#endif /* CONFIG_PCIPPC2 , CONFIG_PCIPPC6 */
wdenk452cfd62002-11-19 11:04:11 +0000265/* -------------------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000266
wdenk452cfd62002-11-19 11:04:11 +0000267/* ----- PN62 --------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000268#if defined(CONFIG_PN62)
269
270#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
271 "loadpci", 5, 2, 1, do_loadpci, \
272 "loadpci - load binary file over PCI\n", \
273 "[addr]\n" \
274 " - load binary file over PCI to address 'addr'\n" \
275), MK_CMD_TBL_ENTRY( \
276 "led" , 3, 3, 1, do_led, \
277 "led - set LED 0..11 on the PN62 board\n", \
278 "i fun\n" \
279 " - set 'i'th LED to function 'fun'\n" \
280),
281
282extern int do_loadpci (cmd_tbl_t *, int, int, char *[]);
283extern int do_led (cmd_tbl_t *, int, int, char *[]);
284#endif /* CONFIG_PN62 */
wdenk452cfd62002-11-19 11:04:11 +0000285/* -------------------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000286
wdenk452cfd62002-11-19 11:04:11 +0000287/* ----- TRAB --------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000288#if defined(CONFIG_TRAB)
289
wdenk452cfd62002-11-19 11:04:11 +0000290#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
291 "kbd", 3, 1, 1, do_kbd, \
292 "kbd - read keyboard status\n", \
293 NULL \
wdenkc6097192002-11-03 00:24:07 +0000294),
295
296int do_kbd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
297
298#endif /* CONFIG_TRAB */
wdenk452cfd62002-11-19 11:04:11 +0000299/* -------------------------------------------------------------------- */
wdenkc6097192002-11-03 00:24:07 +0000300
wdenk452cfd62002-11-19 11:04:11 +0000301/* ----- R360MPI ------------------------------------------------------ */
wdenkc6097192002-11-03 00:24:07 +0000302#if defined(CONFIG_R360MPI)
303
wdenk452cfd62002-11-19 11:04:11 +0000304#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
305 "kbd", 3, 1, 1, do_kbd, \
306 "kbd - read keyboard status\n", \
307 NULL \
wdenkc6097192002-11-03 00:24:07 +0000308),
309
310int do_kbd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
311
312#endif /* CONFIG_R360MPI */
wdenk452cfd62002-11-19 11:04:11 +0000313/* -------------------------------------------------------------------- */
314
315/* ------ AMIGAONEG3SE ------------------------------------------------ */
316#if defined(CONFIG_AMIGAONEG3SE)
317
318#define CMD_TBL_BSP /* dummy */
319
320#endif /* AmigaOneG3SE */
stroesea91d7572003-03-25 14:43:01 +0000321/* ----- PCI405 ------------------------------------------------------- */
322#if defined(CONFIG_PCI405)
323
324#define CMD_TBL_BSP MK_CMD_TBL_ENTRY( \
325 "loadpci", 7, 1, 1, do_loadpci, \
326 "loadpci - wait for sync and boot image\n", \
327 NULL \
328),
329
330int do_loadpci (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
331
332#endif /* CONFIG_PCI405 */
wdenk452cfd62002-11-19 11:04:11 +0000333/* -------------------------------------------------------------------- */
334
335#else
336#define CMD_TBL_BSP
337#endif /* CFG_CMD_BSP */
wdenkc6097192002-11-03 00:24:07 +0000338
339#endif /* _CMD_BSP_H_ */