void jtagtap_reset(void) { #ifdef TRST_PORT volatile int i; gpio_clear(TRST_PORT, TRST_PIN); for(i = 0; i < 10000; i++) asm("nop"); gpio_set(TRST_PORT, TRST_PIN); #endif jtagtap_soft_reset(); }
int jtagtap_init(void) { TMS_SET_MODE(); /* Go to JTAG mode for SWJ-DP */ for(int i = 0; i <= 50; i++) jtagtap_next(1, 0); /* Reset SW-DP */ jtagtap_tms_seq(0xE73C, 16); /* SWD to JTAG sequence */ jtagtap_soft_reset(); return 0; }
int jtagtap_init(void) { TMS_SET_MODE(); for(int i = 0; i <= 50; i++) jtagtap_next(1,0); jtagtap_tms_seq(0xE73C, 16); jtagtap_soft_reset(); return 0; }
void jtagtap_reset(void) { #ifdef TRST_PORT if (platform_hwversion() == 0) { volatile int i; gpio_clear(TRST_PORT, TRST_PIN); for(i = 0; i < 10000; i++) asm("nop"); gpio_set(TRST_PORT, TRST_PIN); } #endif jtagtap_soft_reset(); }
int jtagtap_init(void) { gpio_set_mode(TMS_PORT, GPIO_MODE_OUTPUT_50_MHZ, GPIO_CNF_OUTPUT_PUSHPULL, TMS_PIN); /* Go to JTAG mode for SWJ-DP */ for(int i = 0; i <= 50; i++) jtagtap_next(1, 0); /* Reset SW-DP */ jtagtap_tms_seq(0xE73C, 16); /* SWD to JTAG sequence */ jtagtap_soft_reset(); return 0; }
int jtagtap_init(void) { int err; assert(ftdic != NULL); if((err = ftdi_set_bitmode(ftdic, 0, BITMODE_RESET)) || (err = ftdi_set_bitmode(ftdic, 0, BITMODE_MPSSE))) { fprintf(stderr, "ftdi_set_bitmode: %d: %s\n", err, ftdi_get_error_string(ftdic)); abort(); } assert(ftdi_write_data(ftdic, "\x8B\x86\x06\x00\x80\xA8\xAB\x85", 8) == 8); /* Go to JTAG mode for SWJ-DP */ for(int i = 0; i <= 50; i++) jtagtap_next(1, 0); /* Reset SW-DP */ jtagtap_tms_seq(0xE73C, 16); /* SWD to JTAG sequence */ jtagtap_soft_reset(); return 0; }
void jtagtap_reset(void) { jtagtap_soft_reset(); }