19 Sep, 2018

1 commit

  • This patch accomplishes 2 things to make the kwboot procedure
    on the a38x more reliable.

    1) We fill the tty with 1K of the magic bootparam. This helps
    with the timing of where the microcode picks up in the read of
    the line to ensure we actually catch the break to go into recovery
    mode

    2) Before starting the xmodem transfer we sleep for 2 seconds
    and then flush the line. This allows all the magic bootparam
    to be flushed from the line and makes the xmodem transfer reliable
    and removes the Bad message failures.

    Signed-off-by: Jon Nettleton
    Signed-off-by: Baruch Siach
    Reviewed-by: Chris Packham
    Signed-off-by: Stefan Roese

    Jon Nettleton
     

07 Aug, 2018

2 commits

  • When kwboot is attached to a terminal which disappears such as one
    connected via an unplugged USB cable, read() returns 0, making kwboot
    loop until a key is pressed in the terminal. The only case where read()
    may return 0 here is when the terminal is closed anyway, so let's
    properly handle this one and report is similar to other errors.

    Signed-off-by: Willy Tarreau
    Signed-off-by: Stefan Roese

    Willy Tarreau
     
  • Commit 84899e2 ("tools/kwboot: Sync with latest barebox version to
    support Armada XP") accidently broke the terminal-only mode (-t) by
    removing the test on the bootmsg. Thus even when trying to use kwboot
    as a plain terminal, it asks to reboot the target.

    This commit simply reintroduces the lost test so that it is possible
    again to use kwboot to attach to the target system's console.

    Signed-off-by: Willy Tarreau
    Signed-off-by: Stefan Roese

    Willy Tarreau
     

17 Feb, 2017

1 commit


26 Aug, 2016

1 commit

  • Commit f4db6c976cf ("arm: mvebu: Add runtime detection of UART (xmodem)
    boot-mode") added a change to hdr->destaddr when dynamically patching an
    image for UART boot mode. With this change, kwboot ceases to work on
    Kirkwood.

    Thus, let's change hdr->destaddr only when we are patching an image with
    header version 1 (Orion and Kirkwood use header version 0).

    Signed-off-by: Simon Baatz
    Fixes: f4db6c976cf ("arm: mvebu: Add runtime detection of UART (xmodem) boot-mode")
    Cc: Stefan Roese
    Cc: Luka Perkov
    Cc: Kevin Smith
    Signed-off-by: Stefan Roese

    Simon Baatz
     

24 Mar, 2016

2 commits

  • Add command-line specification of xmodem timeout. If the binary
    header needs to take a while to do something (e.g. DDR ECC
    scrubbing), the xmodem transfer can time out. Add a configurable
    xmodem block timeout to allow transfers with slow binary headers
    to succeed.

    Signed-off-by: Kevin Smith
    Cc: Stefan Roese
    Signed-off-by: Stefan Roese

    Kevin Smith
     
  • Usage text was getting unwieldy and somewhat incorrect. The
    usage summary implied that some options were mutually exclusive
    (e.g. -q or -s). Clean up the summary to just include the
    important ones, and include a generic "[OPTIONS]" instead.

    Signed-off-by: Kevin Smith
    Cc: Stefan Roese
    Signed-off-by: Stefan Roese

    Kevin Smith
     

14 Jan, 2016

1 commit

  • This patch adds runtime detection of the Marvell UART boot-mode (xmodem
    protocol). If this boot-mode is detected, SPL will return to the
    BootROM to continue the UART booting.

    With this patch its now possible, to generate a U-Boot image that
    can be booted either from the strapped boot-device (e.g. SPI NOR, MMC,
    etc) or via the xmodem protocol from the UART. In the UART case,
    the kwboot tool will dynamically insert the UART boot-device type
    into the image. And also patch the load address in the header, so
    that the mkimage header will be skipped (as its not expected by the
    Marvell BootROM).

    This simplifies the development for Armada XP / 38x based boards.
    As no special images need to be generated by selecting the
    MVEBU_BOOTROM_UARTBOOT Kconfig option.

    Since the Kconfig option MVEBU_BOOTROM_UARTBOOT is not needed any
    more, its now completely removed.

    Signed-off-by: Stefan Roese
    Cc: Luka Perkov
    Cc: Dirk Eibach
    Cc: Phil Sutter
    Cc: Kevin Smith

    Stefan Roese
     

01 Oct, 2015

1 commit

  • Currently, kwboot only allows dynamic UART boot mode patching for SoCs
    with header version 0 (Orion, Kirkwood). This patch now enables this "-p"
    feature also for SoCs with header version 1 (Armada XP / 38x etc). With
    this its possible now to use the UART boot mode without on images that
    are generated for other boot devices, like SPI. So no need to change
    BOOT_FROM to "uart" for UART xmodem booting any more.

    Signed-off-by: Stefan Roese
    Tested-by: Kevin Smith
    Cc: Luka Perkov
    Cc: Dirk Eibach

    Stefan Roese
     

14 Jun, 2015

1 commit

  • To support the Armada 38x, new values for the request-delay and the
    response-timeout are needed. As the values already implemented in
    this tool (for Kirkwood and Armada XP) don't seem to work here.
    To make this more flexible, lets add make those 2 parameters
    configurable via the cmdline. Here the new parameters:

    -q : use specific request-delay
    -s : use specific response-timeout

    For the Marvell DB-88F6820 these values are known to work:

    One board:
    -q 2 -s 1

    2nd board:
    -q 5 -s 5

    So this seems to be even board specific. But with this patch now
    those values can be specified and tested via the cmdline.

    Signed-off-by: Stefan Roese
    Cc: Kevin Smith
    Cc: Dirk Eibach
    Cc: Luka Perkov

    Stefan Roese
     

23 Oct, 2014

1 commit

  • The barebox version of the kwboot tool has evolved a bit. To support
    Armada XP and Dove. Additionally a few minor fixes have been applied.
    So lets sync with the latest barebox version.

    Please note that the main difference between both versions now is, that
    the U-Boot version still supports the -p option, to dynamically patch
    an image for UART boot mode. I didn't test it now though.

    Signed-off-by: Stefan Roese
    Tested-by: Luka Perkov

    Stefan Roese
     

07 Jul, 2012

1 commit