Revert "jtag: Make jtag_devs argument to jtag_handler."

This reverts commit 6308506276.
This commit is contained in:
dragonmux 2022-01-21 21:05:13 -05:00 committed by Piotr Esden-Tempski
parent 024152b03e
commit 7d2afcff06
6 changed files with 8 additions and 8 deletions

View File

@ -1010,7 +1010,7 @@ int jtag_scan_stlinkv2(bmp_info_t *info, const uint8_t *irlens)
if((jtag_devs[i].jd_idcode & dev_descr[j].idmask) == if((jtag_devs[i].jd_idcode & dev_descr[j].idmask) ==
dev_descr[j].idcode) { dev_descr[j].idcode) {
if(dev_descr[j].handler) if(dev_descr[j].handler)
dev_descr[j].handler(&jtag_devs[i]); dev_descr[j].handler(i, dev_descr[j].idcode);
break; break;
} }

View File

@ -285,7 +285,7 @@ void adiv5_ap_ref(ADIv5_AP_t *ap);
void adiv5_ap_unref(ADIv5_AP_t *ap); void adiv5_ap_unref(ADIv5_AP_t *ap);
void platform_add_jtag_dev(const int dev_index, const jtag_dev_t *jtag_dev); void platform_add_jtag_dev(const int dev_index, const jtag_dev_t *jtag_dev);
void adiv5_jtag_dp_handler(jtag_dev_t *jd); void adiv5_jtag_dp_handler(uint8_t jd_index, uint32_t j_idcode);
int platform_jtag_dp_init(ADIv5_DP_t *dp); int platform_jtag_dp_init(ADIv5_DP_t *dp);
int swdptap_init(ADIv5_DP_t *dp); int swdptap_init(ADIv5_DP_t *dp);

View File

@ -39,7 +39,7 @@
static uint32_t adiv5_jtagdp_error(ADIv5_DP_t *dp); static uint32_t adiv5_jtagdp_error(ADIv5_DP_t *dp);
void adiv5_jtag_dp_handler(jtag_dev_t *jd) void adiv5_jtag_dp_handler(uint8_t jd_index, uint32_t j_idcode)
{ {
ADIv5_DP_t *dp = (void*)calloc(1, sizeof(*dp)); ADIv5_DP_t *dp = (void*)calloc(1, sizeof(*dp));
if (!dp) { /* calloc failed: heap exhaustion */ if (!dp) { /* calloc failed: heap exhaustion */
@ -47,8 +47,8 @@ void adiv5_jtag_dp_handler(jtag_dev_t *jd)
return; return;
} }
dp->dp_jd_index = jd->jd_dev; dp->dp_jd_index = jd_index;
dp->idcode = jd->jd_idcode; dp->idcode = j_idcode;
if ((PC_HOSTED == 0 ) || (!platform_jtag_dp_init(dp))) { if ((PC_HOSTED == 0 ) || (!platform_jtag_dp_init(dp))) {
dp->dp_read = fw_adiv5_jtagdp_read; dp->dp_read = fw_adiv5_jtagdp_read;
dp->error = adiv5_jtagdp_error; dp->error = adiv5_jtagdp_error;

View File

@ -22,7 +22,7 @@ typedef const struct jtag_dev_descr_s {
const uint32_t idcode; const uint32_t idcode;
const uint32_t idmask; const uint32_t idmask;
const char * const descr; const char * const descr;
void (*const handler)(jtag_dev_t *jd); void (*const handler)(uint8_t jd_index, uint32_t j_idcode);
} jtag_dev_descr_t; } jtag_dev_descr_t;
extern jtag_dev_descr_t dev_descr[]; extern jtag_dev_descr_t dev_descr[];

View File

@ -30,7 +30,7 @@
#include "adiv5.h" #include "adiv5.h"
#include "jtag_devs.h" #include "jtag_devs.h"
jtag_dev_t jtag_devs[JTAG_MAX_DEVS+1]; struct jtag_dev_s jtag_devs[JTAG_MAX_DEVS+1];
int jtag_dev_count; int jtag_dev_count;
/* bucket of ones for don't care TDI */ /* bucket of ones for don't care TDI */

View File

@ -40,7 +40,7 @@ typedef struct jtag_dev_s {
uint32_t current_ir; uint32_t current_ir;
} jtag_dev_t; } jtag_dev_t;
extern jtag_dev_t jtag_devs[JTAG_MAX_DEVS+1]; extern struct jtag_dev_s jtag_devs[JTAG_MAX_DEVS+1];
extern int jtag_dev_count; extern int jtag_dev_count;
void jtag_dev_write_ir(jtag_proc_t *jp, uint8_t jd_index, uint32_t ir); void jtag_dev_write_ir(jtag_proc_t *jp, uint8_t jd_index, uint32_t ir);