arm_adi_v5: Add a back-pointer from an AP to its DAP
authorAndreas Fritiofson <andreas.fritiofson@gmail.com>
Fri, 13 Nov 2015 23:51:40 +0000 (00:51 +0100)
committerAndreas Fritiofson <andreas.fritiofson@gmail.com>
Tue, 29 Dec 2015 20:27:26 +0000 (20:27 +0000)
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 <andreas.fritiofson@gmail.com>
Reviewed-on: http://openocd.zylin.com/3144
Tested-by: jenkins
Reviewed-by: Matthias Welwarsky <matthias@welwarsky.de>
src/target/arm_adi_v5.c
src/target/arm_adi_v5.h

index 70ef302dc44f47a3d9fe970a02dd900513ae077b..53c0c4e15ae0af1dfb8de12645ac31b6506c4f1c 100644 (file)
@@ -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 */
index 186397e896bb032e267d4fb0386e383bbea7765f..32b723959ab140813802a014239a2bd4d94dd6af 100644 (file)
  * 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.
         */