X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Ftarget%2Farmv4_5.h;h=ee37723eabe4d4d12263949ea758fb948df02675;hp=a28bfa1276ca3c80cc80558ade1a1cfa57fbc21f;hb=3acb107b9ae4e3d38d3fcfd29b455ebcfb444696;hpb=da9eedc0f2c338b8ad136a4436a7781edc4a8884 diff --git a/src/target/armv4_5.h b/src/target/armv4_5.h index a28bfa1276..ee37723eab 100644 --- a/src/target/armv4_5.h +++ b/src/target/armv4_5.h @@ -193,6 +193,27 @@ extern int armv4_5_invalidate_core_regs(target_t *target); */ #define ARMV4_5_BX(Rm) (0xe12fff10 | Rm) +/* Move to ARM register from coprocessor + * CP: Coprocessor number + * op1: Coprocessor opcode + * Rd: destination register + * CRn: first coprocessor operand + * CRm: second coprocessor operand + * op2: Second coprocessor opcode + */ +#define ARMV4_5_MRC(CP, op1, Rd, CRn, CRm, op2) (0xee100010 | CRm | (op2 << 5) | (CP << 8) | (Rd << 12) | (CRn << 16) | (op1 << 21)) + +/* Move to coprocessor from ARM register + * CP: Coprocessor number + * op1: Coprocessor opcode + * Rd: destination register + * CRn: first coprocessor operand + * CRm: second coprocessor operand + * op2: Second coprocessor opcode + */ +#define ARMV4_5_MCR(CP, op1, Rd, CRn, CRm, op2) (0xee000010 | CRm | (op2 << 5) | (CP << 8) | (Rd << 12) | (CRn << 16) | (op1 << 21)) + + /* Thumb mode instructions */