]> git.sur5r.net Git - u-boot/commitdiff
Das U-Boot: Universal Boot Loader
authorwdenk <wdenk>
Tue, 27 Aug 2002 10:27:51 +0000 (10:27 +0000)
committerwdenk <wdenk>
Tue, 27 Aug 2002 10:27:51 +0000 (10:27 +0000)
27 files changed:
drivers/serial.c [new file with mode: 0644]
include/cmd_autoscript.h [new file with mode: 0644]
include/cmd_bedbug.h [new file with mode: 0644]
include/cmd_bootm.h [new file with mode: 0644]
include/cmd_cache.h [new file with mode: 0644]
include/cmd_console.h [new file with mode: 0644]
include/cmd_dcr.h [new file with mode: 0644]
include/cmd_doc.h [new file with mode: 0644]
include/cmd_dtt.h [new file with mode: 0644]
include/cmd_eeprom.h [new file with mode: 0644]
include/cmd_elf.h [new file with mode: 0644]
include/cmd_fdc.h [new file with mode: 0644]
include/cmd_flash.h [new file with mode: 0644]
include/cmd_i2c.h [new file with mode: 0644]
include/cmd_ide.h [new file with mode: 0644]
include/cmd_immap.h [new file with mode: 0644]
include/cmd_mem.h [new file with mode: 0644]
include/cmd_mii.h [new file with mode: 0644]
include/cmd_misc.h [new file with mode: 0644]
include/cmd_net.h [new file with mode: 0644]
include/cmd_nvedit.h [new file with mode: 0644]
include/cmd_pcmcia.h [new file with mode: 0644]
include/cmd_reginfo.h [new file with mode: 0644]
include/cmd_rtc.h [new file with mode: 0644]
include/cmd_scsi.h [new file with mode: 0644]
include/cmd_usb.h [new file with mode: 0644]
include/command.h [new file with mode: 0644]

