drivers/jlink: fix SWD speed config, and set it before sending anything
During the initialisation a driver might need to communicate with the target (e.g. sending jtag2swd sequence), so when doing so it should honour the user-specified speed. Change-Id: If84fea6057fda9edcf2c0a653edfbab2500e3cdd [andrew.smirnov@gmail.com: fix khz/hz confusion] Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Paul Fertser <fercerpav@gmail.com> Reviewed-on: http://openocd.zylin.com/2224 Tested-by: jenkins Reviewed-by: Andreas Fritiofson <andreas.fritiofson@gmail.com>__archive__
parent
6733253219
commit
66e20117e8
|
@ -559,6 +559,8 @@ static int jlink_init(void)
|
|||
jtag_sleep(3000);
|
||||
jlink_tap_init();
|
||||
|
||||
jlink_speed(jtag_get_speed_khz());
|
||||
|
||||
if (!swd_mode) {
|
||||
/* v5/6 jlink seems to have an issue if the first tap move
|
||||
* is not divisible by 8, so we send a TLR on first power up */
|
||||
|
@ -1343,7 +1345,7 @@ static void jlink_swd_read_reg(struct adiv5_dap *dap, uint8_t cmd, uint32_t *val
|
|||
static int_least32_t jlink_swd_frequency(struct adiv5_dap *dap, int_least32_t hz)
|
||||
{
|
||||
if (hz > 0)
|
||||
jlink_speed(hz);
|
||||
jlink_speed(hz / 1000);
|
||||
|
||||
return hz;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue