24 Jul, 2013

1 commit


05 Jul, 2010

1 commit

  • The hush shell dynamically allocates (and re-allocates) memory for the
    argument strings in the "char *argv[]" argument vector passed to
    commands. Any code that modifies these pointers will cause serious
    corruption of the malloc data structures and crash U-Boot, so make
    sure the compiler can check that no such modifications are being done
    by changing the code into "char * const argv[]".

    This modification is the result of debugging a strange crash caused
    after adding a new command, which used the following argument
    processing code which has been working perfectly fine in all Unix
    systems since version 6 - but not so in U-Boot:

    int main (int argc, char **argv)
    {
    while (--argc > 0 && **++argv == '-') {
    /* ====> */ while (*++*argv) {
    switch (**argv) {
    case 'd':
    debug++;
    break;
    ...
    default:
    usage ();
    }
    }
    }
    ...
    }

    The line marked "====>" will corrupt the malloc data structures and
    usually cause U-Boot to crash when the next command gets executed by
    the shell. With the modification, the compiler will prevent this with
    an
    error: increment of read-only location '*argv'

    N.B.: The code above can be trivially rewritten like this:

    while (--argc > 0 && **++argv == '-') {
    char *arg = *argv;
    while (*++arg) {
    switch (*arg) {
    ...

    Signed-off-by: Wolfgang Denk
    Acked-by: Mike Frysinger

    Wolfgang Denk
     

18 Jul, 2009

1 commit

  • So far the console API uses the following naming convention:

    ======Extract======
    typedef struct device_t;

    int device_register (device_t * dev);
    int devices_init (void);
    int device_deregister(char *devname);
    struct list_head* device_get_list(void);
    device_t* device_get_by_name(char* name);
    device_t* device_clone(device_t *dev);
    =======

    which is too generic and confusing.

    Instead of using device_XX and device_t we change this
    into stdio_XX and stdio_dev

    This will also allow to add later a generic device mechanism in order
    to have support for multiple devices and driver instances.

    Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD

    Edited commit message.

    Signed-off-by: Wolfgang Denk

    Jean-Christophe PLAGNIOL-VILLARD
     

28 Jan, 2009

1 commit

  • Remove command name from all command "usage" fields and update
    common/command.c to display "name - usage" instead of
    just "usage". Also remove newlines from command usage fields.

    Signed-off-by: Peter Tyser

    Peter Tyser
     

31 Aug, 2008

1 commit


30 Aug, 2008

1 commit


09 Jan, 2008

1 commit

  • This patch adds a 'cu' like serial terminal command to u-boot
    using which you can access other serial ports from the system console.

    OpenMoko uses this in their Neo1973 phones to get access to the GSM
    Modem and GPS chip from the bootloader.

    Signed-off-by: Harald Welte

    Harald Welte