common: spl: move armv7m-specific code to spl_perform_fixups()
[platform/kernel/u-boot.git] / cmd / bedbug.c
index 69afeaf..0bd67fc 100644 (file)
@@ -6,6 +6,8 @@
 #include <cli.h>
 #include <command.h>
 #include <console.h>
+#include <asm/global_data.h>
+#include <asm/ptrace.h>
 #include <linux/ctype.h>
 #include <net.h>
 #include <bedbug/type.h>
@@ -37,44 +39,25 @@ int bedbug_puts (const char *str)
 }                              /* bedbug_puts */
 
 
-
 /* ======================================================================
  * Initialize the bug_ctx structure used by the bedbug debugger.  This is
  * specific to the CPU since each has different debug registers and
  * settings.
  * ====================================================================== */
 
-void bedbug_init (void)
+int bedbug_init(void)
 {
        /* -------------------------------------------------- */
-
-#if defined(CONFIG_4xx)
-       void bedbug405_init (void);
-
-       bedbug405_init ();
-#elif defined(CONFIG_8xx)
-       void bedbug860_init (void);
-
-       bedbug860_init ();
-#endif
-
-#if defined(CONFIG_MPC824X) || defined(CONFIG_MPC8260)
-       /* Processors that are 603e core based */
-       void bedbug603e_init (void);
-
-       bedbug603e_init ();
-#endif
-
-       return;
+       return 0;
 }                              /* bedbug_init */
 
 
-
 /* ======================================================================
  * Entry point from the interpreter to the disassembler.  Repeated calls
  * will resume from the last disassembled address.
  * ====================================================================== */
-int do_bedbug_dis (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
+int do_bedbug_dis(struct cmd_tbl *cmdtp, int flag, int argc,
+                 char *const argv[])
 {
        ulong addr;             /* Address to start disassembly from    */
        ulong len;              /* # of instructions to disassemble     */
@@ -90,11 +73,11 @@ int do_bedbug_dis (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
 
        if ((flag & CMD_FLAG_REPEAT) == 0) {
                /* New command */
-               addr = simple_strtoul (argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
 
                /* If an extra param is given then it is the length */
                if (argc > 2)
-                       len = simple_strtoul (argv[2], NULL, 16);
+                       len = hextoul(argv[2], NULL);
        }
 
        /* Run the disassembler */
@@ -114,7 +97,8 @@ U_BOOT_CMD (ds, 3, 1, do_bedbug_dis,
  * instructions in consecutive memory locations until a '.' (period) is
  * entered on a line by itself.
  * ====================================================================== */
-int do_bedbug_asm (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
+int do_bedbug_asm(struct cmd_tbl *cmdtp, int flag, int argc,
+                 char *const argv[])
 {
        long mem_addr;          /* Address to assemble into     */
        unsigned long instr;    /* Machine code for text        */
@@ -128,7 +112,7 @@ int do_bedbug_asm (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
                return CMD_RET_USAGE;
 
        printf ("\nEnter '.' when done\n");
-       mem_addr = simple_strtoul (argv[1], NULL, 16);
+       mem_addr = hextoul(argv[1], NULL);
 
        while (1) {
                putc ('\n');
@@ -164,7 +148,8 @@ U_BOOT_CMD (as, 2, 0, do_bedbug_asm,
  * CPU-specific break point set routine.
  * ====================================================================== */
 
-int do_bedbug_break (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
+int do_bedbug_break(struct cmd_tbl *cmdtp, int flag, int argc,
+                   char *const argv[])
 {
        /* -------------------------------------------------- */
        if (bug_ctx.do_break)
@@ -196,7 +181,6 @@ void do_bedbug_breakpoint (struct pt_regs *regs)
 }                              /* do_bedbug_breakpoint */
 
 
-
 /* ======================================================================
  * Called from the CPU-specific breakpoint handling routine.  Enter a
  * mini main loop until the stopped flag is cleared from the breakpoint
@@ -254,13 +238,13 @@ void bedbug_main_loop (unsigned long addr, struct pt_regs *regs)
 }                              /* bedbug_main_loop */
 
 
-
 /* ======================================================================
  * Interpreter command to continue from a breakpoint.  Just clears the
  * stopped flag in the context so that the breakpoint routine will
  * return.
  * ====================================================================== */
-int do_bedbug_continue (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
+int do_bedbug_continue(struct cmd_tbl *cmdtp, int flag, int argc,
+                      char *const argv[])
 {
        /* -------------------------------------------------- */
 
@@ -283,7 +267,8 @@ U_BOOT_CMD (continue, 1, 0, do_bedbug_continue,
  * the address passes control to the CPU-specific set breakpoint routine
  * for the current breakpoint number.
  * ====================================================================== */
-int do_bedbug_step (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
+int do_bedbug_step(struct cmd_tbl *cmdtp, int flag, int argc,
+                  char *const argv[])
 {
        unsigned long addr;     /* Address to stop at */
 
@@ -314,7 +299,8 @@ U_BOOT_CMD (step, 1, 1, do_bedbug_step,
  * the address passes control to the CPU-specific set breakpoint routine
  * for the current breakpoint number.
  * ====================================================================== */
-int do_bedbug_next (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
+int do_bedbug_next(struct cmd_tbl *cmdtp, int flag, int argc,
+                  char *const argv[])
 {
        unsigned long addr;     /* Address to stop at */
 
@@ -343,7 +329,8 @@ U_BOOT_CMD (next, 1, 1, do_bedbug_next,
  * Interpreter command to print the current stack.  This assumes an EABI
  * architecture, so it starts with GPR R1 and works back up the stack.
  * ====================================================================== */
-int do_bedbug_stack (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
+int do_bedbug_stack(struct cmd_tbl *cmdtp, int flag, int argc,
+                   char *const argv[])
 {
        unsigned long sp;       /* Stack pointer                */
        unsigned long func;     /* LR from stack                */
@@ -358,7 +345,7 @@ int do_bedbug_stack (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
                return 1;
        }
 
-       top = gd->bd->bi_memstart + gd->bd->bi_memsize;
+       top = gd->ram_start + gd->ram_size;
        depth = 0;
 
        printf ("Depth     PC\n");
@@ -388,7 +375,8 @@ U_BOOT_CMD (where, 1, 1, do_bedbug_stack,
  * Interpreter command to dump the registers.  Calls the CPU-specific
  * show registers routine.
  * ====================================================================== */
-int do_bedbug_rdump (cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
+int do_bedbug_rdump(struct cmd_tbl *cmdtp, int flag, int argc,
+                   char *const argv[])
 {
        /* -------------------------------------------------- */