X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Ftarget%2Ftarget_type.h;h=a8928911f65661453b0550416a25c222aa072f64;hb=21687eb983a4d5e30cd9c4050b9ebce2f3b280c7;hp=34e2778ad0c53d9e06c3937066add6b30a0e37f2;hpb=47b8cf84202bf792cf66fbfa01169e9592236b8a;p=openocd.git diff --git a/src/target/target_type.h b/src/target/target_type.h index 34e2778ad0..a8928911f6 100644 --- a/src/target/target_type.h +++ b/src/target/target_type.h @@ -53,6 +53,7 @@ struct target_type { /* halt will log a warning, but return ERROR_OK if the target is already halted. */ int (*halt)(struct target *target); + /* See target.c target_resume() for documentation. */ int (*resume)(struct target *target, int current, target_addr_t address, int handle_breakpoints, int debug_execution); int (*step)(struct target *target, int current, target_addr_t address, @@ -83,10 +84,19 @@ struct target_type { * "halt". * * reset run; halt - */ + */ int (*deassert_reset)(struct target *target); int (*soft_reset_halt)(struct target *target); + /** + * Target architecture for GDB. + * + * The string returned by this function will not be automatically freed; + * if dynamic allocation is used for this value, it must be managed by + * the target, ideally by caching the result for subsequent calls. + */ + const char *(*get_gdb_arch)(struct target *target); + /** * Target register access for GDB. Do @b not call this function * directly, use target_get_gdb_reg_list() instead. @@ -129,8 +139,9 @@ struct target_type { int (*checksum_memory)(struct target *target, target_addr_t address, uint32_t count, uint32_t *checksum); - int (*blank_check_memory)(struct target *target, target_addr_t address, - uint32_t count, uint32_t *blank, uint8_t erased_value); + int (*blank_check_memory)(struct target *target, + struct target_memory_check_block *blocks, int num_blocks, + uint8_t erased_value); /* * target break-/watchpoint control