]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - include/cmd_bsp.h
aab9c3677b0c0a932472170a7f40b38f72bff0a5
[karo-tx-uboot.git] / include / cmd_bsp.h
1 /*
2  * (C) Copyright 2001, 2002
3  * 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
32 /* ----- LWMON ---------------------------------------------------------
33  */
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 ),
52 int do_pic (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
53 int do_kbd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
54 int do_lsb (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
55
56 #endif  /* CONFIG_LWMON */
57 /* -------------------------------------------------------------------- */
58
59 /* ----- PCU E -------------------------------------------------------- */
60 #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 ),
68 int do_puma (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
69
70 #endif  /* CONFIG_PCU_E */
71 /* -------------------------------------------------------------------- */
72
73 /* ----- CCM/SCM ------------------------------------------------------ */
74 #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 ),
83 int do_fpga (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
84
85 #endif  /* CONFIG_CCM, CONFIG_SCM */
86 /* -------------------------------------------------------------------- */
87
88 /* ----- PIP405 ------------------------------------------------------- */
89 #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 ),
98 int do_pip405 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
99
100 #endif /* CONFIG_PIP405 */
101 /* -------------------------------------------------------------------- */
102
103 /* ----- MIP405 ------------------------------------------------------- */
104 #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 ),
112 int do_mip405 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
113
114 #endif /* CONFIG_MIP405 */
115 /* ----- 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 ),
124 int do_vcma9 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
125
126 #endif /* CONFIG_VCMA9 */
127 /* ----------------------------------------------------------------------------*/
128
129 /* ----- DASA_SIM ----------------------------------------------------- */
130 #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 ),
138 int do_pci9054 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
139
140 #endif /* CONFIG_DASA_SIM */
141 /* -------------------------------------------------------------------- */
142
143 /* ----- HYMOD -------------------------------------------------------- */
144 #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 ),
177 int do_fpga (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
178 int do_eecl (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
179
180 #endif  /* CONFIG_HYMOD */
181 /* -------------------------------------------------------------------- */
182
183 /* ----- CRAY405 (L1) ------------------------------------------------- */
184 #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 ),
191 int do_crayL1 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
192 #endif /* CONFIG_CRAY405 */
193 /* -------------------------------------------------------------------- */
194
195 /* ----- EVB64260 ----------------------------------------------------- */
196 #if defined (CONFIG_EVB64260)
197 #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
217 int do_zuma_init_pbb  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
218 int do_zuma_test_dma  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
219 int do_zuma_init_mbox (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
220
221 void zuma_init_pbb(void);
222 int zuma_mbox_init(void);
223 int zuma_test_dma(int cmd, int size);
224 #else
225 #define CMD_TBL_BSP
226 #endif /* ZUMA_NTL */
227
228 #endif /* CONFIG_EVB64260 */
229 /* -------------------------------------------------------------------- */
230
231 /* -----W7O------------------------------------------------------------ */
232 #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
241 extern int do_vpd (cmd_tbl_t *, int, int, char *[]);
242
243 #endif  /* CONFIG_W7O */
244 /* -------------------------------------------------------------------- */
245
246 /* ---- PCIPPC2 / PCIPPC6 --------------------------------------------- */
247 #if defined(CONFIG_PCIPPC2) || defined(CONFIG_PCIPPC6)
248 #if defined(CONFIG_WATCHDOG)
249
250 #define CMD_TBL_BSP MK_CMD_TBL_ENTRY(                   \
251         "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"              \
256 ),
257
258 extern 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 */
265 /* -------------------------------------------------------------------- */
266
267 /* ----- PN62 --------------------------------------------------------- */
268 #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
282 extern int do_loadpci (cmd_tbl_t *, int, int, char *[]);
283 extern int do_led (cmd_tbl_t *, int, int, char *[]);
284 #endif /* CONFIG_PN62 */
285 /* -------------------------------------------------------------------- */
286
287 /* ----- TRAB --------------------------------------------------------- */
288 #if defined(CONFIG_TRAB)
289
290 #define CMD_TBL_BSP     MK_CMD_TBL_ENTRY(                       \
291         "kbd",  3,      1,      1,      do_kbd,                 \
292         "kbd     - read keyboard status\n",                     \
293         NULL                                                    \
294 ),
295
296 int do_kbd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
297
298 #endif  /* CONFIG_TRAB */
299 /* -------------------------------------------------------------------- */
300
301 /* ----- R360MPI ------------------------------------------------------ */
302 #if defined(CONFIG_R360MPI)
303
304 #define CMD_TBL_BSP     MK_CMD_TBL_ENTRY(                       \
305         "kbd",  3,      1,      1,      do_kbd,                 \
306         "kbd     - read keyboard status\n",                     \
307         NULL                                                    \
308 ),
309
310 int do_kbd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
311
312 #endif  /* CONFIG_R360MPI */
313 /* -------------------------------------------------------------------- */
314
315 /* ------ AMIGAONEG3SE ------------------------------------------------ */
316 #if defined(CONFIG_AMIGAONEG3SE)
317
318 #define CMD_TBL_BSP     /* dummy */
319
320 #endif  /* AmigaOneG3SE */
321 /* -------------------------------------------------------------------- */
322
323 #else
324 #define CMD_TBL_BSP
325 #endif  /* CFG_CMD_BSP */
326
327 #endif  /* _CMD_BSP_H_ */