]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - include/cmd_bsp.h
e4b10414b34f75066f3bffb5c2f0e8ab350c91b2
[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 /* -------------------------------------------------------------------- */
116
117 /* ----- DASA_SIM ----------------------------------------------------- */
118 #if defined(CONFIG_DASA_SIM)
119
120 #define CMD_TBL_BSP MK_CMD_TBL_ENTRY(                                           \
121         "pci9054",      7,      3,      1,      do_pci9054,                     \
122         "pci9054 - PLX PCI9054 EEPROM access\n",                                \
123         "pci9054 info - print EEPROM values\n"                                  \
124         "pci9054 update - updates EEPROM with default values\n"                 \
125 ),
126 int do_pci9054 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
127
128 #endif /* CONFIG_DASA_SIM */
129 /* -------------------------------------------------------------------- */
130
131 /* ----- HYMOD -------------------------------------------------------- */
132 #if defined(CONFIG_HYMOD)
133
134 #define CMD_TBL_BSP     MK_CMD_TBL_ENTRY(                               \
135         "fpga", 4,      6,      1,      do_fpga,                        \
136         "fpga    - FPGA sub-system\n",                                  \
137         "load [type] addr size\n"                                       \
138         "  - write the configuration data at memory address `addr',\n"  \
139         "    size `size' bytes, into the FPGA of type `type' (either\n" \
140         "    `main' or `mezz', default `main'). e.g.\n"                 \
141         "        `fpga load 100000 7d8f'\n"                             \
142         "    loads the main FPGA with config data at address 100000\n"  \
143         "    HEX, size 7d8f HEX (32143 DEC) bytes\n"                    \
144         "fpga tftp file addr\n"                                         \
145         "  - transfers `file' from the tftp server into memory at\n"    \
146         "    address `addr', then writes the entire file contents\n"    \
147         "    into the main FPGA\n"                                      \
148         "fpga store addr\n"                                             \
149         "  - read configuration data from the main FPGA (the mezz\n"    \
150         "    FPGA is write-only), into address `addr'. There must be\n" \
151         "    enough memory available at `addr' to hold all the config\n"\
152         "    data - the size of which is determined by VC:???\n"        \
153         "fpga info\n"                                                   \
154         "  - print information about the Hymod FPGA, namely the\n"      \
155         "    memory addresses at which the four FPGA local bus\n"       \
156         "    address spaces appear in the physical address space\n"     \
157 ), MK_CMD_TBL_ENTRY(                                                    \
158         "eeclear", 4,   1,      0,      do_eecl,                        \
159         "eeclear - Clear the eeprom on a Hymod board \n",               \
160         "[type]\n"                                                      \
161         "  - write zeroes into the EEPROM on the board of type `type'\n"\
162         "    (`type' is either `main' or `mezz' - default `main')\n"    \
163         "    Note: the EEPROM write enable jumper must be installed\n"  \
164 ),
165 int do_fpga (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
166 int do_eecl (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
167
168 #endif  /* CONFIG_HYMOD */
169 /* -------------------------------------------------------------------- */
170
171 /* ----- CRAY405 (L1) ------------------------------------------------- */
172 #if defined (CONFIG_CRAYL1)
173 #define CMD_TBL_BSP MK_CMD_TBL_ENTRY(                                           \
174         "L1cmd",        5,      4,      1,      do_crayL1,                      \
175         "L1cmd  - L1 update, setup, commands \n",                               \
176         "L1cmd update - update flash images from host\n"                        \
177         "L1cmd boot - nfs or ramboot L1\n"                                      \
178 ),
179 int do_crayL1 (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
180 #endif /* CONFIG_CRAY405 */
181 /* -------------------------------------------------------------------- */
182
183 /* ----- EVB64260 ----------------------------------------------------- */
184 #if defined (CONFIG_EVB64260)
185 #ifdef CONFIG_ZUMA_V2
186 #define CMD_TBL_BSP  ZUMA_TBL_ENTRY
187
188 #define ZUMA_TBL_ENTRY  MK_CMD_TBL_ENTRY(                               \
189         "zinit",         5,      1,      0,      do_zuma_init_pbb,      \
190         "zinit   - init zuma pbb\n",                                    \
191         "\n"                                                            \
192         "    - init zuma pbb\n"                                         \
193 ), MK_CMD_TBL_ENTRY(                                                    \
194         "zdtest",         6,      3,      1,      do_zuma_test_dma,     \
195         "zdtest  - run dma test\n",                                     \
196         "[cmd [count]]\n"                                               \
197         "    - run dma cmd (w=0,v=1,cp=2,cmp=3,wi=4,vi=5), count bytes\n" \
198 ), MK_CMD_TBL_ENTRY(                                                    \
199         "zminit",         5,      1,      0,      do_zuma_init_mbox,    \
200         "zminit  - init zuma mbox\n",                           \
201         "\n"                                                            \
202         "    - init zuma mbox\n"                                        \
203 ),
204
205 int do_zuma_init_pbb  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
206 int do_zuma_test_dma  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
207 int do_zuma_init_mbox (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
208
209 void zuma_init_pbb(void);
210 int zuma_mbox_init(void);
211 int zuma_test_dma(int cmd, int size);
212 #else
213 #define CMD_TBL_BSP
214 #endif /* ZUMA_NTL */
215
216 #endif /* CONFIG_EVB64260 */
217 /* -------------------------------------------------------------------- */
218
219 /* -----W7O------------------------------------------------------------ */
220 #if defined(CONFIG_W7O)
221
222 #define CMD_TBL_BSP MK_CMD_TBL_ENTRY(                   \
223           "vpd",        3,      2,      1,      do_vpd, \
224           "vpd     - Read Vital Product Data\n",        \
225           "[dev_addr]\n"                                \
226           "        - Read VPD Data from default address, or device address 'dev_addr'.\n" \
227 ),
228
229 extern int do_vpd (cmd_tbl_t *, int, int, char *[]);
230
231 #endif  /* CONFIG_W7O */
232 /* -------------------------------------------------------------------- */
233
234 /* ---- PCIPPC2 / PCIPPC6 --------------------------------------------- */
235 #if defined(CONFIG_PCIPPC2) || defined(CONFIG_PCIPPC6)
236 #if defined(CONFIG_WATCHDOG)
237
238 #define CMD_TBL_BSP MK_CMD_TBL_ENTRY(                   \
239         "wd",   3,      2,      1,      do_wd,          \
240         "wd      - check and set watchdog\n",           \
241         "on   - switch watchDog on\n"                   \
242         "wd off  - switch watchdog off\n"               \
243         "wd      - print current status\n"              \
244 ),
245
246 extern int do_wd (cmd_tbl_t *, int, int, char *[]);
247
248 #else
249 #define CMD_TBL_BSP
250 #endif  /* CONFIG_WATCHDOG */
251
252 #endif  /* CONFIG_PCIPPC2 , CONFIG_PCIPPC6 */
253 /* -------------------------------------------------------------------- */
254
255 /* ----- PN62 --------------------------------------------------------- */
256 #if defined(CONFIG_PN62)
257
258 #define CMD_TBL_BSP MK_CMD_TBL_ENTRY(                           \
259         "loadpci",      5,      2,      1,      do_loadpci,     \
260         "loadpci - load binary file over PCI\n",                \
261         "[addr]\n"                                              \
262         "    - load binary file over PCI to address 'addr'\n"   \
263 ), MK_CMD_TBL_ENTRY(                                            \
264         "led"    ,      3,      3,      1,      do_led,         \
265         "led     - set LED 0..11 on the PN62 board\n",          \
266         "i fun\n"                                               \
267         "    - set 'i'th LED to function 'fun'\n"               \
268 ),
269
270 extern int do_loadpci (cmd_tbl_t *, int, int, char *[]);
271 extern int do_led (cmd_tbl_t *, int, int, char *[]);
272 #endif /* CONFIG_PN62 */
273 /* -------------------------------------------------------------------- */
274
275 /* ----- TRAB --------------------------------------------------------- */
276 #if defined(CONFIG_TRAB)
277
278 #define CMD_TBL_BSP     MK_CMD_TBL_ENTRY(                       \
279         "kbd",  3,      1,      1,      do_kbd,                 \
280         "kbd     - read keyboard status\n",                     \
281         NULL                                                    \
282 ),
283
284 int do_kbd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
285
286 #endif  /* CONFIG_TRAB */
287 /* -------------------------------------------------------------------- */
288
289 /* ----- R360MPI ------------------------------------------------------ */
290 #if defined(CONFIG_R360MPI)
291
292 #define CMD_TBL_BSP     MK_CMD_TBL_ENTRY(                       \
293         "kbd",  3,      1,      1,      do_kbd,                 \
294         "kbd     - read keyboard status\n",                     \
295         NULL                                                    \
296 ),
297
298 int do_kbd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
299
300 #endif  /* CONFIG_R360MPI */
301 /* -------------------------------------------------------------------- */
302
303 /* ------ AMIGAONEG3SE ------------------------------------------------ */
304 #if defined(CONFIG_AMIGAONEG3SE)
305
306 #define CMD_TBL_BSP     /* dummy */
307
308 #endif  /* AmigaOneG3SE */
309 /* -------------------------------------------------------------------- */
310
311 #else
312 #define CMD_TBL_BSP
313 #endif  /* CFG_CMD_BSP */
314
315 #endif  /* _CMD_BSP_H_ */