Line 130... |
Line 130... |
#define CPUCFGR_SPRNUM SPR_REG(SPR_SYSTEM_GROUP, 2)
|
#define CPUCFGR_SPRNUM SPR_REG(SPR_SYSTEM_GROUP, 2)
|
#define DCFGR_SPRNUM SPR_REG(SPR_SYSTEM_GROUP, 7)
|
#define DCFGR_SPRNUM SPR_REG(SPR_SYSTEM_GROUP, 7)
|
#define PC_SPRNUM SPR_REG(SPR_SYSTEM_GROUP, 16)
|
#define PC_SPRNUM SPR_REG(SPR_SYSTEM_GROUP, 16)
|
#define SR_SPRNUM SPR_REG(SPR_SYSTEM_GROUP, 17)
|
#define SR_SPRNUM SPR_REG(SPR_SYSTEM_GROUP, 17)
|
#define CCR_SPRNUM(cid) SPR_REG(SPR_SYSTEM_GROUP, 4 + (cid))
|
#define CCR_SPRNUM(cid) SPR_REG(SPR_SYSTEM_GROUP, 4 + (cid))
|
#define DVR0_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 32)
|
#define EPCR_SPRNUM(cid) SPR_REG(SPR_SYSTEM_GROUP, 32 + (cid))
|
#define DCR0_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 40)
|
#define EPCR0_SPRNUM SPR_REG(SPR_SYSTEM_GROUP, 32)
|
#define DMR1_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 48)
|
|
#define DMR2_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 49)
|
#define DVR0_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 0xee)
|
#define DCWR0_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 50)
|
#define DCR0_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 0xee)
|
#define DCWR1_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 51)
|
#define DMR1_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 16)
|
#define DSR_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 52)
|
#define DMR2_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 17)
|
#define DRR_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 53)
|
#define DCWR0_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 0xee)
|
#define DIR_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 54)
|
#define DCWR1_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 0xee)
|
|
#define DSR_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 20)
|
|
#define DRR_SPRNUM SPR_REG(SPR_DEBUG_GROUP, 21)
|
|
|
#define ZERO_REGNUM (0)
|
#define ZERO_REGNUM (0)
|
#define SP_REGNUM (1)
|
#define SP_REGNUM (1)
|
#define FP_REGNUM (2)
|
#define FP_REGNUM (2)
|
#define A0_REGNUM (3)
|
#define A0_REGNUM (3)
|
#define A5_REGNUM (8)
|
#define A5_REGNUM (8)
|
Line 151... |
Line 154... |
#define VFA0_REGNUM (MAX_GPR_REGS + 0)
|
#define VFA0_REGNUM (MAX_GPR_REGS + 0)
|
#define VFA5_REGNUM (MAX_GPR_REGS + 5)
|
#define VFA5_REGNUM (MAX_GPR_REGS + 5)
|
#define VFRV_REGNUM (MAX_GPR_REGS + 6)
|
#define VFRV_REGNUM (MAX_GPR_REGS + 6)
|
#define PC_REGNUM (MAX_GPR_REGS + MAX_VF_REGS + 0)
|
#define PC_REGNUM (MAX_GPR_REGS + MAX_VF_REGS + 0)
|
#define PS_REGNUM (MAX_GPR_REGS + MAX_VF_REGS + 1)
|
#define PS_REGNUM (MAX_GPR_REGS + MAX_VF_REGS + 1)
|
|
#define EPCR_REGNUM (MAX_GPR_REGS + MAX_VF_REGS + 2)
|
#define CCR_REGNUM (MAX_GPR_REGS + MAX_VF_REGS + 2)
|
#define CCR_REGNUM (MAX_GPR_REGS + MAX_VF_REGS + 2)
|
|
|
/*******************************************/
|
/*******************************************/
|
/* Added by CZ on 12/09/01 Used for new style breakpoints */
|
/* Added by CZ on 12/09/01 Used for new style breakpoints */
|
/* These really aren't designed to be seen by the user */
|
/* These really aren't designed to be seen by the user */
|
Line 175... |
Line 179... |
|
|
/* Defines for SPR bits. */
|
/* Defines for SPR bits. */
|
#define DMR1_ST (0x00400000)
|
#define DMR1_ST (0x00400000)
|
|
|
/* Changed by CZ 21/06/01 */
|
/* Changed by CZ 21/06/01 */
|
#define DRR_SS (0x00004000)
|
#define DRR_BE2 (0x00002000)
|
#define DRR_TE (0x00002000)
|
|
#define DRR_BE (0x00001000)
|
#define DRR_BE (0x00001000)
|
#define DRR_SCE (0x00000800)
|
#define DRR_SCE (0x00000800)
|
#define DRR_RE (0x00000400)
|
#define DRR_RE (0x00000400)
|
#define DRR_IME (0x00000200)
|
#define DRR_IME (0x00000200)
|
#define DRR_DME (0x00000100)
|
#define DRR_DME (0x00000100)
|
Line 280... |
Line 283... |
register N. */
|
register N. */
|
#define REGISTER_BYTE(N) ((N) * OR1K_SPR_REGSIZE)
|
#define REGISTER_BYTE(N) ((N) * OR1K_SPR_REGSIZE)
|
|
|
/* Total amount of space needed to store our copies of the machine's
|
/* Total amount of space needed to store our copies of the machine's
|
register state, the array `registers'. */
|
register state, the array `registers'. */
|
#define REGISTER_BYTES (NUM_REGS * OR1K_SPR_REGSIZE)
|
#define REGISTER_BYTES (NUM_REGS * OR1K_GPR_REGSIZE)
|
|
|
extern void or1k_do_registers_info PARAMS ((int, int));
|
extern void or1k_do_registers_info PARAMS ((int, int));
|
#define DO_REGISTERS_INFO(regnum, fp) or1k_do_registers_info(regnum, fp)
|
#define DO_REGISTERS_INFO(regnum, fp) or1k_do_registers_info(regnum, fp)
|
|
|
|
|
Line 517... |
Line 520... |
TARGET_DISCONNECTING,
|
TARGET_DISCONNECTING,
|
TARGET_RUNNING,
|
TARGET_RUNNING,
|
TARGET_STOPPED
|
TARGET_STOPPED
|
};
|
};
|
|
|
#define REG_SPACE 0x00000000
|
|
#define REG_SPACE_END 0x7FFFFFFF
|
|
#define MEM_SPACE 0x80000000
|
|
#define MEM_SPACE_END 0xFFFFFFFF
|
|
|
|
/* Compare conditions for DCRx registers. */
|
/* Compare conditions for DCRx registers. */
|
enum enum_compare_condition
|
enum enum_compare_condition
|
{
|
{
|
CC_MASKED, CC_EQUAL, CC_LESS, CC_LESSE, CC_GREAT, CC_GREATE, CC_NEQUAL
|
CC_MASKED, CC_EQUAL, CC_LESS, CC_LESSE, CC_GREAT, CC_GREATE, CC_NEQUAL
|
};
|
};
|
Line 672... |
Line 670... |
{
|
{
|
SC_GLOBAL, /* 0 Global BS Chain */
|
SC_GLOBAL, /* 0 Global BS Chain */
|
SC_RISC_DEBUG, /* 1 RISC Debug Interface chain */
|
SC_RISC_DEBUG, /* 1 RISC Debug Interface chain */
|
SC_RISC_TEST, /* 2 RISC Test Chain */
|
SC_RISC_TEST, /* 2 RISC Test Chain */
|
SC_TRACE, /* 3 Trace Chain */
|
SC_TRACE, /* 3 Trace Chain */
|
SC_REGISTER, /* Register Chain */
|
SC_REGISTER, /* 4 Register Chain */
|
SC_BLOCK, /* Block Chains */
|
SC_WISHBONE, /* 5 Wisbone Chain */
|
|
SC_BLOCK /* Block Chains */
|
};
|
};
|
|
|
/* See JTAG documentation about these. */
|
/* See JTAG documentation about these. */
|
#define JI_SIZE (4)
|
#define JI_SIZE (4)
|
enum jtag_instr
|
enum jtag_instr
|
Line 697... |
Line 696... |
/* JTAG registers. */
|
/* JTAG registers. */
|
#define JTAG_MODER (0x0)
|
#define JTAG_MODER (0x0)
|
#define JTAG_TSEL (0x1)
|
#define JTAG_TSEL (0x1)
|
#define JTAG_QSEL (0x2)
|
#define JTAG_QSEL (0x2)
|
#define JTAG_SSEL (0x3)
|
#define JTAG_SSEL (0x3)
|
#define JTAG_RISCOP (0x9)
|
#define JTAG_RISCOP (0x4)
|
#define JTAG_RECWP0 (0x10)
|
#define JTAG_RECWP0 (0x10)
|
#define JTAG_RECBP0 (0x1b)
|
#define JTAG_RECBP0 (0x1b)
|
|
|
|
|
/* Current register values. */
|
/* Current register values. */
|