> Yes. I think the code you are referring to is this:

See attached patch for the code I want to delete now.



-- 
Øyvind Harboe

Can Zylin Consulting help on your project?

US toll free 1-866-980-3434 / International +47 51 87 40 27

http://www.zylin.com/zy1000.html
ARM7 ARM9 ARM11 XScale Cortex
JTAG debugger and flash programmer
From 977df18f50f0f4d2310787787c03d83c2498da1a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=98yvind=20Harboe?= <oyvind.har...@zylin.com>
Date: Fri, 1 Apr 2011 09:59:30 +0200
Subject: [PATCH] cortex_a: remove broken dbgbase patchup code
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

the patchup code would get false positives when checking
whether a dbgbase had to be corrected.

The solution is to have autodetect default, with manual override
in scripts.

Signed-off-by: Øyvind Harboe <oyvind.har...@zylin.com>
---
 src/target/arm_adi_v5.c |   25 -------------------------
 1 files changed, 0 insertions(+), 25 deletions(-)

diff --git a/src/target/arm_adi_v5.c b/src/target/arm_adi_v5.c
index b3c491b..cd6e5de 100644
--- a/src/target/arm_adi_v5.c
+++ b/src/target/arm_adi_v5.c
@@ -1083,23 +1083,11 @@ is_dap_cid_ok(uint32_t cid3, uint32_t cid2, uint32_t cid1, uint32_t cid0)
 			&& ((cid1 & 0x0f) == 0) && cid0 == 0x0d;
 }
 
-struct broken_cpu {
-	uint32_t	dbgbase;
-	uint32_t	apid;
-	uint32_t	idcode;
-	uint32_t	correct_dbgbase;
-	char		*model;
-} broken_cpus[] = {
-	{ 0x80000000, 0x04770002, 0x1ba00477, 0x60000000, "imx51" },
-	{ 0x80040000, 0x04770002, 0x3b95c02f, 0x80000000, "omap4430" },
-};
-
 int dap_get_debugbase(struct adiv5_dap *dap, int ap,
 			uint32_t *out_dbgbase, uint32_t *out_apid)
 {
 	uint32_t ap_old;
 	int retval;
-	unsigned int i;
 	uint32_t dbgbase, apid, idcode;
 
 	/* AP address is in bits 31:24 of DP_SELECT */
@@ -1131,19 +1119,6 @@ int dap_get_debugbase(struct adiv5_dap *dap, int ap,
 	if (tap == NULL || !tap->hasidcode)
 		return ERROR_OK;
 
-	/* Some CPUs are messed up, so fixup if needed. */
-	for (i = 0; i < sizeof(broken_cpus)/sizeof(struct broken_cpu); i++)
-		if (broken_cpus[i].dbgbase == dbgbase &&
-			broken_cpus[i].apid == apid &&
-			broken_cpus[i].idcode == idcode) {
-			LOG_WARNING("Found broken CPU (%s), trying to fixup "
-				"ROM Table location from 0x%08x to 0x%08x",
-				broken_cpus[i].model, dbgbase,
-				broken_cpus[i].correct_dbgbase);
-			dbgbase = broken_cpus[i].correct_dbgbase;
-			break;
-		}
-
 	dap_ap_select(dap, ap_old);
 
 	/* The asignment happens only here to prevent modification of these
-- 
1.7.2.3

_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to