20 Jun, 2017

1 commit


06 Jun, 2017

1 commit


03 Jun, 2017

1 commit

  • This is needed by binman and dtoc, so if those are being used, check that
    the library is present and complain if not. Make sure that any error
    appears on stderr so that buildman notices it.

    This means that the fallback library (which uses fdtget) will not be used
    anymore and swig will need to be installed to use binman / dtoc.

    This affects any board which uses binman (currently sunxi and x86) or dtoc
    (anything that uses CONFIG_SPL_OF_PLATDATA, currently some rockchip
    boards).

    Signed-off-by: Simon Glass

    Simon Glass
     

18 May, 2017

1 commit

  • Some platforms require more complex U-Boot images than we can easily
    generate via the mkimage command line, for instance to load additional
    image files.
    Introduce a CONFIG_SPL_FIT_SOURCE and CONFIG_SPL_FIT_GENERATOR symbol,
    which can either hold an .its source file describing the image layout,
    or, in the second case, a generator tool (script) to create such
    a source file. This script gets passed the list of device tree files
    from the CONFIG_OF_LIST variable.
    A platform or board can define either of those in their defconfig file
    to allow an easy building of such an image.

    Signed-off-by: Andre Przywara
    Reviewed-by: Jagan Teki

    Andre Przywara
     

15 May, 2017

1 commit


10 May, 2017

3 commits


08 May, 2017

1 commit


02 May, 2017

1 commit


18 Apr, 2017

1 commit


14 Apr, 2017

1 commit

  • Not force to use python from PATH. Issue was noted when building with
    Yocto, because python from the distro is always taken instead of
    python-native built during Yocto process.

    Signed-off-by: Stefano Babic
    CC: Simon Glass
    Reviewed-by: Simon Glass

    Stefano Babic
     

10 Apr, 2017

