08 Feb, 2016

8 commits


06 Feb, 2016

1 commit

  • Correct spelling of "U-Boot" shall be used in all written text
    (documentation, comments in source files etc.).

    Signed-off-by: Bin Meng
    Reviewed-by: Heiko Schocher
    Reviewed-by: Simon Glass
    Reviewed-by: Minkyu Kang

    Bin Meng
     

03 Feb, 2016

1 commit

  • Currently when building mxsboot on certain machines it reports:

    HOSTCC tools/mxsboot
    tools/mxsboot.c: In function 'mx28_create_sd_image':
    tools/mxsboot.c:560: warning: implicit declaration of function 'htole32'
    /tmp/cchLIV6q.o: In function 'main':
    mxsboot.c:(.text+0x6d8): undefined reference to 'htole32'
    mxsboot.c:(.text+0x6e7): undefined reference to 'htole32'
    mxsboot.c:(.text+0x6f6): undefined reference to 'htole32'
    mxsboot.c:(.text+0x705): undefined reference to 'htole32'
    mxsboot.c:(.text+0x711): undefined reference to 'htole32'
    /tmp/cchLIV6q.o:mxsboot.c:(.text+0x71d): more undefined references to
    'htole32' follow
    collect2: ld returned 1 exit status
    make[1]: *** [tools/mxsboot] Error 1
    make: *** [tools] Error 2

    The solution is to use cpu_to_le32() instead which is more portable,
    just like other U-Boot tools [1] do.

    [1] http://lists.denx.de/pipermail/u-boot/2014-October/192919.html

    Suggested-by: Marek Vasut
    Signed-off-by: Bin Meng
    Acked-by: Marek Vasut

    Bin Meng
     

22 Jan, 2016

1 commit


21 Jan, 2016

2 commits

  • Add a test for the 'bmp' command. Test both the uncompressed and compressed
    versions of the file, since they use different code paths.

    Signed-off-by: Simon Glass
    Acked-by: Anatolij Gustschin

    Simon Glass
     
  • Add option to create threaded series of patches.
    With it, it will be possible to create patch threads like this:
    [PATCH 0/10] Add support for time travel
    [PATCH 1/10] Add Flux Capacitor driver
    [PATCH 2/10] Add Mr. Fusion driver
    (...)

    Internally it will call git send-email with --thread option

    Signed-off-by: Mateusz Kulikowski
    Acked-by: Simon Glass

    Mateusz Kulikowski
     

15 Jan, 2016

1 commit


14 Jan, 2016

2 commits

  • 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
     
  • Until now, the SoC selection for the ARCH_MVEBU platforms has been done
    in the config header. Using CONFIG_ARMADA_XP in a non-clear way. As
    it needed to get selected for AXP and A38x based boards. This patch
    now changes this to move the SoC selection to Kconfig. And also
    uses CONFIG_ARCH_MVEBU as a common define for both AXP and A38x.
    This makes things a bit clearer - especially for new board additions.

    Additionally the defines CONFIG_SYS_MVEBU_DDR_AXP and
    CONFIG_SYS_MVEBU_DDR_A38X are replaced with the already available
    CONFIG_ARMADA_38X and CONFIG_ARMADA_XP.

    And CONFIG_DDR3 is removed, as its not referenced anywhere.

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

    Stefan Roese
     

13 Jan, 2016

1 commit


08 Jan, 2016

2 commits


18 Dec, 2015

1 commit


17 Dec, 2015

1 commit


14 Dec, 2015

3 commits


11 Dec, 2015

1 commit


08 Dec, 2015

