mips_m4k.c: D or I breaks only if they supported.

For example Realtek RTL8186 (Lexra LX5280 core) don't
support break- and watchpoints.

Change-Id: Ie00102da4bf13a8c42a9ad05910c66884f297cfd
Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
Reviewed-on: http://openocd.zylin.com/1933
Tested-by: jenkins
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
This commit is contained in:
Oleksij Rempel 2014-01-22 12:27:19 +01:00 committed by Spencer Oliver
parent 02ac60b000
commit ecb6f8c23e
1 changed files with 25 additions and 21 deletions

View File

@ -58,6 +58,7 @@ static int mips_m4k_examine_debug_reason(struct target *target)
if ((target->debug_reason != DBG_REASON_DBGRQ)
&& (target->debug_reason != DBG_REASON_SINGLESTEP)) {
if (ejtag_info->debug_caps & EJTAG_DCR_IB) {
/* get info about inst breakpoint support */
retval = target_read_u32(target,
ejtag_info->ejtag_ibs_addr, &break_status);
@ -71,7 +72,9 @@ static int mips_m4k_examine_debug_reason(struct target *target)
return retval;
target->debug_reason = DBG_REASON_BREAKPOINT;
}
}
if (ejtag_info->debug_caps & EJTAG_DCR_DB) {
/* get info about data breakpoint support */
retval = target_read_u32(target,
ejtag_info->ejtag_dbs_addr, &break_status);
@ -86,6 +89,7 @@ static int mips_m4k_examine_debug_reason(struct target *target)
target->debug_reason = DBG_REASON_WATCHPOINT;
}
}
}
return ERROR_OK;
}