diff --git a/drivers/serial.c b/drivers/serial.c
new file mode 100644 (file)
index 0000000..5e2115e
--- /dev/null
@@ -0,0 +1,100 @@
+/*
+ * (C) Copyright 2000
+ * Rob Taylor, Flying Pig Systems. robt@flyingpig.com.
+ *
+ * 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 <common.h>
+
+#ifdef CFG_NS16550_SERIAL
+
+#include <ns16550.h>
+#ifdef CFG_NS87308
+#include <ns87308.h>
+#endif
+
+#if CONFIG_CONS_INDEX == 1
+static NS16550_t console = (NS16550_t) CFG_NS16550_COM1;
+#elif CONFIG_CONS_INDEX == 2
+static NS16550_t console = (NS16550_t) CFG_NS16550_COM2;
+#elif CONFIG_CONS_INDEX == 3
+static NS16550_t console = (NS16550_t) CFG_NS16550_COM3;
+#elif CONFIG_CONS_INDEX == 4
+static NS16550_t console = (NS16550_t) CFG_NS16550_COM4;
+#else
+#error no valid console defined
+#endif
+
+int serial_init (void)
+{
+       DECLARE_GLOBAL_DATA_PTR;
+
+       int clock_divisor = CFG_NS16550_CLK / 16 / gd->baudrate;
+
+#ifdef CFG_NS87308
+       initialise_ns87308();
+#endif
+
+       NS16550_init(console, clock_divisor);
+
+       return (0);
+}
+
+void
+serial_putc(const char c)
+{
+       if (c == '\n')
+               NS16550_putc(console, '\r');
+
+       NS16550_putc(console, c);
+}
+
+void
+serial_puts (const char *s)
+{
+       while (*s) {
+               serial_putc (*s++);
+       }
+}
+
+
+int
+serial_getc(void)
+{
+       return NS16550_getc(console);
+}
+
+int
+serial_tstc(void)
+{
+       return NS16550_tstc(console);
+}
+
+void
+serial_setbrg (void)
+{
+       DECLARE_GLOBAL_DATA_PTR;
+
+       int clock_divisor = CFG_NS16550_CLK / 16 / gd->baudrate;
+
+       NS16550_reinit(console, clock_divisor);
+}
+
+#endif
diff --git a/include/cmd_autoscript.h b/include/cmd_autoscript.h
new file mode 100644 (file)
index 0000000..520cfc9
--- /dev/null
@@ -0,0 +1,47 @@
+/*
+ * (C) Copyright 2001
+ * Kyle Harris, kharris@nexus-tech.net
+ *
+ * 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
+ */
+
+#ifndef        _CMD_AUTOSCRIPT_H_
+#define        _CMD_AUTOSCRIPT_H_
+
+#define AUTOSCRIPT_MAGIC       0x09011962
+
+#if (CONFIG_COMMANDS & CFG_CMD_AUTOSCRIPT)
+
+#define        CMD_TBL_AUTOSCRIPT      MK_CMD_TBL_ENTRY(                                       \
+       "autoscr",      5,      2,      0,      do_autoscript,                  \
+       "autoscr - run script from memory\n",                           \
+       "[addr] - run script starting at addr. " \
+       "A valid autoscr header must be present\n" \
+),
+
+int autoscript (ulong addr);
+int do_autoscript (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+
+#define        CMD_TBL_AUTOSCRIPT
+
+#endif
+
+#endif /* _CMD_AUTOSCRIPT_H_ */
diff --git a/include/cmd_bedbug.h b/include/cmd_bedbug.h
new file mode 100644 (file)
index 0000000..105441e
--- /dev/null
@@ -0,0 +1,117 @@
+/*
+ * BedBug Functions
+ */
+#ifndef _CMD_BEDBUG_H
+#define _CMD_BEDBUG_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_BEDBUG)
+
+#define CMD_TBL_DIS     MK_CMD_TBL_ENTRY(                               \
+        "ds",           2,      3,      1,      do_bedbug_dis,          \
+        "ds      - disassemble memory\n",                               \
+        "ds <address> [# instructions]\n"                               \
+        ),
+
+#define CMD_TBL_ASM     MK_CMD_TBL_ENTRY(                               \
+        "as",           2,      2,      0,      do_bedbug_asm,          \
+        "as      - assemble memory\n",                                  \
+        "as <address>\n"                                                \
+        ),
+
+#define CMD_TBL_BREAK   MK_CMD_TBL_ENTRY(                               \
+        "break",        2,      3,      0,      do_bedbug_break,        \
+        "break   - set or clear a breakpoint\n",                        \
+        " - Set or clear a breakpoint\n"                                \
+        "break <address> - Break at an address\n"                       \
+        "break off <bp#> - Disable breakpoint.\n"                       \
+        "break show      - List breakpoints.\n"                         \
+        ),
+
+#define CMD_TBL_CONTINUE        MK_CMD_TBL_ENTRY(                       \
+        "continue",     4,      1,      0,      do_bedbug_continue,     \
+        "continue- continue from a breakpoint\n",                       \
+        " - continue from a breakpoint.\n"                              \
+        ),
+
+#define CMD_TBL_STEP        MK_CMD_TBL_ENTRY(                           \
+        "step", 4,      1,      1,      do_bedbug_step,                 \
+        "step    - single step execution.\n",                           \
+        " - single step execution.\n"                                   \
+        ),
+
+#define CMD_TBL_NEXT        MK_CMD_TBL_ENTRY(                           \
+        "next", 4,      1,      1,      do_bedbug_next,                 \
+        "next    - single step execution, stepping over subroutines.\n",\
+        " - single step execution, stepping over subroutines.\n"        \
+        ),
+
+#define CMD_TBL_STACK        MK_CMD_TBL_ENTRY(                          \
+        "where", 5,     1,      1,      do_bedbug_stack,                \
+        "where   - Print the running stack.\n",                         \
+        " - Print the running stack.\n"                                 \
+        ),
+
+#define CMD_TBL_RDUMP        MK_CMD_TBL_ENTRY(                          \
+        "rdump", 5,     1,      1,      do_bedbug_rdump,                \
+        "rdump   - Show registers.\n",                                  \
+        " - Show registers.\n"                                          \
+        ),
+
+extern int do_bedbug_dis      (cmd_tbl_t *, int, int, char *[]);
+extern int do_bedbug_asm      (cmd_tbl_t *, int, int, char *[]);
+extern int do_bedbug_break    (cmd_tbl_t *, int, int, char *[]);
+extern int do_bedbug_continue (cmd_tbl_t *, int, int, char *[]);
+extern int do_bedbug_step     (cmd_tbl_t *, int, int, char *[]);
+extern int do_bedbug_next     (cmd_tbl_t *, int, int, char *[]);
+extern int do_bedbug_stack    (cmd_tbl_t *, int, int, char *[]);
+extern int do_bedbug_rdump    (cmd_tbl_t *, int, int, char *[]);
+
+/* Supporting routines */
+extern int bedbug_puts (const char *);
+extern void bedbug_init (void);
+extern void do_bedbug_breakpoint (struct pt_regs *);
+extern void bedbug_main_loop (unsigned long, struct pt_regs *);
+
+
+typedef struct {
+       int hw_debug_enabled;
+       int stopped;
+       int current_bp;
+       struct pt_regs *regs;
+
+       void (*do_break) (cmd_tbl_t *, int, int, char *[]);
+       void (*break_isr) (struct pt_regs *);
+       int (*find_empty) (void);
+       int (*set) (int, unsigned long);
+       int (*clear) (int);
+} CPU_DEBUG_CTX;
+
+#else /* ! CFG_CMD_BEDBUG */
+
+#define CMD_TBL_DIS
+#define CMD_TBL_ASM
+#define CMD_TBL_BREAK
+#define CMD_TBL_CONTINUE
+#define CMD_TBL_STEP
+#define CMD_TBL_NEXT
+#define CMD_TBL_STACK
+#define CMD_TBL_RDUMP
+
+#endif /* CFG_CMD_BEDBUG */
+#endif /* _CMD_BEDBUG_H */
+
+
+/*
+ * Copyright (c) 2001 William L. Pitts
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms are freely
+ * permitted provided that the above copyright notice and this
+ * paragraph and the following disclaimer are duplicated in all
+ * such forms.
+ *
+ * This software is provided "AS IS" and without any express or
+ * implied warranties, including, without limitation, the implied
+ * warranties of merchantability and fitness for a particular
+ * purpose.
+ */
diff --git a/include/cmd_bootm.h b/include/cmd_bootm.h
new file mode 100644 (file)
index 0000000..20c1267
--- /dev/null
@@ -0,0 +1,65 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * Boot support
+ */
+#ifndef        _CMD_BOOTM_H
+#define        _CMD_BOOTM_H
+int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#define        CMD_TBL_BOOTM   MK_CMD_TBL_ENTRY(                                       \
+       "bootm",        5,      CFG_MAXARGS,    1,      do_bootm,               \
+       "bootm   - boot application image from memory\n",                       \
+       "[addr [arg ...]]\n    - boot application image stored in memory\n"     \
+       "        passing arguments 'arg ...'; when booting a Linux kernel,\n"   \
+       "        'arg' can be the address of an initrd image\n"                 \
+),
+
+#if (CONFIG_COMMANDS & CFG_CMD_BOOTD)
+int do_bootd (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#define CMD_TBL_BOOTD  MK_CMD_TBL_ENTRY(                                       \
+       "bootd",        4,      1,      1,      do_bootd,                       \
+       "bootd   - boot default, i.e., run 'bootcmd'\n",                        \
+       NULL                                                                    \
+),
+#else
+#define CMD_TBL_BOOTD
+#endif
+
+#if (CONFIG_COMMANDS & CFG_CMD_IMI)
+int do_iminfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#define        CMD_TBL_IMINFO  MK_CMD_TBL_ENTRY(                                       \
+       "iminfo",       3,      CFG_MAXARGS,    1,      do_iminfo,              \
+       "iminfo  - print header information for application image\n",           \
+       "addr [addr ...]\n"                                                     \
+       "    - print header information for application image starting at\n"    \
+       "      address 'addr' in memory; this includes verification of the\n"   \
+       "      image contents (magic number, header and payload checksums)\n"   \
+),
+#else
+#define CMD_TBL_IMINFO
+#endif
+
+#endif /* _CMD_BOOTM_H */
diff --git a/include/cmd_cache.h b/include/cmd_cache.h
new file mode 100644 (file)
index 0000000..479a846
--- /dev/null
@@ -0,0 +1,51 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * Cache support: switch on or off, get status
+ */
+#ifndef        _CMD_CACHE_H
+#define        _CMD_CACHE_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_CACHE)
+#define        CMD_TBL_ICACHE  MK_CMD_TBL_ENTRY(                                       \
+       "icache",       2,      2,      1,      do_icache,                      \
+       "icache  - enable or disable instruction cache\n",                      \
+       "[on, off]\n"                                                           \
+       "    - enable or disable instruction cache\n"                           \
+),
+
+#define CMD_TBL_DCACHE MK_CMD_TBL_ENTRY(                                       \
+       "dcache",       2,      2,      1,      do_dcache,                      \
+       "dcache  - enable or disable data cache\n",                             \
+       "[on, off]\n"                                                           \
+       "    - enable or disable data (writethrough) cache\n"                   \
+),
+int do_icache (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_dcache (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#else
+#define CMD_TBL_ICACHE
+#define CMD_TBL_DCACHE
+#endif /* CFG_CMD_CACHE */
+
+#endif /* _CMD_CACHE_H */
diff --git a/include/cmd_console.h b/include/cmd_console.h
new file mode 100644 (file)
index 0000000..4ac8b83
--- /dev/null
@@ -0,0 +1,42 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * Network boot support
+ */
+#ifndef        _CMD_CONSOLE_H
+#define        _CMD_CONSOLE_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_CONSOLE)
+#define        CMD_TBL_CONINFO MK_CMD_TBL_ENTRY(                       \
+       "coninfo",      5,      3,      1,      do_coninfo,     \
+       "coninfo - print console devices and informations\n",   \
+       ""                                                      \
+),
+int do_coninfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+#define        CMD_TBL_CONINFO
+#endif /* CFG_CMD_CONSOLE */
+
+#endif
diff --git a/include/cmd_dcr.h b/include/cmd_dcr.h
new file mode 100644 (file)
index 0000000..97196ad
--- /dev/null
@@ -0,0 +1,55 @@
+/*
+ * (C) Copyright 2001
+ * Erik Theisen,  Wave 7 Optics, etheisen@mindspring.com.
+ *
+ * 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
+ */
+
+/*
+ * IBM 4XX DCR Functions
+ */
+#ifndef _CMD_DCR_H
+#define _CMD_DCR_H
+
+#if defined(CONFIG_4xx) && defined(CFG_CMD_SETGETDCR)
+#define CMD_TBL_GETDCR MK_CMD_TBL_ENTRY(                               \
+       "getdcr",       6,      2,      1,      do_getdcr,              \
+       "getdcr  - Get an IBM PPC 4xx DCR's value\n",                   \
+       "dcrn - return a DCR's value.\n"                                \
+),
+#define CMD_TBL_SETDCR MK_CMD_TBL_ENTRY(                               \
+       "setdcr",       6,      2,      1,      do_setdcr,              \
+       "setdcr  - Set an IBM PPC 4xx DCR's value\n",                   \
+       "dcrn - set a DCR's value.\n"                                   \
+),
+extern int do_getdcr (cmd_tbl_t *, int, int, char *[]);
+extern int do_setdcr (cmd_tbl_t *, int, int, char *[]);
+
+/* Supporting routines */
+extern unsigned long get_dcr(unsigned short dcrn);
+extern unsigned long set_dcr(unsigned short dcrn, unsigned long value);
+
+#else
+
+#define CMD_TBL_GETDCR
+#define CMD_TBL_SETDCR
+
+#endif /* CONFIG_4xx & CFG_CMD_SETGETDCR */
+
+#endif /* _CMD_DCR_H */
diff --git a/include/cmd_doc.h b/include/cmd_doc.h
new file mode 100644 (file)
index 0000000..07aa864
--- /dev/null
@@ -0,0 +1,55 @@
+/*
+ * 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
+ */
+
+/*
+ * Disk-On-Chip support
+ */
+#ifndef        _CMD_DOC_H
+#define        _CMD_DOC_H
+
+#include <common.h>
+#include <command.h>
+
+
+#if (CONFIG_COMMANDS & CFG_CMD_DOC)
+#define        CMD_TBL_DOC     MK_CMD_TBL_ENTRY(                                       \
+       "doc",  3,      5,      1,      do_doc,                                 \
+       "doc     - Disk-On-Chip sub-system\n",                                  \
+       "info  - show available DOC devices\n"                                  \
+       "doc device [dev] - show or set current device\n"                       \
+       "doc read  addr off size\n"                                             \
+       "doc write addr off size - read/write `size'"                           \
+       " bytes starting at offset `off'\n"                                     \
+       "    to/from memory address `addr'\n"                                   \
+       "doc erase off size - erase `size' bytes of DOC from offset `off'\n"    \
+),
+
+#define CMD_TBL_DOCBOOT        MK_CMD_TBL_ENTRY(                                       \
+       "docboot", 4,   4,      1,      do_docboot,                             \
+       "docboot - boot from DOC device\n",                                     \
+       "loadAddr dev\n"                                                        \
+),
+
+int do_doc (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_docboot (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+#define CMD_TBL_DOC
+#define CMD_TBL_DOCBOOT
+#endif
+
+#endif /* _CMD_DOC_H */
diff --git a/include/cmd_dtt.h b/include/cmd_dtt.h
new file mode 100644 (file)
index 0000000..57192a3
--- /dev/null
@@ -0,0 +1,46 @@
+/*
+ * (C) Copyright 2001
+ * Erik Theisen,  Wave 7 Optics, etheisen@mindspring.com.
+ *
+ * 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
+ */
+
+/*
+ * Read Digital Thermometers & Thermostats
+ */
+#ifndef _CMD_DTT_H
+#define _CMD_DTT_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_DTT)
+
+#define CMD_TBL_DTT MK_CMD_TBL_ENTRY(                          \
+         "dtt",        3,      1,      1,      do_dtt,         \
+         "dtt     - Digital Thermometer and Themostat\n",      \
+         "        - Read temperature from digital thermometer and thermostat.\n" \
+),
+extern int do_dtt (cmd_tbl_t *, int, int, char *[]);
+
+#else
+
+#define CMD_TBL_DTT
+
+#endif /* (CONFIG_COMMANDS & CFG_CMD_DTT) */
+
+#endif /* _CMD_DTT_H */
+
diff --git a/include/cmd_eeprom.h b/include/cmd_eeprom.h
new file mode 100644 (file)
index 0000000..26d929d
--- /dev/null
@@ -0,0 +1,59 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * EEPROM support
+ */
+#ifndef        _CMD_EEPROM_H
+#define        _CMD_EEPROM_H
+
+#include <common.h>
+#include <command.h>
+
+#if (CONFIG_COMMANDS & CFG_CMD_EEPROM)
+
+#ifdef CFG_I2C_MULTI_EEPROMS
+#define        CMD_TBL_EEPROM  MK_CMD_TBL_ENTRY(   \
+       "eeprom",       3,      6,      1,      do_eeprom,                      \
+       "eeprom  - EEPROM sub-system\n",                                        \
+       "read  devaddr addr off cnt\n"                                          \
+       "eeprom write devaddr addr off cnt\n"                                   \
+       "       - read/write `cnt' bytes from `devaddr` EEPROM at offset `off'\n" \
+),
+#else /* One EEPROM */
+#define        CMD_TBL_EEPROM  MK_CMD_TBL_ENTRY(                                       \
+       "eeprom",       3,      5,      1,      do_eeprom,                      \
+       "eeprom  - EEPROM sub-system\n",                                        \
+       "read  addr off cnt\n"                                                  \
+       "eeprom write addr off cnt\n"                                           \
+       "       - read/write `cnt' bytes at EEPROM offset `off'\n"              \
+),
+#endif /* CFG_I2C_MULTI_EEPROMS */
+int do_eeprom (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#else
+
+#define CMD_TBL_EEPROM
+
+#endif /* CFG_CMD_EEPROM */
+
+#endif /* _CMD_EEPROM_H */
diff --git a/include/cmd_elf.h b/include/cmd_elf.h
new file mode 100644 (file)
index 0000000..64c52bc
--- /dev/null
@@ -0,0 +1,34 @@
+/*
+ * Elf Load/Boot Functions
+ */
+#ifndef        _CMD_ELF_H
+#define _CMD_ELF_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_ELF)
+
+#define CMD_TBL_BOOTELF MK_CMD_TBL_ENTRY(                               \
+        "bootelf",      7,      2,      0,      do_bootelf,             \
+        "bootelf - Boot from an ELF image in memory\n",                 \
+        " [address] - load address of ELF image.\n"                     \
+        ),
+
+#define CMD_TBL_BOOTVX  MK_CMD_TBL_ENTRY(                               \
+        "bootvx",       6,      2,      0,      do_bootvx,              \
+        "bootvx  - Boot vxWorks from an ELF image\n",                   \
+        " [address] - load address of vxWorks ELF image.\n"             \
+        ),
+
+extern int do_bootelf (cmd_tbl_t *, int, int, char *[]);
+extern int do_bootvx (cmd_tbl_t *, int, int, char *[]);
+
+/* Supporting routines */
+extern int           valid_elf_image (unsigned long);
+extern unsigned long load_elf_image (unsigned long);
+
+#else  /* ! CFG_CMD_ELF */
+
+#define CMD_TBL_BOOTELF
+#define CMD_TBL_BOOTVX
+
+#endif /* CFG_CMD_ELF */
+#endif /* _CMD_ELF_H */
diff --git a/include/cmd_fdc.h b/include/cmd_fdc.h
new file mode 100644 (file)
index 0000000..f51df1f
--- /dev/null
@@ -0,0 +1,47 @@
+/*
+ * (C) Copyright 2001
+ * Denis Peter, MPL AG, d.peter@mpl.ch
+ *
+ * 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
+ */
+
+/*
+ * Floppy support
+ */
+#ifndef        _CMD_FDC_H
+#define        _CMD_FDC_H
+
+#include <common.h>
+#include <command.h>
+
+
+#if (CONFIG_COMMANDS & CFG_CMD_FDC)
+
+#define CMD_TBL_FDC    MK_CMD_TBL_ENTRY(                                       \
+       "fdcboot", 4,   3,      1,      do_fdcboot,                             \
+       "fdcboot - boot from floppy device\n",                                  \
+       "loadAddr drive\n"                                                      \
+),
+int do_fdcboot (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+#define CMD_TBL_FDC
+#endif
+
+#endif /* _CMD_FDC_H */
diff --git a/include/cmd_flash.h b/include/cmd_flash.h
new file mode 100644 (file)
index 0000000..6f5c6cd
--- /dev/null
@@ -0,0 +1,73 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * FLASH support
+ */
+#ifndef        _CMD_FLASH_H
+#define        _CMD_FLASH_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_FLASH)
+#define        CMD_TBL_FLINFO  MK_CMD_TBL_ENTRY(                                       \
+       "flinfo",       3,      2,      1,      do_flinfo,                      \
+       "flinfo  - print FLASH memory information\n",                           \
+       "\n    - print information for all FLASH memory banks\n"                \
+       "flinfo N\n    - print information for FLASH memory bank # N\n"         \
+),
+
+#define        CMD_TBL_FLERASE MK_CMD_TBL_ENTRY(                                       \
+       "erase",        3,      3,      1,      do_flerase,                     \
+       "erase   - erase FLASH memory\n",                                       \
+       "start end\n"                                                           \
+       "    - erase FLASH from addr 'start' to addr 'end'\n"                   \
+       "erase N:SF[-SL]\n    - erase sectors SF-SL in FLASH bank # N\n"        \
+       "erase bank N\n    - erase FLASH bank # N\n"                            \
+       "erase all\n    - erase all FLASH banks\n"                              \
+),
+
+#define        CMD_TBL_PROTECT MK_CMD_TBL_ENTRY(                                       \
+       "protect",      4,      4,      1,      do_protect,                     \
+       "protect - enable or disable FLASH write protection\n",                 \
+       "on  start end\n"                                                       \
+       "    - protect FLASH from addr 'start' to addr 'end'\n"                 \
+       "protect on  N:SF[-SL]\n"                                               \
+       "    - protect sectors SF-SL in FLASH bank # N\n"                       \
+       "protect on  bank N\n    - protect FLASH bank # N\n"                    \
+       "protect on  all\n    - protect all FLASH banks\n"                      \
+       "protect off start end\n"                                               \
+       "    - make FLASH from addr 'start' to addr 'end' writable\n"           \
+       "protect off N:SF[-SL]\n"                                               \
+       "    - make sectors SF-SL writable in FLASH bank # N\n"                 \
+       "protect off bank N\n    - make FLASH bank # N writable\n"              \
+       "protect off all\n    - make all FLASH banks writable\n"                \
+),
+int do_flinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_flerase(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_protect(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#else
+#define CMD_TBL_FLINFO
+#define CMD_TBL_FLERASE
+#define CMD_TBL_PROTECT
+#endif /* CFG_CMD_FLASH */
+
+#endif /* _CMD_FLASH_H */
diff --git a/include/cmd_i2c.h b/include/cmd_i2c.h
new file mode 100644 (file)
index 0000000..7334fd4
--- /dev/null
@@ -0,0 +1,103 @@
+/*
+ * (C) Copyright 2001
+ * Gerald Van Baren, Custom IDEAS, vanbaren@cideas.com.
+ *
+ * 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
+ */
+
+/*
+ * I2C Functions
+ */
+#ifndef        _CMD_I2C_H
+#define _CMD_I2C_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_I2C)
+#define CMD_TBL_IMD    MK_CMD_TBL_ENTRY(                               \
+       "imd",          3,      4,      1,      do_i2c_md,              \
+       "imd     - i2c memory display\n",                               \
+       "chip address[.0, .1, .2] [# of objects]\n    - i2c memory display\n" \
+),
+#define CMD_TBL_IMM    MK_CMD_TBL_ENTRY(                               \
+       "imm",          3,      3,      1,      do_i2c_mm,              \
+       "imm     - i2c memory modify (auto-incrementing)\n",            \
+       "chip address[.0, .1, .2]\n"                                    \
+       "    - memory modify, auto increment address\n"                 \
+),
+#define CMD_TBL_INM    MK_CMD_TBL_ENTRY(                               \
+       "inm",          3,      3,      1,      do_i2c_nm,              \
+       "inm     - memory modify (constant address)\n",                 \
+       "chip address[.0, .1, .2]\n    - memory modify, read and keep address\n" \
+),
+#define CMD_TBL_IMW    MK_CMD_TBL_ENTRY(                               \
+       "imw",          3,      5,      1,      do_i2c_mw,              \
+       "imw     - memory write (fill)\n",                              \
+       "chip address[.0, .1, .2] value [count]\n    - memory write (fill)\n" \
+),
+#define        CMD_TBL_ICRC    MK_CMD_TBL_ENTRY(                               \
+       "icrc32",       4,      5,      1,      do_i2c_crc,             \
+       "icrc32  - checksum calculation\n",                             \
+       "chip address[.0, .1, .2] count\n    - compute CRC32 checksum\n" \
+),
+#define CMD_TBL_IPROBE MK_CMD_TBL_ENTRY(                               \
+       "iprobe",       3,      1,      1,      do_i2c_probe,           \
+       "iprobe  - probe to discover valid I2C chip addresses\n",       \
+       "\n    -discover valid I2C chip addresses\n"                    \
+),
+/*
+ * Require full name for "iloop" because it is an infinite loop!
+ */
+#define CMD_TBL_ILOOP  MK_CMD_TBL_ENTRY(                               \
+       "iloop",        5,      5,      1,      do_i2c_loop,            \
+       "iloop   - infinite loop on address range\n",                   \
+       "chip address[.0, .1, .2] [# of objects]\n"                     \
+       "    - loop, reading a set of addresses\n"                      \
+),
+#if (CONFIG_COMMANDS & CFG_CMD_SDRAM)
+#define CMD_TBL_ISDRAM MK_CMD_TBL_ENTRY(                               \
+       "isdram",       6,      2,      1,      do_sdram,               \
+       "isdram  - print SDRAM configuration information\n",            \
+       "chip\n    - print SDRAM configuration information\n"           \
+       "      (valid chip values 50..57)\n"                            \
+),
+#else
+#define CMD_TBL_ISDRAM
+#endif
+
+
+int do_i2c_md(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_i2c_mm(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_i2c_nm(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_i2c_mw(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_i2c_crc(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_i2c_probe(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_i2c_loop(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_sdram(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+#define CMD_TBL_IMD
+#define CMD_TBL_IMM
+#define CMD_TBL_INM
+#define CMD_TBL_IMW
+#define CMD_TBL_ICRC
+#define CMD_TBL_IPROBE
+#define CMD_TBL_ILOOP
+#define CMD_TBL_ISDRAM
+#endif /* CFG_CMD_MEMORY */
+
+#endif /* _CMD_I2C_H */
diff --git a/include/cmd_ide.h b/include/cmd_ide.h
new file mode 100644 (file)
index 0000000..0433c20
--- /dev/null
@@ -0,0 +1,62 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * IDE support
+ */
+#ifndef        _CMD_IDE_H
+#define        _CMD_IDE_H
+
+#include <common.h>
+#include <command.h>
+
+
+#if (CONFIG_COMMANDS & CFG_CMD_IDE)
+#define        CMD_TBL_IDE     MK_CMD_TBL_ENTRY(                                       \
+       "ide",  3,      5,      1,      do_ide,                                 \
+       "ide     - IDE sub-system\n",                                           \
+       "reset - reset IDE controller\n"                                        \
+       "ide info  - show available IDE devices\n"                              \
+       "ide device [dev] - show or set current device\n"                       \
+       "ide part [dev] - print partition table of one or all IDE devices\n"    \
+       "ide read  addr blk# cnt\n"                                             \
+       "ide write addr blk# cnt - read/write `cnt'"                            \
+       " blocks starting at block `blk#'\n"                                    \
+       "    to/from memory address `addr'\n"                                   \
+),
+
+#define CMD_TBL_DISK   MK_CMD_TBL_ENTRY(                                       \
+       "diskboot", 4,  3,      1,      do_diskboot,                            \
+       "diskboot- boot from IDE device\n",                                     \
+       "loadAddr dev:part\n"                                                   \
+),
+
+int do_ide (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_diskboot (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+#define CMD_TBL_IDE
+#define CMD_TBL_DISK
+#endif
+
+#endif /* _CMD_IDE_H */
diff --git a/include/cmd_immap.h b/include/cmd_immap.h
new file mode 100644 (file)
index 0000000..9febee2
--- /dev/null
@@ -0,0 +1,181 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * PowerPC 8xx/8260 Internal Memory Map commands
+ */
+#ifndef        _CMD_IMMAP_H
+#define        _CMD_IMMAP_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_IMMAP) && \
+    (defined(CONFIG_8xx) || defined(CONFIG_8260))
+
+#define        CMD_TBL_SIUINFO         MK_CMD_TBL_ENTRY(                       \
+       "siuinfo",      3,      1,      1,      do_siuinfo,             \
+       "siuinfo - print System Interface Unit (SIU) registers\n",      \
+       NULL                                                            \
+),
+
+#define CMD_TBL_MEMCINFO       MK_CMD_TBL_ENTRY(                       \
+       "memcinfo",     4,      1,      1,      do_memcinfo,            \
+       "memcinfo- print Memory Controller registers\n",                \
+       NULL                                                            \
+),
+
+#define CMD_TBL_SITINFO                MK_CMD_TBL_ENTRY(                       \
+       "sitinfo",      3,      1,      1,      do_sitinfo,             \
+       "sitinfo - print System Integration Timers (SIT) registers\n",  \
+       NULL                                                            \
+),
+
+#ifdef CONFIG_8260
+#define        CMD_TBL_ICINFO          MK_CMD_TBL_ENTRY(                       \
+       "icinfo",       3,      1,      1,      do_icinfo,              \
+       "icinfo  - print Interrupt Controller registers\n",             \
+       NULL                                                            \
+),
+#endif
+
+#define        CMD_TBL_CARINFO         MK_CMD_TBL_ENTRY(                       \
+       "carinfo",      3,      1,      1,      do_carinfo,             \
+       "carinfo - print Clocks and Reset registers\n",                 \
+       NULL                                                            \
+),
+
+#define        CMD_TBL_IOPINFO         MK_CMD_TBL_ENTRY(                       \
+       "iopinfo",      4,      1,      1,      do_iopinfo,             \
+       "iopinfo - print I/O Port registers\n",                         \
+       NULL                                                            \
+),
+
+#define        CMD_TBL_IOPSET          MK_CMD_TBL_ENTRY(                       \
+       "iopset",       4,      5,      0,      do_iopset,              \
+       "iopset - set I/O Port registers\n",                            \
+       "PORT PIN CMD VALUE\nPORT: A-D, PIN: 0-31, CMD: [dat|dir|odr|sor], VALUE: 0|1" \
+),
+
+#define        CMD_TBL_DMAINFO         MK_CMD_TBL_ENTRY(                       \
+       "dmainfo",      3,      1,      1,      do_dmainfo,             \
+       "dmainfo - print SDMA/IDMA registers\n",                        \
+       NULL                                                            \
+),
+
+#define        CMD_TBL_FCCINFO         MK_CMD_TBL_ENTRY(                       \
+       "fccinfo",      3,      1,      1,      do_fccinfo,             \
+       "fccinfo - print FCC registers\n",                              \
+       NULL                                                            \
+),
+
+#define        CMD_TBL_BRGINFO         MK_CMD_TBL_ENTRY(                       \
+       "brginfo",      3,      1,      1,      do_brginfo,             \
+       "brginfo - print Baud Rate Generator (BRG) registers\n",        \
+       NULL                                                            \
+),
+
+#define        CMD_TBL_I2CINFO         MK_CMD_TBL_ENTRY(                       \
+       "i2cinfo",      4,      1,      1,      do_i2cinfo,             \
+       "i2cinfo - print I2C registers\n",                              \
+       NULL                                                            \
+),
+
+#define        CMD_TBL_SCCINFO         MK_CMD_TBL_ENTRY(                       \
+       "sccinfo",      3,      1,      1,      do_sccinfo,             \
+       "sccinfo - print SCC registers\n",                              \
+       NULL                                                            \
+),
+
+#define        CMD_TBL_SMCINFO         MK_CMD_TBL_ENTRY(                       \
+       "smcinfo",      3,      1,      1,      do_smcinfo,             \
+       "smcinfo - print SMC registers\n",                              \
+       NULL                                                            \
+),
+
+#define        CMD_TBL_SPIINFO         MK_CMD_TBL_ENTRY(                       \
+       "spiinfo",      3,      1,      1,      do_spiinfo,             \
+       "spiinfo - print Serial Peripheral Interface (SPI) registers\n",\
+       NULL                                                            \
+),
+
+#define        CMD_TBL_MUXINFO         MK_CMD_TBL_ENTRY(                       \
+       "muxinfo",      3,      1,      1,      do_muxinfo,             \
+       "muxinfo - print CPM Multiplexing registers\n",                 \
+       NULL                                                            \
+),
+
+#define        CMD_TBL_SIINFO          MK_CMD_TBL_ENTRY(                       \
+       "siinfo",       3,      1,      1,      do_siinfo,              \
+       "siinfo  - print Serial Interface (SI) registers\n",            \
+       NULL                                                            \
+),
+
+#define        CMD_TBL_MCCINFO         MK_CMD_TBL_ENTRY(                       \
+       "mccinfo",      3,      1,      1,      do_mccinfo,             \
+       "mccinfo - print MCC registers\n",                              \
+       NULL                                                            \
+),
+
+int do_siuinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_memcinfo(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_sitinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#ifdef CONFIG_8260
+int do_icinfo  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#endif
+int do_carinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_iopinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_iopset  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_dmainfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_fccinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_brginfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_i2cinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_sccinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_smcinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_spiinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_muxinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_siinfo  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mccinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+
+#define CMD_TBL_SIUINFO
+#define CMD_TBL_MEMCINFO
+#define CMD_TBL_SITINFO
+#ifdef CONFIG_8260
+#define        CMD_TBL_ICINFO
+#endif
+#define        CMD_TBL_CARINFO
+#define        CMD_TBL_IOPINFO
+#define        CMD_TBL_IOPSET
+#define        CMD_TBL_DMAINFO
+#define        CMD_TBL_FCCINFO
+#define        CMD_TBL_BRGINFO
+#define        CMD_TBL_I2CINFO
+#define        CMD_TBL_SCCINFO
+#define        CMD_TBL_SMCINFO
+#define        CMD_TBL_SPIINFO
+#define        CMD_TBL_MUXINFO
+#define        CMD_TBL_SIINFO
+#define        CMD_TBL_MCCINFO
+
+#endif /* CFG_CMD_IMMAP && (CONFIG_8xx || CONFIG_8260) */
+
+#endif /* _CMD_IMMAP_H */
diff --git a/include/cmd_mem.h b/include/cmd_mem.h
new file mode 100644 (file)
index 0000000..aa0c540
--- /dev/null
@@ -0,0 +1,112 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * Memory Functions
+ */
+#ifndef        _CMD_MEM_H
+#define _CMD_MEM_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_MEMORY)
+#define CMD_TBL_MD     MK_CMD_TBL_ENTRY(                                       \
+       "md",           2,      3,      1,      do_mem_md,                      \
+       "md      - memory display\n",                                           \
+       "[.b, .w, .l] address [# of objects]\n    - memory display\n"           \
+),
+#define CMD_TBL_MM     MK_CMD_TBL_ENTRY(                                       \
+       "mm",           2,      2,      1,      do_mem_mm,                      \
+       "mm      - memory modify (auto-incrementing)\n",                        \
+       "[.b, .w, .l] address\n"                                                \
+       "    - memory modify, auto increment address\n"                         \
+),
+#define CMD_TBL_NM     MK_CMD_TBL_ENTRY(                                       \
+       "nm",           2,      2,      1,      do_mem_nm,                      \
+       "nm      - memory modify (constant address)\n",                         \
+       "[.b, .w, .l] address\n    - memory modify, read and keep address\n"    \
+),
+#define CMD_TBL_MW     MK_CMD_TBL_ENTRY(                                       \
+       "mw",           2,      4,      1,      do_mem_mw,                      \
+       "mw      - memory write (fill)\n",                                      \
+       "[.b, .w, .l] address value [count]\n    - write memory\n"              \
+),
+#define        CMD_TBL_CP      MK_CMD_TBL_ENTRY(                                       \
+       "cp",           2,      4,      1,      do_mem_cp,                      \
+       "cp      - memory copy\n",                                              \
+       "[.b, .w, .l] source target count\n    - copy memory\n"                 \
+),
+#define        CMD_TBL_CMP     MK_CMD_TBL_ENTRY(                                       \
+       "cmp",          3,      4,      1,      do_mem_cmp,                     \
+       "cmp     - memory compare\n",                                           \
+       "[.b, .w, .l] addr1 addr2 count\n    - compare memory\n"                \
+),
+#define        CMD_TBL_CRC     MK_CMD_TBL_ENTRY(                                       \
+       "crc32",        3,      4,      1,      do_mem_crc,                     \
+       "crc32   - checksum calculation\n",                                     \
+       "address count [addr]\n    - compute CRC32 checksum [save at addr]\n"   \
+),
+#define CMD_TBL_BASE   MK_CMD_TBL_ENTRY(                                       \
+       "base",         2,      2,      1,      do_mem_base,                    \
+       "base    - print or set address offset\n",                              \
+       "\n    - print address offset for memory commands\n"                    \
+       "base off\n    - set address offset for memory commands to 'off'\n"     \
+),
+/*
+ * Require full name for "loop" and "mtest" because these are infinite loops!
+ */
+#define CMD_TBL_LOOP   MK_CMD_TBL_ENTRY(                                       \
+       "loop",         4,      3,      1,      do_mem_loop,                    \
+       "loop    - infinite loop on address range\n",                           \
+       "[.b, .w, .l] address number_of_objects\n"                              \
+       "    - loop on a set of addresses\n"                                    \
+),
+#define CMD_TBL_MTEST  MK_CMD_TBL_ENTRY(                                       \
+       "mtest",        5,      4,      1,      do_mem_mtest,                   \
+       "mtest   - simple RAM test\n",                                          \
+       "[start [end [pattern]]]\n"                                             \
+       "    - simple RAM read/write test\n"                                    \
+),
+int do_mem_md    (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_mm    (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_nm    (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_mw    (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_cp    (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_cmp   (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_crc   (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_base  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_loop  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_mem_mtest (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+#define CMD_TBL_MD
+#define CMD_TBL_MM
+#define CMD_TBL_NM
+#define CMD_TBL_MW
+#define CMD_TBL_CP
+#define CMD_TBL_CMP
+#define CMD_TBL_CRC
+#define CMD_TBL_BASE
+#define CMD_TBL_LOOP
+#define CMD_TBL_MTEST
+#endif /* CFG_CMD_MEMORY */
+
+#endif /* _CMD_MEM_H */
diff --git a/include/cmd_mii.h b/include/cmd_mii.h
new file mode 100644 (file)
index 0000000..7ded0cc
--- /dev/null
@@ -0,0 +1,46 @@
+/*
+ * (C) Copyright 2001
+ * Gerald Van Baren, Custom IDEAS, vanbaren@cideas.com
+ *
+ * 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
+ */
+
+/*
+ * MII Functions
+ */
+#ifndef        _CMD_MII_H
+#define _CMD_MII_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_MII)
+#define CMD_TBL_MII    MK_CMD_TBL_ENTRY(                               \
+       "mii",          3,      5,      1,      do_mii,                 \
+       "mii     - MII utility commands\n",                             \
+       "\
+info  <addr>              - display MII PHY info\n\
+mii read  <addr> <reg>        - read  MII PHY <addr> register <reg>\n\
+mii write <addr> <reg> <data> - write MII PHY <addr> register <reg>\n" \
+),
+
+int do_mii       (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+#define CMD_TBL_MII
+#endif /* CFG_CMD_MII */
+
+#endif /* _CMD_MII_H */
diff --git a/include/cmd_misc.h b/include/cmd_misc.h
new file mode 100644 (file)
index 0000000..873f5c4
--- /dev/null
@@ -0,0 +1,58 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * Miscellanious commands
+ */
+#ifndef        _CMD_MISC_H
+#define        _CMD_MISC_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_IRQ)
+#define CMD_TBL_IRQINFO        MK_CMD_TBL_ENTRY(                                       \
+       "irqinfo",      3,      1,      1,      do_irqinfo,                     \
+       "irqinfo - print information about IRQs\n",                             \
+       NULL                                                                    \
+),
+
+/* Implemented in $(CPU)/interrupts.c */
+int do_irqinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+#define CMD_TBL_IRQINFO
+#endif  /* CONFIG_COMMANDS & CFG_CMD_IRQ */
+
+#if (CONFIG_COMMANDS & CFG_CMD_MISC)
+#define        CMD_TBL_MISC    MK_CMD_TBL_ENTRY(                                       \
+       "sleep",        5,      2,      2,      do_sleep,                       \
+       "sleep   - delay execution for some time\n",                            \
+       "N\n"                                                                   \
+       "    - delay execution for N seconds (N is _decimal_ !!!)\n"            \
+),
+
+/* Implemented in common/cmd_misc.c */
+int do_sleep (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#else
+#define CMD_TBL_MISC
+#endif /* CFG_CMD_MISC */
+
+#endif /* _CMD_MISC_H */
diff --git a/include/cmd_net.h b/include/cmd_net.h
new file mode 100644 (file)
index 0000000..2fa848b
--- /dev/null
@@ -0,0 +1,74 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * Network boot support
+ */
+#ifndef        _CMD_NET_H
+#define        _CMD_NET_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_NET)
+#define        CMD_TBL_BOOTP   MK_CMD_TBL_ENTRY(                                       \
+       "bootp",        5,      3,      1,      do_bootp,                       \
+       "bootp   - boot image via network using BootP/TFTP protocol\n",         \
+       "[loadAddress] [bootfilename]\n"                                        \
+),
+int do_bootp (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#define        CMD_TBL_TFTPB   MK_CMD_TBL_ENTRY(                                       \
+       "tftpboot",     4,      3,      1,      do_tftpb,                       \
+       "tftpboot- boot image via network using TFTP protocol\n"                \
+       "               and env variables ipaddr and serverip\n",               \
+       "[loadAddress] [bootfilename]\n"                                        \
+),
+
+int do_tftpb (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+
+#define        CMD_TBL_RARPB   MK_CMD_TBL_ENTRY(                                       \
+       "rarpboot",     4,      3,      1,      do_rarpb,                       \
+       "rarpboot- boot image via network using RARP/TFTP protocol\n",          \
+       "[loadAddress] [bootfilename]\n"                                        \
+),
+
+int do_rarpb (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#if (CONFIG_COMMANDS & CFG_CMD_DHCP)
+#define        CMD_TBL_DHCP    MK_CMD_TBL_ENTRY(                                       \
+       "dhcp",         4,      3,      1,      do_dhcp,                        \
+       "dhcp    - invoke DHCP client to obtain IP/boot params\n",              \
+       "\n"                                                                    \
+),
+
+int do_dhcp (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#else
+#define CMD_TBL_DHCP
+#endif /* CFG_CMD_DHCP */
+
+#else
+#define CMD_TBL_BOOTP
+#define CMD_TBL_TFTPB
+#define CMD_TBL_RARPB
+#define CMD_TBL_DHCP
+#endif /* CFG_CMD_NET */
+
+#endif
diff --git a/include/cmd_nvedit.h b/include/cmd_nvedit.h
new file mode 100644 (file)
index 0000000..345127d
--- /dev/null
@@ -0,0 +1,91 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * Boot support
+ */
+#ifndef        _CMD_NVEDIT_H
+#define        _CMD_NVEDIT_H
+
+#define        CMD_TBL_PRINTENV        MK_CMD_TBL_ENTRY(                               \
+       "printenv",     4,      CFG_MAXARGS,    1,      do_printenv,            \
+       "printenv- print environment variables\n",                              \
+       "\n    - print values of all environment variables\n"                   \
+       "printenv name ...\n"                                                   \
+       "    - print value of environment variable 'name'\n"                    \
+),
+int do_printenv (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#define CMD_TBL_SETENV         MK_CMD_TBL_ENTRY(                               \
+       "setenv",       6,      CFG_MAXARGS,    0,      do_setenv,              \
+       "setenv  - set environment variables\n",                                \
+       "name value ...\n"                                                      \
+       "    - set environment variable 'name' to 'value ...'\n"                \
+       "setenv name\n"                                                         \
+       "    - delete environment variable 'name'\n"                            \
+),
+int do_setenv   (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#if ((CONFIG_COMMANDS & (CFG_CMD_ENV|CFG_CMD_FLASH)) == (CFG_CMD_ENV|CFG_CMD_FLASH))
+#define        CMD_TBL_SAVEENV         MK_CMD_TBL_ENTRY(                               \
+       "saveenv",      4,      1,              0,      do_saveenv,             \
+       "saveenv - save environment variables to persistent storage\n",         \
+       NULL                                                                    \
+),
+int do_saveenv  (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#else
+#define CMD_TBL_SAVEENV
+#endif /* CFG_CMD_ENV */
+
+#if (CONFIG_COMMANDS & CFG_CMD_ASKENV)
+#define CMD_TBL_ASKENV         MK_CMD_TBL_ENTRY(                               \
+       "askenv",       8,      CFG_MAXARGS,    1,      do_askenv,              \
+       "askenv  - get environment variables from stdin\n",                     \
+       "name [message] [size]\n"                                               \
+       "    - get environment variable 'name' from stdin (max 'size' chars)\n" \
+       "askenv name\n"                                                         \
+       "    - get environment variable 'name' from stdin\n"                    \
+       "askenv name size\n"                                                    \
+       "    - get environment variable 'name' from stdin (max 'size' chars)\n" \
+       "askenv name [message] size\n"                                          \
+       "    - display 'message' string and get environment variable 'name'"    \
+       "from stdin (max 'size' chars)\n"                                       \
+),
+int do_askenv   (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#else
+#define CMD_TBL_ASKENV
+#endif /* CFG_CMD_ASKENV */
+
+#if (CONFIG_COMMANDS & CFG_CMD_RUN)
+#define        CMD_TBL_RUN     MK_CMD_TBL_ENTRY(                                       \
+       "run",  3,      CFG_MAXARGS,    1,      do_run,                         \
+       "run     - run commands in an environment variable\n",                  \
+       "var [...]\n"                                                           \
+       "    - run the commands in the environment variable(s) 'var'\n"         \
+),
+int do_run (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#else
+#define CMD_TBL_RUN
+#endif  /* CFG_CMD_RUN */
+
+#endif /* _CMD_NVEDIT_H */
diff --git a/include/cmd_pcmcia.h b/include/cmd_pcmcia.h
new file mode 100644 (file)
index 0000000..24a207b
--- /dev/null
@@ -0,0 +1,44 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ * PCMCIA support
+ */
+#ifndef        _CMD_PCMCIA_H
+#define        _CMD_PCMCIA_H
+
+#if (CONFIG_COMMANDS & CFG_CMD_PCMCIA)
+#define        CMD_TBL_PINIT   MK_CMD_TBL_ENTRY(                                       \
+       "pinit",        4,      2,      1,      do_pinit,                       \
+       "pinit   - PCMCIA sub-system\n",                                        \
+       "on  - power on PCMCIA socket\n"                                        \
+       "pinit off - power off PCMCIA socket\n"                                 \
+),
+
+int do_pinit (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+#else
+#define CMD_TBL_PINIT
+#endif
+
+#endif /* _CMD_PCMCIA_H */
+
diff --git a/include/cmd_reginfo.h b/include/cmd_reginfo.h
new file mode 100644 (file)
index 0000000..d4e995d
--- /dev/null
@@ -0,0 +1,40 @@
+/*
+ * (C) Copyright 2000
+ * Subodh Nijsure, SkyStream Networks, snijsure@skystream.com
+ *
+ * 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
+ */
+
+#ifndef        _CMD_REGINFO_H_
+#define        _CMD_REGINFO_H_
+
+#if (defined(CONFIG_8xx) || defined(CONFIG_405GP)) && \
+    (CONFIG_COMMANDS & CFG_CMD_REGINFO)
+#define        CMD_TBL_REGINFO MK_CMD_TBL_ENTRY(                                       \
+       "reginfo",      3,      2,      1,      do_reginfo,                     \
+       "reginfo - print register information\n",                               \
+),
+
+int do_reginfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+#define CMD_TBL_REGINFO
+#endif /* CONFIG_8xx && CFG_CMD_REGINFO */
+
+#endif /* _CMD_REGINFO_H_ */
diff --git a/include/cmd_rtc.h b/include/cmd_rtc.h
new file mode 100644 (file)
index 0000000..2149f78
--- /dev/null
@@ -0,0 +1,50 @@
+/*
+ * (C) Copyright 2001
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+#ifndef _CMD_RTC_H_
+#define _CMD_RTC_H_
+
+#include <common.h>
+#include <command.h>
+
+#if (CONFIG_COMMANDS & CFG_CMD_DATE)
+
+#define CMD_TBL_DATE   MK_CMD_TBL_ENTRY(                                       \
+       "date", 3,      2,      1,      do_date,                                \
+       "date    - get/set/reset date & time\n",                                \
+       "[MMDDhhmm[[CC]YY][.ss]]\ndate reset\n"                                 \
+       "  - without arguments: print date & time\n"                            \
+       "  - with numeric argument: set the system date & time\n"               \
+       "  - with 'reset' argument: reset the RTC\n"                            \
+),
+
+int do_date (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+#else
+
+#define CMD_TBL_DATE
+
+#endif /* CFG_CMD_DATE */
+
+
+#endif /* _CMD_RTC_H_ */
diff --git a/include/cmd_scsi.h b/include/cmd_scsi.h
new file mode 100644 (file)
index 0000000..4dca059
--- /dev/null
@@ -0,0 +1,62 @@
+/*
+ * (C) Copyright 2001
+ * Denis Peter, MPL AG Switzerland
+ *
+ * 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
+ *
+ */
+#ifndef        _CMD_SCSI_H
+#define        _CMD_SCSI_H
+
+#include <common.h>
+#include <command.h>
+
+
+#if (CONFIG_COMMANDS & CFG_CMD_SCSI)
+
+#define        CMD_TBL_SCSI    MK_CMD_TBL_ENTRY(                                       \
+       "scsi", 4,      5,      1,      do_scsi,                                \
+       "scsi    - SCSI sub-system\n",                                          \
+       "reset - reset SCSI controller\n"                                       \
+       "scsi info  - show available SCSI devices\n"                            \
+       "scsi scan  - (re-)scan SCSI bus\n"                                     \
+       "scsi device [dev] - show or set current device\n"                      \
+       "scsi part [dev] - print partition table of one or all SCSI devices\n"  \
+       "scsi read addr blk# cnt - read `cnt' blocks starting at block `blk#'\n"\
+       "     to memory address `addr'\n"                                       \
+),
+
+
+#define        CMD_TBL_SCSIBOOT        MK_CMD_TBL_ENTRY(                                       \
+       "scsiboot",     5,      3,      1,      do_scsiboot,                                    \
+       "scsiboot- boot from SCSI device\n",                                            \
+       "loadAddr dev:part\n"                   \
+),
+
+int do_scsi (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_scsiboot (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+
+#else
+#define CMD_TBL_SCSI
+#define CMD_TBL_SCSIBOOT
+#endif
+
+#endif /* _CMD_SCSI_H */
+
diff --git a/include/cmd_usb.h b/include/cmd_usb.h
new file mode 100644 (file)
index 0000000..b7b4e83
--- /dev/null
@@ -0,0 +1,77 @@
+/*
+ * (C) Copyright 2001
+ * Denis Peter, MPL AG Switzerland
+ *
+ * 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
+ *
+ */
+#ifndef        _CMD_USB_H
+#define        _CMD_USB_H
+
+#include <common.h>
+#include <command.h>
+
+
+#if (CONFIG_COMMANDS & CFG_CMD_USB)
+
+#ifdef CONFIG_USB_STORAGE
+#define        CMD_TBL_USB     MK_CMD_TBL_ENTRY(                                       \
+       "usb",  4,      5,      1,      do_usb,                         \
+       "usb     - USB sub-system\n",                                           \
+       "reset - reset (rescan) USB controller\n"                                       \
+       "usb  stop [f]  - stop USB [f]=force stop\n"                            \
+       "usb  tree  - show USB device tree\n"                           \
+       "usb  info [dev] - show available USB devices\n"                                \
+       "usb  scan  - (re-)scan USB bus for storage devices\n"                                  \
+       "usb  device [dev] - show or set current USB storage device\n"                  \
+       "usb  part [dev] - print partition table of one or all USB storage devices\n"   \
+       "usb  read addr blk# cnt - read `cnt' blocks starting at block `blk#'\n"\
+       "     to memory address `addr'\n"                                       \
+),
+
+
+#define        CMD_TBL_USBBOOT MK_CMD_TBL_ENTRY(                                       \
+       "usbboot",      5,      3,      1,      do_usbboot,                                     \
+       "usbboot - boot from USB device\n",                                             \
+       "loadAddr dev:part\n"                   \
+),
+
+#else
+#define        CMD_TBL_USB     MK_CMD_TBL_ENTRY(                                       \
+       "usb",  4,      5,      1,      do_usb,                         \
+       "usb     - USB sub-system\n",                                           \
+       "reset - reset (rescan) USB controller\n"                                       \
+       "usb  tree  - show USB device tree\n"                           \
+       "usb  info [dev] - show available USB devices\n"                                \
+),
+
+#define CMD_TBL_USBBOOT
+#endif
+
+int do_usb (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+int do_usbboot (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+
+
+#else
+#define CMD_TBL_USB
+#define CMD_TBL_USBBOOT
+#endif
+
+#endif /* _CMD_USB_H */
+
diff --git a/include/command.h b/include/command.h
new file mode 100644 (file)
index 0000000..9453c0d
--- /dev/null
@@ -0,0 +1,90 @@
+/*
+ * (C) Copyright 2000
+ * Wolfgang Denk, DENX Software Engineering, wd@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
+ */
+
+/*
+ *  Definitions for Command Processor
+ */
+#ifndef __COMMAND_H
+#define __COMMAND_H
+
+#ifndef NULL
+#define NULL   0
+#endif
+
+#ifndef        __ASSEMBLY__
+/*
+ * Monitor Command Table
+ */
+
+struct cmd_tbl_s {
+       char            *name;          /* Command Name                 */
+       int             lmin;           /* minimum abbreviated length   */
+       int             maxargs;        /* maximum number of arguments  */
+       int             repeatable;     /* autorepeat allowed?          */
+                                       /* Implementation function      */
+       int             (*cmd)(struct cmd_tbl_s *, int, int, char *[]);
+       char            *usage;         /* Usage message        (short) */
+#ifdef CFG_LONGHELP
+       char            *help;          /* Help  message        (long)  */
+#endif
+};
+
+typedef struct cmd_tbl_s       cmd_tbl_t;
+
+extern cmd_tbl_t cmd_tbl[];
+
+#ifdef CFG_LONGHELP
+#define        MK_CMD_TBL_ENTRY(name,lmin,maxargs,rep,cmd,usage,help)  \
+                               { name, lmin, maxargs, rep, cmd, usage, help }
+#else  /* no help info */
+#define        MK_CMD_TBL_ENTRY(name,lmin,maxargs,rep,cmd,usage,help)  \
+                               { name, lmin, maxargs, rep, cmd, usage }
+#endif
+
+/* common/command.c */
+cmd_tbl_t *find_cmd(const char *cmd);
+
+/*
+ * Monitor Command
+ *
+ * All commands use a common argument format:
+ *
+ * void function (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
+ */
+
+typedef        void    command_t (cmd_tbl_t *, int, int, char *[]);
+
+#endif /* __ASSEMBLY__ */
+
+/*
+ * Command Flags:
+ */
+#define CMD_FLAG_REPEAT                0x0001  /* repeat last command          */
+#define CMD_FLAG_BOOTD         0x0002  /* command is from bootd        */
+
+/*
+ * Configurable monitor commands definitions have been moved
+ * to include/cmd_confdefs.h
+ */
+
+#endif /* __COMMAND_H */