Skip to content
Snippets Groups Projects
cmd_boot.h 4.27 KiB
Newer Older
  • Learn to ignore specific revisions
  • Wolfgang Denk's avatar
    Wolfgang Denk committed
    /*
     * (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_BOOT_H
    #define	_CMD_BOOT_H
    
    #if (CONFIG_COMMANDS & CFG_CMD_BDI)
    #define	CMD_TBL_BDINFO	MK_CMD_TBL_ENTRY(					\
    	"bdinfo",	2,	1,	1,	do_bdinfo,			\
    	"bdinfo  - print Board Info structure\n",				\
    	NULL									\
    ),
    int do_bdinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
    
    #else
    #define CMD_TBL_BDINFO
    #endif
    
    
    #define CMD_TBL_GO	MK_CMD_TBL_ENTRY(					\
    	"go",		2,	CFG_MAXARGS,	1,	do_go,			\
    	"go      - start application at address 'addr'\n",			\
    	"addr [arg ...]\n    - start application at address 'addr'\n"		\
    	"      passing 'arg' as arguments\n"					\
    ),
    int do_go (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
    
    #if (CONFIG_COMMANDS & CFG_CMD_LOADS)
    #ifdef	CFG_LOADS_BAUD_CHANGE
    #define	CMD_TBL_LOADS	MK_CMD_TBL_ENTRY(					\
    	"loads",	5,	3,	0,	do_load_serial,			\
    	"loads   - load S-Record file over serial line\n",			\
    	"[ off ] [ baud ]\n"							\
    	"    - load S-Record file over serial line"				\
    	" with offset 'off' and baudrate 'baud'\n"				\
    ),
    #else	/* ! CFG_LOADS_BAUD_CHANGE */
    #define	CMD_TBL_LOADS	MK_CMD_TBL_ENTRY(					\
    	"loads",	5,	2,	0,	do_load_serial,			\
    	"loads   - load S-Record file over serial line\n",			\
    	"[ off ]\n"								\
    	"    - load S-Record file over serial line with offset 'off'\n"		\
    ),
    #endif	/* CFG_LOADS_BAUD_CHANGE */
    int do_load_serial (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
    
    /*
     * SAVES always requires LOADS support, but not vice versa
     */
    #if (CONFIG_COMMANDS & CFG_CMD_SAVES)
    #ifdef	CFG_LOADS_BAUD_CHANGE
    #define	CMD_TBL_SAVES	MK_CMD_TBL_ENTRY(					\
    	"saves",	5,	4,	0,	do_save_serial,			\
    	"saves   - save S-Record file over serial line\n",			\
    	"[ off ] [size] [ baud ]\n"							\
    	"    - save S-Record file over serial line"				\
    	" with offset 'off', size 'size' and baudrate 'baud'\n"				\
    ),
    #else	/* ! CFG_LOADS_BAUD_CHANGE */
    #define	CMD_TBL_SAVES	MK_CMD_TBL_ENTRY(					\
    	"saves",	5,	3,	0,	do_save_serial,			\
    	"saves   - save S-Record file over serial line\n",			\
    	"[ off ] [size]\n"								\
    	"    - save S-Record file over serial line with offset 'off' and size 'size'\n"		\
    ),
    #endif	/* CFG_LOADS_BAUD_CHANGE */
    
    int do_save_serial (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
    #else	/* ! CFG_CMD_SAVES */
    #define CMD_TBL_SAVES
    #endif	/* CFG_CMD_SAVES */
    
    #else	/* ! CFG_CMD_LOADS */
    #define CMD_TBL_LOADS
    #define CMD_TBL_SAVES
    #endif	/* CFG_CMD_LOADS */
    
    
    #if (CONFIG_COMMANDS & CFG_CMD_LOADB)
    #define	CMD_TBL_LOADB	MK_CMD_TBL_ENTRY(					\
    	"loadb",	5,	3,	0,	do_load_serial_bin,		\
    	"loadb   - load binary file over serial line (kermit mode)\n",		\
    	"[ off ] [ baud ]\n"							\
    	"    - load binary file over serial line"				\
    	" with offset 'off' and baudrate 'baud'\n"				\
    ),
    int do_load_serial_bin (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
    
    #else
    #define CMD_TBL_LOADB
    #endif	/* CFG_CMD_LOADB */
    
    #define CMD_TBL_RESET	MK_CMD_TBL_ENTRY(					\
    	"reset",	5,	1,	0,	do_reset,			\
    	"reset   - Perform RESET of the CPU\n",					\
    	NULL									\
    ),
    
    /* Implemented in $(CPU)/cpu.c */
    int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
    
    #if (CONFIG_COMMANDS & CFG_CMD_HWFLOW)
    #define	CMD_TBL_HWFLOW	MK_CMD_TBL_ENTRY(					\
    	"hwflow [on|off]",	2,	2,	0,	do_hwflow,			\
        "hwflow  - turn the harwdare flow control on/off\n", \
    	"\n - change RTS/CTS hardware flow control over serial line\n" \
    ),
    
    int do_hwflow (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
    
    #else
    #define CMD_TBL_HWFLOW
    #endif
    #endif	/* _CMD_BOOT_H */