X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Ftarget%2Farmv7a.h;h=2ad0321f1abf4fc27c9742a06fd729d005a24e1d;hb=5eb638c71e95048b090b8a19640d7d4902c07902;hp=b23e706555503e43aff2a51c4a44350fb5ffc535;hpb=7e4f9ac6979029f2cd0fd95d77cc9d8c8b46901b;p=openocd.git diff --git a/src/target/armv7a.h b/src/target/armv7a.h index b23e706555..2ad0321f1a 100644 --- a/src/target/armv7a.h +++ b/src/target/armv7a.h @@ -98,9 +98,15 @@ typedef struct armv7a_common_s /* arm adp debug port */ swjdp_common_t swjdp_info; + + /* Core Debug Unit */ + uint32_t debug_base; + uint8_t debug_ap; + uint8_t memory_ap; + + /* Cache and Memory Management Unit */ armv4_5_mmu_common_t armv4_5_mmu; armv4_5_common_t armv4_5_common; - void *arch_info; // int (*full_context)(struct target_s *target); // int (*read_core_reg)(struct target_s *target, int num, enum armv7a_mode mode); @@ -113,7 +119,6 @@ typedef struct armv7a_common_s uint32_t CRn, uint32_t CRm, uint32_t value); int (*examine_debug_reason)(target_t *target); - void (*pre_debug_entry)(target_t *target); void (*post_debug_entry)(target_t *target); void (*pre_restore_context)(target_t *target); @@ -121,6 +126,13 @@ typedef struct armv7a_common_s } armv7a_common_t; +static inline struct armv7a_common_s * +target_to_armv7a(struct target_s *target) +{ + return container_of(target->arch_info, struct armv7a_common_s, + armv4_5_common); +} + typedef struct armv7a_algorithm_s { int common_magic;