X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Ftarget%2Farm966e.h;h=24dcec306401afe677c0368786df51f6e7e28429;hb=8e8a359af2a5ab3cc7c795e147aa0ca3ec06288f;hp=995a79727f268eac5f3d5c117c722c045cc70e9e;hpb=68b05c55759970657c32607b3ce27c42e65cdad0;p=fw%2Fopenocd diff --git a/src/target/arm966e.h b/src/target/arm966e.h index 995a79727..24dcec306 100644 --- a/src/target/arm966e.h +++ b/src/target/arm966e.h @@ -27,14 +27,24 @@ #define ARM966E_COMMON_MAGIC 0x20f920f9 -typedef struct arm966e_common_s +struct arm966e_common { + struct arm7_9_common arm7_9_common; int common_magic; - arm9tdmi_common_t arm9tdmi_common; - u32 cp15_control_reg; -} arm966e_common_t; + uint32_t cp15_control_reg; +}; -extern int arm966e_read_cp15(target_t *target, int reg_addr, u32 *value); -extern int arm966e_write_cp15(target_t *target, int reg_addr, u32 value); +static inline struct arm966e_common * +target_to_arm966(struct target *target) +{ + return container_of(target->arch_info, struct arm966e_common, + arm7_9_common.armv4_5_common); +} + +int arm966e_init_arch_info(struct target *target, + struct arm966e_common *arm966e, struct jtag_tap *tap); +int arm966e_write_cp15(struct target *target, int reg_addr, uint32_t value); + +extern const struct command_registration arm966e_command_handlers[]; #endif /* ARM966E_H */