Using burst_ind branch, the code switches to a higher speed in function serial_up_to_eleven like this:

int serial_up_to_eleven(void)
{
int rv;

/* Attempt custom baudrate */
rv = osmo_serial_set_custom_baudrate(dnload.serial_fd.fd, 406250);
if (rv == 0)
return 0;

#ifdef I_HAVE_A_CP210x /* and I know what I'm doing, I swear ! */
/* Try closest standard baudrate (CP210x reprogrammed adapters) */
rv = osmo_serial_set_baudrate(dnload.serial_fd.fd, B460800);
if (rv == 0)
return 0;
#endif
etc....

If the first attempt to switch to 406250 succeeds, the function exits and never reaches the I_HAVE_A_CP210x code which would switch to a higher speed!

Is this a bug? Or is the lower speed good enough for burst_ind? In which case why bother with the I_HAVE_A_CP210x option?

Or have I missed something obvious?

B.