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 <dbrownell@users.sourceforge.net>
This commit is contained in:
simon qian 2010-01-17 23:37:15 -08:00 committed by David Brownell
parent daa1ff3535
commit 0b641dac71
1 changed files with 8 additions and 0 deletions

View File

@ -476,6 +476,14 @@ static int vsllink_init(void)
} }
VSLLINK_USB_TIMEOUT = to_tmp; 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 // connect to vsllink
vsllink_connect(); vsllink_connect();
// initialize function pointers // initialize function pointers