1 commit

  • Since Binutils 1a9ccd70f9a7[1] u-boot will not link targets that set
    CONFIG_SYS_TEXT_BASE=0 with the following error:

    LD u-boot
    arm-linux-gnueabi-ld.bfd: u-boot: Not enough room for program headers, try
    linking with -N
    arm-linux-gnueabi-ld.bfd: final link failed: Bad value

    The issue can be reproduced with the bad binutils and the rock2_defconfig
    target.

    This issue was also encountered by the powerpc kernel[2], with the fix
    being to pass --no-dynamic-linker for linkers newer than 2.26 when this
    flag was introduced. The option tells ld that the PIE or shared lib does
    not need loaded program headers.

    Ubuntu Zesty's Binutils 2.27.51.20161202 hits this error.

    [1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=1a9ccd70f9a7
    [2] https://git.kernel.org/cgit/linux/kernel/git/powerpc/linux.git/commit/?h=next&id=ff45000fcb56b5b0f1a14a865d3541746d838a0a

    Signed-off-by: Joel Stanley
    [AF: Apply to LDFLAGS_$(SPL_BIN) as well, suggested by Tom Rini]
    Signed-off-by: Andreas Färber

    Joel Stanley
     

07 Apr, 2017

1 commit

  • Introduce a new sunxi-spl-with-ecc.bin image with already the right header,
    ECC, randomizer and padding for the BROM to be able to read it.

    It needs to be flashed using a raw access to the NAND so that the
    controller doesn't change a thing to it, since we already have all the
    right parameters.

    Signed-off-by: Maxime Ripard
    Acked-by: Boris Brezillon
    Reviewed-by: Heiko Schocher

    Maxime Ripard
     

05 Apr, 2017

2 commits


19 Mar, 2017

1 commit

  • Today, we have cases where we wish to build all of U-Boot in Thumb2 mode for
    various reasons. We also have cases where we only build SPL in Thumb2 mode due
    to size constraints and wish to build the rest of the system in ARM mode. So
    in this migration we introduce a new symbol as well, SPL_SYS_THUMB_BUILD to
    control if we build everything or just SPL (or in theory, just U-Boot) in
    Thumb2 mode.

    Signed-off-by: Tom Rini
    Acked-by: Siarhei Siamashka

    Tom Rini
     

14 Mar, 2017

1 commit


10 Mar, 2017

1 commit

  • DTC 1.4.2 or later checks DT unit-address without reg property and
    vice-versa, and generates lots of warnings. Fixing DT files will
    take for a while. Until then, let's turn off the check unless
    building with W=*.

    Introduce a new helper dtc-option to check if the option is supported
    in order to suppress warnings on older versions.

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Simon Glass
    Tested-by: Bin Meng

    Masahiro Yamada
     

28 Feb, 2017

1 commit


14 Feb, 2017

1 commit


09 Feb, 2017

3 commits

  • Use the kbuild style log.

    Prior to this commit:

    ./scripts/check-config.sh u-boot.cfg \
    ./scripts/config_whitelist.txt . 1>&2

    With this commit:

    CFGCHK u-boot.cfg

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Simon Glass

    Masahiro Yamada
     
  • The previous commit ("add a new command to show .config contents")
    improves the basic infrastructure of "embed a compressed file into
    the U-Boot image, and print it by a command". The same pattern for
    the "license" command.

    This commit reworks the command to improve the following:

    [1] Improve log style

    Kbuild style log

    GZIP cmd/license_data.gz
    CHK cmd/license_data_gz.h
    UPD cmd/license_data_gz.h
    CHK cmd/license_data_size.h
    UPD cmd/license_data_size.h

    instead of the bare Make log:

    cat ./Licenses/gpl-2.0.txt | gzip -9 -c | \
    tools/bin2header license_gzip > ./include/license.h

    [2] Collect related code into the "cmd" directory

    Prior to this commit, the license.h was created by tools/Makefile,
    placed under the "include" directory, included from cmd/license.c,
    and deleted by the top-level Makefile. It is not a good idea to
    scatter related code.

    [3] Drop the fixed-malloc size LICENSE_MAX

    Just allocate the minimum required size of buffer because we know
    the size of the original gpl-2.0.txt.

    [4] Fix more issues

    Terminate the buffer with zero to prevent puts() from over-running.
    Add "static" to do_license.

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Simon Glass

    Masahiro Yamada
     
  • This feature is inspired by /proc/config.gz of Linux. In Linux,
    if CONFIG_IKCONFIG is enabled, the ".config" file contents are
    embedded in the kernel image. If CONFIG_IKCONFIG_PROC is also
    enabled, the ".config" contents are exposed to /proc/config.gz.
    Users can do "zcat /proc/config.gz" to check which config options
    are enabled on the running kernel image.

    The idea is almost the same here; if CONFIG_CMD_CONFIG is enabled,
    the ".config" contents are compressed and saved in the U-Boot image,
    then printed by the new command "config".

    The usage is quite simple. Enable CONFIG_CMD_CONFIG, then run
    > config
    from the command line interface. The ".config" contents will be
    printed on the console.

    This feature increases the U-Boot image size by about 4KB (this is
    mostly due to the gzip-compressed .config file). By default, it is
    enabled only for Sandbox because we do not care about the memory
    footprint on it. Of course, this feature is architecture agnostic,
    so you can enable it on any board if the image size increase is
    acceptable for you.

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Simon Glass

    Masahiro Yamada
     

06 Feb, 2017

1 commit


01 Feb, 2017

1 commit

  • The patch implements secure booting for the mvebu architecture.

    This includes:
    - The addition of secure headers and all needed signatures and keys in
    mkimage
    - Commands capable of writing the board's efuses to both write the
    needed cryptographic data and enable the secure booting mechanism
    - The creation of convenience text files containing the necessary
    commands to write the efuses

    The KAK and CSK keys are expected to reside in the files kwb_kak.key and
    kwb_csk.key (OpenSSL 2048 bit private keys) in the top-level directory.

    Signed-off-by: Reinhard Pfau
    Signed-off-by: Mario Six
    Reviewed-by: Stefan Roese
    Reviewed-by: Simon Glass
    Signed-off-by: Stefan Roese

    Mario Six
     

31 Jan, 2017

1 commit


10 Jan, 2017

1 commit


03 Jan, 2017

3 commits

  • Signed-off-by: Tom Rini

    Tom Rini
     
  • To being able to sign created binaries, we need to know the HAB Blocks
    for that image. Especially for the imximage type the HAB Blocks are
    only available during creation of the image. We want to preserve the
    information until we get to sign the files.
    In the verbose case we still get them printed out instead of writing
    to log files.

    Cc: sbabic@denx.de

    v2-Changes:
    - No usage of MKIMAGEOUTPUT_$(@F) macro.
    - Predefine default value /dev/null in every involved Makefile.

    Signed-off-by: Sven Ebenfeld
    Reviewed-by: George McCollister
    Tested-by: George McCollister

    Sven Ebenfeld
     
  • When we want to use Secure Boot with HAB from SPL over U-Boot.img,
    we need to append the IVT to the image and leave space for the CSF.
    Images generated as firmware_ivt can directly be signed using the
    Freescale code signing tool. For creation of a CSF, mkimage outputs
    the correct HAB Blocks for the image.
    The changes to the usual firmware image class are quite small,
    that is why I implemented that directly into the default_image.

    Cc: sbabic@denx.de

    v2-Changes: None

    Signed-off-by: Sven Ebenfeld
    Reviewed-by: George McCollister
    Tested-by: George McCollister

    Sven Ebenfeld
     

20 Dec, 2016

5 commits


06 Dec, 2016

1 commit


03 Dec, 2016

1 commit

  • A common requirement when converting CONFIG options to Kconfig is to check
    that the effective configuration has not changed due to the conversion. Add
    a target which creates this configuration (in the form of u-boot.cfg) but
    does not build U-Boot. This speeds up the checking.

    Signed-off-by: Simon Glass

    Simon Glass
     

15 Nov, 2016

2 commits