123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- /* Kernel debugger for MN10300
- *
- * Copyright (C) 2010 Red Hat, Inc. All Rights Reserved.
- * Written by David Howells (dhowells@redhat.com)
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public Licence
- * as published by the Free Software Foundation; either version
- * 2 of the Licence, or (at your option) any later version.
- */
- #ifndef _ASM_KGDB_H
- #define _ASM_KGDB_H
- /*
- * BUFMAX defines the maximum number of characters in inbound/outbound
- * buffers at least NUMREGBYTES*2 are needed for register packets
- * Longer buffer is needed to list all threads
- */
- #define BUFMAX 1024
- /*
- * Note that this register image is in a different order than the register
- * image that Linux produces at interrupt time.
- */
- enum regnames {
- GDB_FR_D0 = 0,
- GDB_FR_D1 = 1,
- GDB_FR_D2 = 2,
- GDB_FR_D3 = 3,
- GDB_FR_A0 = 4,
- GDB_FR_A1 = 5,
- GDB_FR_A2 = 6,
- GDB_FR_A3 = 7,
- GDB_FR_SP = 8,
- GDB_FR_PC = 9,
- GDB_FR_MDR = 10,
- GDB_FR_EPSW = 11,
- GDB_FR_LIR = 12,
- GDB_FR_LAR = 13,
- GDB_FR_MDRQ = 14,
- GDB_FR_E0 = 15,
- GDB_FR_E1 = 16,
- GDB_FR_E2 = 17,
- GDB_FR_E3 = 18,
- GDB_FR_E4 = 19,
- GDB_FR_E5 = 20,
- GDB_FR_E6 = 21,
- GDB_FR_E7 = 22,
- GDB_FR_SSP = 23,
- GDB_FR_MSP = 24,
- GDB_FR_USP = 25,
- GDB_FR_MCRH = 26,
- GDB_FR_MCRL = 27,
- GDB_FR_MCVF = 28,
- GDB_FR_FPCR = 29,
- GDB_FR_DUMMY0 = 30,
- GDB_FR_DUMMY1 = 31,
- GDB_FR_FS0 = 32,
- GDB_FR_SIZE = 64,
- };
- #define GDB_ORIG_D0 41
- #define NUMREGBYTES (GDB_FR_SIZE*4)
- static inline void arch_kgdb_breakpoint(void)
- {
- asm(".globl __arch_kgdb_breakpoint; __arch_kgdb_breakpoint: break");
- }
- extern u8 __arch_kgdb_breakpoint;
- #define BREAK_INSTR_SIZE 1
- #define CACHE_FLUSH_IS_SAFE 1
- #endif /* _ASM_KGDB_H */
|