usleep to jtag_sleep

this will help avoid platform specific timing issues
__archive__
Rodrigo L. Rosa 2011-08-31 15:43:11 -07:00
parent c4a1728a2d
commit 355f183adb
1 changed files with 16 additions and 16 deletions

View File

@ -582,11 +582,11 @@ static int eonce_enter_debug_mode(struct target * target, uint16_t * eonce_statu
instr = MASTER_TAP_CMD_IDCODE; instr = MASTER_TAP_CMD_IDCODE;
retval = dsp5680xx_irscan(target, & instr, & ir_out,DSP5680XX_JTAG_MASTER_TAP_IRLEN); retval = dsp5680xx_irscan(target, & instr, & ir_out,DSP5680XX_JTAG_MASTER_TAP_IRLEN);
err_check_propagate(retval); err_check_propagate(retval);
usleep(TIME_DIV_FREESCALE*100*1000); jtag_add_sleep(TIME_DIV_FREESCALE*100*1000);
// Enable EOnCE module // Enable EOnCE module
jtag_add_reset(0,1); jtag_add_reset(0,1);
usleep(TIME_DIV_FREESCALE*200*1000); jtag_add_sleep(TIME_DIV_FREESCALE*200*1000);
instr = 0x0606ffff;// This was selected experimentally. instr = 0x0606ffff;// This was selected experimentally.
retval = dsp5680xx_drscan(target,(uint8_t *) & instr,(uint8_t *) & ir_out,32); retval = dsp5680xx_drscan(target,(uint8_t *) & instr,(uint8_t *) & ir_out,32);
err_check_propagate(retval); err_check_propagate(retval);
@ -608,9 +608,9 @@ static int eonce_enter_debug_mode(struct target * target, uint16_t * eonce_statu
retval = dsp5680xx_drscan(target,(uint8_t *) & instr_16,(uint8_t *) & read_16,8); retval = dsp5680xx_drscan(target,(uint8_t *) & instr_16,(uint8_t *) & read_16,8);
instr_16 = 0x20; instr_16 = 0x20;
retval = dsp5680xx_drscan(target,(uint8_t *) & instr_16,(uint8_t *) & read_16,8); retval = dsp5680xx_drscan(target,(uint8_t *) & instr_16,(uint8_t *) & read_16,8);
usleep(TIME_DIV_FREESCALE*100*1000); jtag_add_sleep(TIME_DIV_FREESCALE*100*1000);
jtag_add_reset(0,0); jtag_add_reset(0,0);
usleep(TIME_DIV_FREESCALE*300*1000); jtag_add_sleep(TIME_DIV_FREESCALE*300*1000);
instr = JTAG_INSTR_ENABLE_ONCE; instr = JTAG_INSTR_ENABLE_ONCE;
//Two rounds of jtag 0x6 (enable eonce) to enable EOnCE. //Two rounds of jtag 0x6 (enable eonce) to enable EOnCE.
@ -1640,11 +1640,11 @@ int dsp5680xx_f_unlock(struct target * target){
} }
jtag_add_reset(0,1); jtag_add_reset(0,1);
usleep(TIME_DIV_FREESCALE*200*1000); jtag_add_sleep(TIME_DIV_FREESCALE*200*1000);
retval = reset_jtag(); retval = reset_jtag();
err_check(retval,"Failed to reset JTAG state machine"); err_check(retval,"Failed to reset JTAG state machine");
usleep(150); jtag_add_sleep(150);
// Enable core tap // Enable core tap
tap_chp->enabled = true; tap_chp->enabled = true;
@ -1654,9 +1654,9 @@ int dsp5680xx_f_unlock(struct target * target){
instr = JTAG_INSTR_DEBUG_REQUEST; instr = JTAG_INSTR_DEBUG_REQUEST;
retval = dsp5680xx_irscan(target, & instr, & ir_out,DSP5680XX_JTAG_CORE_TAP_IRLEN); retval = dsp5680xx_irscan(target, & instr, & ir_out,DSP5680XX_JTAG_CORE_TAP_IRLEN);
err_check_propagate(retval); err_check_propagate(retval);
usleep(TIME_DIV_FREESCALE*100*1000); jtag_add_sleep(TIME_DIV_FREESCALE*100*1000);
jtag_add_reset(0,0); jtag_add_reset(0,0);
usleep(TIME_DIV_FREESCALE*300*1000); jtag_add_sleep(TIME_DIV_FREESCALE*300*1000);
// Enable master tap // Enable master tap
tap_chp->enabled = false; tap_chp->enabled = false;
@ -1672,13 +1672,13 @@ int dsp5680xx_f_unlock(struct target * target){
retval = dsp5680xx_drscan(target,(uint8_t *) & instr,(uint8_t *) & ir_out,16); retval = dsp5680xx_drscan(target,(uint8_t *) & instr,(uint8_t *) & ir_out,16);
err_check_propagate(retval); err_check_propagate(retval);
usleep(TIME_DIV_FREESCALE*150*1000); jtag_add_sleep(TIME_DIV_FREESCALE*150*1000);
jtag_add_reset(0,1); jtag_add_reset(0,1);
usleep(TIME_DIV_FREESCALE*200*1000); jtag_add_sleep(TIME_DIV_FREESCALE*200*1000);
retval = reset_jtag(); retval = reset_jtag();
err_check(retval,"Failed to reset JTAG state machine"); err_check(retval,"Failed to reset JTAG state machine");
usleep(150); jtag_add_sleep(150);
instr = 0x0606ffff; instr = 0x0606ffff;
retval = dsp5680xx_drscan(target,(uint8_t *) & instr,(uint8_t *) & ir_out,32); retval = dsp5680xx_drscan(target,(uint8_t *) & instr,(uint8_t *) & ir_out,32);
@ -1706,9 +1706,9 @@ int dsp5680xx_f_unlock(struct target * target){
retval = dsp5680xx_drscan(target,(uint8_t *) & instr_16,(uint8_t *) & read_16,8); retval = dsp5680xx_drscan(target,(uint8_t *) & instr_16,(uint8_t *) & read_16,8);
instr_16 = 0x20; instr_16 = 0x20;
retval = dsp5680xx_drscan(target,(uint8_t *) & instr_16,(uint8_t *) & read_16,8); retval = dsp5680xx_drscan(target,(uint8_t *) & instr_16,(uint8_t *) & read_16,8);
usleep(TIME_DIV_FREESCALE*100*1000); jtag_add_sleep(TIME_DIV_FREESCALE*100*1000);
jtag_add_reset(0,0); jtag_add_reset(0,0);
usleep(TIME_DIV_FREESCALE*300*1000); jtag_add_sleep(TIME_DIV_FREESCALE*300*1000);
return retval; return retval;
} }
@ -1719,13 +1719,13 @@ int dsp5680xx_f_lock(struct target * target){
err_check_propagate(retval); err_check_propagate(retval);
jtag_add_reset(0,1); jtag_add_reset(0,1);
usleep(TIME_DIV_FREESCALE*200*1000); jtag_add_sleep(TIME_DIV_FREESCALE*200*1000);
retval = reset_jtag(); retval = reset_jtag();
err_check(retval,"Failed to reset JTAG state machine"); err_check(retval,"Failed to reset JTAG state machine");
usleep(TIME_DIV_FREESCALE*100*1000); jtag_add_sleep(TIME_DIV_FREESCALE*100*1000);
jtag_add_reset(0,0); jtag_add_reset(0,0);
usleep(TIME_DIV_FREESCALE*300*1000); jtag_add_sleep(TIME_DIV_FREESCALE*300*1000);
return retval; return retval;
} }