flash-bsl RTS/DTR via GPIO

This commit is contained in:
David Siroky 2016-07-18 16:05:16 +02:00
parent 7cbc37c633
commit 88b37e5007
1 changed files with 13 additions and 3 deletions

View File

@ -597,10 +597,20 @@ static device_t flash_bsl_open(const struct device_args *args)
dev->long_password = args->flags & DEVICE_FLAG_LONG_PW; dev->long_password = args->flags & DEVICE_FLAG_LONG_PW;
/* enter bootloader */ /* enter bootloader */
if ( args->bsl_gpio_used )
{
if (bsllib_seq_do_gpio(args->bsl_gpio_rts, args->bsl_gpio_dtr, dev->seq) < 0) {
printc_err("BSL entry sequence failed\n");
goto fail;
}
}
else
{
if (bsllib_seq_do(dev->serial_fd, dev->seq) < 0) { if (bsllib_seq_do(dev->serial_fd, dev->seq) < 0) {
printc_err("BSL entry sequence failed\n"); printc_err("BSL entry sequence failed\n");
goto fail; goto fail;
} }
}
delay_ms(500); delay_ms(500);