ARM: list number of HW breakpoints/watchpoints
When starting up, say how many hardware breakpoints and watchpoints are available on various targets. This makes it easier to tell GDB how many of those resources exist. Its remote protocol currently has no way to ask OpenOCD for that information, so it must configured by hand (or not at all). Update the docs to mention this; remove obsolete "don't do this" info. Presentation of GDB setup information is still a mess, but at least it calls out the three components that need setup. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
This commit is contained in:
@@ -1608,6 +1608,12 @@ static int cortex_m3_examine(struct target *target)
|
||||
|
||||
/* Setup DWT */
|
||||
cortex_m3_dwt_setup(cortex_m3, target);
|
||||
|
||||
/* These hardware breakpoints only work for code in flash! */
|
||||
LOG_INFO("%s: hardware has %d breakpoints, %d watchpoints",
|
||||
target_name(target),
|
||||
cortex_m3->fp_num_code,
|
||||
cortex_m3->dwt_num_comp);
|
||||
}
|
||||
|
||||
return ERROR_OK;
|
||||
|
||||
@@ -289,6 +289,9 @@ embeddedice_build_reg_cache(struct target *target, struct arm7_9_common *arm7_9)
|
||||
buf_get_u32(reg_list[EICE_COMMS_CTRL].value, 0, 32));
|
||||
}
|
||||
|
||||
LOG_INFO("%s: hardware has 2 breakpoints or watchpoints",
|
||||
target_name(target));
|
||||
|
||||
return reg_cache;
|
||||
}
|
||||
|
||||
|
||||
@@ -2970,6 +2970,9 @@ static int xscale_init_arch_info(struct target *target,
|
||||
xscale->dbr0_used = 0;
|
||||
xscale->dbr1_used = 0;
|
||||
|
||||
LOG_INFO("%s: hardware has 2 breakpoints and 2 watchpoints",
|
||||
target_name(target));
|
||||
|
||||
xscale->arm_bkpt = ARMV5_BKPT(0x0);
|
||||
xscale->thumb_bkpt = ARMV5_T_BKPT(0x0) & 0xffff;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user