cortex_m: fix autoincrement range of Cortex-M7
Cortex-M7 has autoincrement range only 1024 bytes, surprisingly smaller than M3, M4. Change-Id: I35ff1f0e093aac4af79f98eb3b8058d4295942d1 Signed-off-by: Tomas Vanek <vanekt@fbl.cz> Reviewed-on: http://openocd.zylin.com/3737 Tested-by: jenkins Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>gitignore-build
parent
9292899bf4
commit
640894e731
|
@ -1976,10 +1976,14 @@ int cortex_m_examine(struct target *target)
|
|||
armv7m->arm.core_cache->num_regs = ARMV7M_NUM_CORE_REGS_NOFP;
|
||||
}
|
||||
|
||||
if ((i == 3 || i == 4 || i == 7) && !armv7m->stlink) {
|
||||
/* Cortex-M3/M4/M7 have at least 4096 bytes autoincrement range,
|
||||
* s. ARM IHI 0031C: MEM-AP 7.2.2 */
|
||||
armv7m->debug_ap->tar_autoincr_block = (1 << 12);
|
||||
if (!armv7m->stlink) {
|
||||
if (i == 3 || i == 4)
|
||||
/* Cortex-M3/M4 have 4096 bytes autoincrement range,
|
||||
* s. ARM IHI 0031C: MEM-AP 7.2.2 */
|
||||
armv7m->debug_ap->tar_autoincr_block = (1 << 12);
|
||||
else if (i == 7)
|
||||
/* Cortex-M7 has only 1024 bytes autoincrement range */
|
||||
armv7m->debug_ap->tar_autoincr_block = (1 << 10);
|
||||
}
|
||||
|
||||
/* Configure trace modules */
|
||||
|
|
Loading…
Reference in New Issue