From 5ae2fbda2b8744752f9a8d5dbdb0090df812a894 Mon Sep 17 00:00:00 2001 From: Andreas Fritiofson Date: Sat, 14 Nov 2015 00:51:40 +0100 Subject: [PATCH] arm_adi_v5: Add a back-pointer from an AP to its DAP This will make it possible to reference directly the AP used for debug in the target instance and remove the DAP reference. This will in turn enable getting rid of the need to select an "active" AP in the DAP (using dap apsel). Change-Id: I265846a427c714204f4fd3df3cdb75843686c2d0 Signed-off-by: Andreas Fritiofson Reviewed-on: http://openocd.zylin.com/3144 Tested-by: jenkins Reviewed-by: Matthias Welwarsky --- src/target/arm_adi_v5.c | 2 ++ src/target/arm_adi_v5.h | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/src/target/arm_adi_v5.c b/src/target/arm_adi_v5.c index 70ef302d..53c0c4e1 100644 --- a/src/target/arm_adi_v5.c +++ b/src/target/arm_adi_v5.c @@ -638,6 +638,8 @@ struct adiv5_dap *dap_init(void) int i; /* Set up with safe defaults */ for (i = 0; i <= 255; i++) { + dap->ap[i].dap = dap; + dap->ap[i].ap_num = i; /* memaccess_tck max is 255 */ dap->ap[i].memaccess_tck = 255; /* Number of bits for tar autoincrement, impl. dep. at least 10 */ diff --git a/src/target/arm_adi_v5.h b/src/target/arm_adi_v5.h index 186397e8..32b72395 100644 --- a/src/target/arm_adi_v5.h +++ b/src/target/arm_adi_v5.h @@ -127,6 +127,16 @@ * Most common is a MEM-AP, for memory access. */ struct adiv5_ap { + /** + * DAP this AP belongs to. + */ + struct adiv5_dap *dap; + + /** + * Number of this AP. + */ + uint8_t ap_num; + /** * Default value for (MEM-AP) AP_REG_CSW register. */ -- 2.39.5