X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Ftarget%2Fbreakpoints.h;h=912117fc46d109fe1fbbb09a3c83b4c84e3420d5;hb=566faa17de575ff58beffbc4a8961bf3f8199b93;hp=a65f20e373a9a8454cd7709b51a82163c26047c5;hpb=0f1163e823c6ca3c2a81fa296157f5dde0635fea;p=openocd.git diff --git a/src/target/breakpoints.h b/src/target/breakpoints.h index a65f20e373..912117fc46 100644 --- a/src/target/breakpoints.h +++ b/src/target/breakpoints.h @@ -20,7 +20,7 @@ #ifndef BREAKPOINTS_H #define BREAKPOINTS_H -#include "types.h" +#include struct target; @@ -38,12 +38,14 @@ enum watchpoint_rw struct breakpoint { uint32_t address; + uint32_t asid; int length; enum breakpoint_type type; int set; uint8_t *orig_instr; struct breakpoint *next; - int unique_id; + uint32_t unique_id; + int linked_BRP; }; struct watchpoint @@ -61,6 +63,10 @@ struct watchpoint void breakpoint_clear_target(struct target *target); int breakpoint_add(struct target *target, uint32_t address, uint32_t length, enum breakpoint_type type); +int context_breakpoint_add(struct target *target, + uint32_t asid, uint32_t length, enum breakpoint_type type); +int hybrid_breakpoint_add(struct target *target, + uint32_t address, uint32_t asid, uint32_t length, enum breakpoint_type type); void breakpoint_remove(struct target *target, uint32_t address); struct breakpoint* breakpoint_find(struct target *target, uint32_t address);