1 commit

  • Seems 6ae6e160 broke creating images in certain cases, there
    are two problems with that patch.

    First is that the expression "!x == 4 || !x == 6" is ambiguous. The
    intention here was "!(x == 4) || !(x == 6)" based on reading further in
    the file, where this was borrowed from. This however is interpreted by
    gcc as "(!x) == 4 || (!x) == 6" and always false. gcc-5.x will warn
    about this case.

    The second problem is that we do not want to test for the case of "(NOT x
    is 4) OR (NOT x is 6)" but instead "(x is not equal to 4) AND (x is not
    equal to 6)". This is because in those two cases we already execute the
    code question in another part of the file. Rewrite the expression and
    add parenthesis for clarity.

    Signed-off-by: Marek Vasut
    Cc: Tom Rini
    Cc: Philippe De Swert
    Cc: Simon Glass
    [trini: Re-word Marek's explanation]

    Marek Vasut
     

06 Dec, 2015

1 commit

  • Seems 92a655c3 broke creating multi and script type images.
    Since the file1:file2:file3 string does not get split up,
    it fails on trying to open an non-existing file.

    mkimage -A arm -O linux -T multi -C none -d zImage:splash.bmp:device.dtb uimage
    tools/mkimage: Can't open zImage:splash.bmp:device.dtb: No such file or directory

    Since the sizes of the different parts seem to get added in the actual
    routine that handles multi and script type images, we can probably skip the
    bit of the code that causes the failure for that type of images.

    Signed-off-by: Philippe De Swert

    Philippe De Swert
     

01 Dec, 2015

2 commits

  • The Rockchip boot ROM could load & run an initial spl loader,
    and continue to load a second level boot-loader(which stored
    right after the initial loader) when it returns.
    Modify idblock generation code to support it.

    Signed-off-by: Jeffy Chen
    Acked-by: Simon Glass

    Jeffy Chen
     
  • Our chips may have different max spl size and spl header, so
    we need to add configs for that.

    Signed-off-by: Jeffy Chen
    Acked-by: Simon Glass
    Dropped CONFIG_ROCKCHIP_MAX_SPL_SIZE from rk3288_common.h,
    Added $(if...) to tools/Makefile to fix widespread build breakage
    Signed-off-by: Simon Glass

    Series-changes: 8
    - Drop CONFIG_ROCKCHIP_MAX_SPL_SIZE from rk3288_common.h,
    - Add $(if...) to tools/Makefile to fix widespread build breakage

    Jeffy Chen
     

29 Nov, 2015

3 commits

  • Fix computation of haeder size and binary header size.
    Size of opt header and some 32bit values were not taken into account. This could
    result in invalid boot images (due to the wrong binary header size, the image could
    claim to have another extension header after the binary extension although there
    is none).

    Use "uint32_t" instead of "unsigned int" for header size computation.

    Signed-off-by: Reinhard Pfau
    Reviewed-by: Stefan Roese
    Cc: Luka Perkov

    Reinhard Pfau
     
  • KWB image header values are in little endian (LE).
    So adding appropriate cpu_to_leXX() calls to allow building those images
    on BE hosts, too.

    Signed-off-by: Reinhard Pfau
    Reviewed-by: Stefan Roese

    Reinhard Pfau
     
  • With the dtb added to the main U-Boot image, it can happen, that
    the resulting image is not 4-byte aligned. As the dtb tends to
    be unaligned. But the image needs to be 4-byte aligned. At least the
    Marvell hdrparser tool complains if its unaligned. By returning 1 here
    in kwbimage_generate(), called via tparams->vrec_header() in mkimage.c,
    mkimage will automatically pad the resulting image to a 4-byte size
    if necessary.

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

    Stefan Roese
     

19 Nov, 2015

1 commit

  • As with other platforms vendors love to create their own boot header
    formats. Xilinx is no different and for the Zynq platform/SoC there
    exists the "boot.bin" which is read by the platforms bootrom. This
    format is described to a useful extent within the Xilinx Zynq TRM.

    This implementation adds support for the 'zynqimage' to mkimage. The
    implementation only considers the most common boot header which is
    un-encrypted and packed directly after the boot header itself (no
    XIP, etc.). However this implementation does take into consideration the
    other fields of the header for image dumping use cases (vector table and
    register initialization).

    Signed-off-by: Nathan Rossi
    Cc: Michal Simek
    Cc: Tom Rini
    Reviewed-by: Tom Rini
    Signed-off-by: Michal Simek

    Nathan Rossi
     

18 Nov, 2015

3 commits

  • Sometimes it can be useful to link the fw_ tools instead
    of having the fw_setenv/fw_printenv installed.
    Patch exports the tool as library and allowes to link it
    with own programs.

    Signed-off-by: Stefano Babic
    CC: Tom Rini
    Reviewed-by: Tom Rini

    Stefano Babic
     
  • When for example generating/manipulating SD card/eMMC images which
    contain U-Boot and its environment(s), it is handy to use a given
    configuration file instead of the compiled-in default one.
    And since the default configuration file is expected under /etc
    it's hard for an usual linux user account without special permissions
    to use fw_printenv/fw_setenv for this purpose.
    So allow to pass an optional filename via a new '-c' command
    line argument.

    Example:

    $ ln -s fw_printenv tools/env/fw_setenv
    $ cat fw_env.config
    test.img 0x20000 0x20000
    test.img 0x40000 0x20000

    $ tools/env/fw_printenv -c ./fw_env.config fdt_file
    fdt_file=imx28-duckbill.dtb

    $ tools/env/fw_setenv -c ./fw_env.config fdt_file imx28-duckbill-spi.dtb

    $ tools/env/fw_printenv -c ./fw_env.config fdt_file
    fdt_file=imx28-duckbill-spi.dtb

    Signed-off-by: Michael Heimpold

    Michael Heimpold
     
  • The binary header ends with one lword, defining if another header
    follows this one. This additions 4 bytes need to be taken into
    account in the generation of the header size. And the complete
    4 bytes at the end of this binary header need to get cleared.

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

    Stefan Roese
     

17 Nov, 2015

1 commit


10 Nov, 2015

1 commit

  • After consulting with some of the SPDX team, the conclusion is that
    Makefiles are worth adding SPDX-License-Identifier tags too, and most of
    ours have one. This adds tags to ones that lack them and converts a few
    that had full (or in one case, very partial) license blobs into the
    equivalent tag.

    Cc: Kate Stewart
    Signed-off-by: Tom Rini

    Tom Rini
     

04 Nov, 2015

1 commit


25 Oct, 2015

1 commit

  • In the "Getting Started with Coccinelle - KVM edition" presentation that
    has been held by Julia Lawall at the KVM forum 2015 (see the slides at
    http://events.linuxfoundation.org/sites/events/files/slides/tutorial_kvm_0.pdf),
    she pointed out some bad return value checks in U-Boot that can be
    detected with Coccinelle by using the following config file:

    @@
    identifier x,y;
    identifier f;
    statement S;
    @@
    x = f(...);
    (
    if (x < 0) S
    |
    if (
    - y
    + x
    < 0) S
    )

    This patch now fixes these issues.

    Signed-off-by: Thomas Huth

    Thomas Huth