cmd: add exception command

The 'exception' command allows to test exception handling.

This implementation supports ARM, x86, RISC-V and the following exceptions:
* 'breakpoint' - prefetch abort exception (ARM 32bit only)
* 'unaligned'  - data abort exception (ARM only)
* 'undefined'  - undefined instruction exception

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
This commit is contained in:
Heinrich Schuchardt 2018-12-26 17:20:35 +01:00 committed by Tom Rini
parent c986aa624b
commit dab8788a8c
11 changed files with 232 additions and 0 deletions

29
cmd/x86/exception.c Normal file
View file

@ -0,0 +1,29 @@
// SPDX-License-Identifier: GPL-2.0+
/*
* The 'exception' command can be used for testing exception handling.
*
* Copyright (c) 2018, Heinrich Schuchardt <xypron.glpk@gmx.de>
*/
#include <common.h>
#include <command.h>
static int do_undefined(cmd_tbl_t *cmdtp, int flag, int argc,
char * const argv[])
{
asm volatile (".word 0xffff\n");
return CMD_RET_FAILURE;
}
static cmd_tbl_t cmd_sub[] = {
U_BOOT_CMD_MKENT(undefined, CONFIG_SYS_MAXARGS, 1, do_undefined,
"", ""),
};
static char exception_help_text[] =
"<ex>\n"
" The following exceptions are available:\n"
" undefined - undefined instruction\n"
;
#include <exception.h>