This is an automated email from Gerrit. "Daniel Goehring <[email protected]>" just uploaded a new patch set to Gerrit, which you can find at https://review.openocd.org/c/openocd/+/9261
-- gerrit commit 8bebf1d7b58d2cd9c4194b1b731f51850fd7473e Author: Daniel Goehring <[email protected]> Date: Mon Jul 14 19:20:46 2025 -0600 target/arm: add nested AP AArch64 target support For the AArch64 processor target, add nested AP support. Change-Id: I2aecb950edf32eac8bc0ee40c7a29cc631103e78 Signed-off-by: Daniel Goehring <[email protected]> diff --git a/src/target/aarch64.c b/src/target/aarch64.c index ed9cb48aa7..d776eeba16 100644 --- a/src/target/aarch64.c +++ b/src/target/aarch64.c @@ -2639,7 +2639,11 @@ static int aarch64_examine_first(struct target *target) return retval; } } else { - armv8->debug_ap = dap_get_ap(swjdp, pc->adiv5_config.ap_num); + if (pc->adiv5_config.ap_num_gateway == DP_APSEL_INVALID) + armv8->debug_ap = dap_get_ap(swjdp, pc->adiv5_config.ap_num); + else + armv8->debug_ap = dap_get_ap_gateway(swjdp, pc->adiv5_config.ap_num, pc->adiv5_config.ap_num_gateway); + if (!armv8->debug_ap) { LOG_ERROR("Cannot get AP"); return ERROR_FAIL; @@ -2919,6 +2923,7 @@ static int aarch64_jim_configure(struct target *target, struct jim_getopt_info * if (!pc) { pc = calloc(1, sizeof(struct aarch64_private_config)); pc->adiv5_config.ap_num = DP_APSEL_INVALID; + pc->adiv5_config.ap_num_gateway = DP_APSEL_INVALID; target->private_config = pc; } --
