summaryrefslogtreecommitdiff
path: root/src/target/armv4_5.h
diff options
context:
space:
mode:
authorDavid Brownell <dbrownell@users.sourceforge.net>2009-11-20 16:27:24 -0800
committerDavid Brownell <dbrownell@users.sourceforge.net>2009-11-20 16:27:24 -0800
commit69c751956293e822faa6cf844f2864d81c36a578 (patch)
tree5a13deb8230c7a3436e53e9618e27ab6421a08e4 /src/target/armv4_5.h
parent85fe1506a2296493d13368e545fa2d4ddb13ea72 (diff)
downloadopenocd+libswd-69c751956293e822faa6cf844f2864d81c36a578.tar.gz
openocd+libswd-69c751956293e822faa6cf844f2864d81c36a578.tar.bz2
openocd+libswd-69c751956293e822faa6cf844f2864d81c36a578.tar.xz
openocd+libswd-69c751956293e822faa6cf844f2864d81c36a578.zip
ARM: pass 'struct reg *' to register r/w routines
Implementations need to access the register struct they modify; make it easier and less error-prone to identify the instance. (This removes over 10% of the ARMV4_5_CORE_REG_MODE nastiness...) Plus some minor fixes noted when making these updates: ARM7/ARM9 accessor methods should be static; don't leave CPSR wrongly marked "dirty"; note significant XScale omissions in register handling; and have armv4_5_build_reg_cache() record its result. Rename "struct armv4_5_core_reg" as "struct arm_reg"; it's used for more than those older architecture generations. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Diffstat (limited to 'src/target/armv4_5.h')
-rw-r--r--src/target/armv4_5.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/target/armv4_5.h b/src/target/armv4_5.h
index dbd62c0d..c8fc5580 100644
--- a/src/target/armv4_5.h
+++ b/src/target/armv4_5.h
@@ -109,9 +109,9 @@ struct arm
struct etm_context *etm;
int (*full_context)(struct target *target);
- int (*read_core_reg)(struct target *target,
+ int (*read_core_reg)(struct target *target, struct reg *reg,
int num, enum armv4_5_mode mode);
- int (*write_core_reg)(struct target *target,
+ int (*write_core_reg)(struct target *target, struct reg *reg,
int num, enum armv4_5_mode mode, uint32_t value);
void *arch_info;
};
@@ -137,7 +137,7 @@ struct armv4_5_algorithm
enum armv4_5_state core_state;
};
-struct armv4_5_core_reg
+struct arm_reg
{
int num;
enum armv4_5_mode mode;