From 0b641dac717ffe1391cc53dc33ad78ba79a26d2c Mon Sep 17 00:00:00 2001 From: simon qian Date: Sun, 17 Jan 2010 23:37:15 -0800 Subject: read target voltage first in vsllink The very first command after init command should be "read target voltage". This is a tweak for the Old Versaloon firmware. Without this, in most most cases, it works. Under Ubuntu9.04, there is a chance that the USB will fail. The problem disappears if I read target voltage first. For the lastest Versaloon firmware, it's OK. Signed-off-by: David Brownell --- src/jtag/drivers/vsllink.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src') diff --git a/src/jtag/drivers/vsllink.c b/src/jtag/drivers/vsllink.c index d3012906..5c9a8db0 100644 --- a/src/jtag/drivers/vsllink.c +++ b/src/jtag/drivers/vsllink.c @@ -476,6 +476,14 @@ static int vsllink_init(void) } VSLLINK_USB_TIMEOUT = to_tmp; + vsllink_simple_command(0x01); + result = vsllink_usb_read(vsllink_handle); + if (result != 2) + LOG_WARNING("Fail to get target voltage"); + else + LOG_INFO("Target runs at %d mV", vsllink_usb_in_buffer[0] + + (vsllink_usb_in_buffer[1] << 8)); + // connect to vsllink vsllink_connect(); // initialize function pointers -- cgit v1.2.3