On Wed, Jan 04, 2012 at 04:01:16PM +0100, Eric Bénard wrote: > this allows loadb to work over usbserial gadget I like the original approach better. The baudrate setting has no meaning in hardware for the usb serial gadget. This means that we can happily support every baudrate requested by adding a fake setbrg function. If we had some global console_setbrg function I would agree Jean-Christophe, this function should return cdev->setbrg or -ENOSYS if the driver does not have a setbrg function. Still the usb gadget serial driver should have a fake setbrg function for the reason explained above. > > Signed-off-by: Eric Bénard <eric@xxxxxxxxxx> > --- > commands/loadb.c | 6 ++++-- > 1 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/commands/loadb.c b/commands/loadb.c > index 439a83a..d60340e 100644 > --- a/commands/loadb.c > +++ b/commands/loadb.c > @@ -690,12 +690,13 @@ static int do_load_serial_bin(struct command *cmdtp, int argc, char *argv[]) > { > ulong offset = 0; > ulong addr; > - int load_baudrate = 0, current_baudrate; > + int load_baudrate = 0, current_baudrate = 0; > int rcode = 0; > int opt; > int open_mode = O_WRONLY; > char *output_file = NULL; > struct console_device *cdev = NULL; > + unsigned char baudrate[16]; > > while ((opt = getopt(argc, argv, "f:b:o:c")) > 0) { > switch (opt) { > @@ -722,7 +723,8 @@ static int do_load_serial_bin(struct command *cmdtp, int argc, char *argv[]) > printf("%s:No console device with STDIN and STDOUT\n", argv[0]); > return -ENODEV; > } > - current_baudrate = (int)simple_strtoul(dev_get_param(&cdev->class_dev, "baudrate"), NULL, 10); > + if (dev_get_param(&cdev->class_dev, "baudrate") != NULL) > + current_baudrate = (int)simple_strtoul(dev_get_param(&cdev->class_dev, "baudrate"), NULL, 10); > This command could be improved by doing all this baudrate stuff only when the -b option is given. This way we default to the current baudrate (which seems sane in the cases I can think of) Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox