Merge branch '2020-06-03-misc-bugfixes'

- Update various docs to not have 'ARCH=' in them as that's not part of
  how U-Boot builds.
- Add macOS tools-only build to Azure to help catch problems on BSD
  hosts with tools.
- Bugfixes from the latest header cleanup around ARCH_DMA_MINALIGN
- Assorted small Kconfig logic/typo corrections
- Add a default hash to FIT images that have their its auto generated.
- Other assorted fixes
This commit is contained in:
Tom Rini 2020-06-03 11:44:12 -04:00
commit 49c8c91cc6
52 changed files with 80 additions and 60 deletions

View file

@ -1,6 +1,7 @@
variables:
windows_vm: vs2017-win2016
ubuntu_vm: ubuntu-18.04
macos_vm: macOS-10.15
ci_runner_image: trini/u-boot-gitlab-ci-runner:bionic-20200403-27Apr2020
# Add '-u 0' options for Azure pipelines, otherwise we get "permission
# denied" error when it tries to "useradd -m -u 1001 vsts_azpcontainer",
@ -44,6 +45,20 @@ jobs:
# Tell MSYS2 not to cd our startup directory to HOME
CHERE_INVOKING: yes
- job: tools_only_macOS
displayName: 'Ensure host tools build for macOS X'
pool:
vmImage: $(macos_vm)
steps:
- script: brew install make
displayName: Brew install dependencies
- script: |
gmake tools-only_config tools-only NO_SDL=1 \
HOSTCFLAGS="-I/usr/local/opt/openssl@1.1/include" \
HOSTLDFLAGS="-L/usr/local/opt/openssl@1.1/lib" \
-j$(sysctl -n hw.logicalcpu)
displayName: 'Perform tools-only build'
- job: cppcheck
displayName: 'Static code analysis with cppcheck'
pool:

View file

@ -275,6 +275,7 @@ M: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
S: Maintained
F: arch/arm/include/asm/arch-owl/
F: arch/arm/mach-owl/
F: doc/board/actions/
F: drivers/clk/owl/
F: drivers/serial/serial_owl.c
F: include/configs/owl-common.h
@ -590,6 +591,7 @@ M: Angelo Dureghello <angelo@sysam.it>
S: Maintained
T: git https://gitlab.denx.de/u-boot/custodians/u-boot-coldfire.git
F: arch/m68k/
F: doc/arch/m68k.rst
DFU
M: Lukasz Majewski <lukma@denx.de>

View file

@ -528,6 +528,7 @@ void mmu_page_table_flush(unsigned long start, unsigned long stop);
#ifdef CONFIG_ARMV7_PSCI
void psci_arch_cpu_entry(void);
void psci_arch_init(void);
u32 psci_version(void);
s32 psci_features(u32 function_id, u32 psci_fid);
s32 psci_cpu_off(void);

View file

@ -24,7 +24,6 @@ Currently the u-boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make nanopi-k2_defconfig
> make

View file

@ -29,7 +29,6 @@ Currently the u-boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make odroid-c2_defconfig
> make

View file

@ -31,7 +31,6 @@ Currently the u-boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make p200_defconfig
> make

View file

@ -31,7 +31,6 @@ Currently the u-boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make p201_defconfig
> make

View file

@ -30,7 +30,6 @@ Currently the u-boot port supports the following devices:
U-Boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make khadas-vim_defconfig
> make

View file

@ -25,7 +25,6 @@ Currently the U-Boot port supports the following devices:
U-Boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make libretech-ac_defconfig
> make

View file

@ -30,7 +30,6 @@ Currently the U-Boot port supports the following devices:
U-Boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make libretech-cc_defconfig
> make

View file

@ -31,7 +31,6 @@ Currently the u-boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make p212_defconfig
> make

View file

@ -31,7 +31,6 @@ Currently the u-boot port supports the following devices:
U-Boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make khadas-vim2_defconfig
> make

View file

@ -30,7 +30,6 @@ Currently the u-boot port supports the following devices:
U-Boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make khadas-vim2_defconfig
> make

View file

@ -31,7 +31,6 @@ Currently the u-boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make s400_defconfig
> make

View file

@ -22,7 +22,6 @@ Currently the u-boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make sei510_defconfig
> make

View file

@ -18,7 +18,6 @@ specifications:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make sei610_defconfig
> make

View file

@ -27,7 +27,6 @@ Currently the u-boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make u200_defconfig
> make

View file

@ -29,7 +29,6 @@ Currently the U-Boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make khadas-vim3_defconfig
> make

View file

@ -29,7 +29,6 @@ Currently the U-Boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make khadas-vim3l_defconfig
> make

View file

@ -28,7 +28,6 @@ Currently the u-boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make odroid-n2_defconfig
> make

View file

@ -27,7 +27,6 @@ Currently the u-boot port supports the following devices:
u-boot compilation
==================
> export ARCH=arm
> export CROSS_COMPILE=aarch64-none-elf-
> make w400_defconfig
> make

View file

@ -26,7 +26,7 @@ $ cp firmware-imx-8.5/firmware/ddr/synopsys/lpddr4*.bin $(srctree)
Build U-Boot
============
$ make imx8mm_beacon_defconfig
$ make flash.bin ARCH=arm CROSS_COMPILE=aarch64-linux-gnu- ATF_LOAD_ADDR=0x920000
$ make flash.bin CROSS_COMPILE=aarch64-linux-gnu- ATF_LOAD_ADDR=0x920000
Burn U-Boot to microSD Card
===========================

View file

@ -56,7 +56,6 @@ Note: 1 stands for 'off', 0 stands for 'on'
Build and program U-Boot to NOR flash
==================================
1. Build u-boot.bin image example:
export ARCH=powerpc
export CROSS_COMPILE=/your_path/powerpc-linux-gnu-
make C293PCIE

View file

@ -98,7 +98,6 @@ instead of to CAN/UART1.
Build and burn U-Boot to NOR flash
==================================
1. Build u-boot.bin image
export ARCH=powerpc
export CROSS_COMPILE=/your_path/powerpc-linux-gnu-
make P1010RDB_NOR

View file

@ -128,7 +128,6 @@ To enable IFC in case of SD boot
Build images for different boot mode
====================================
First setup cross compile environment on build host
$ export ARCH=powerpc
$ export CROSS_COMPILE=<your-compiler-path>/powerpc-linux-gnu-
1. For NOR boot

View file

@ -17,7 +17,7 @@ Building U-Boot for Logic PD Development Kit
To build U-Boot for the Dual and Quad variants:
make imx6q_logic_defconfig
make u-boot.imx ARCH=arm CROSS_COMPILE=arm-linux-
make u-boot.imx CROSS_COMPILE=arm-linux-
Flashing U-Boot into the SD card

View file

@ -22,7 +22,6 @@ Compile the U-Boot
> cd ../u-boot
> export CROSS_COMPILE=arm-linux-gnueabihf-
> export ARCH=arm
> make evb-rk3229_defconfig
> make
> make u-boot.itb

View file

@ -54,7 +54,6 @@ Compile U-Boot
==============
> cd ../u-boot
> export ARCH=arm64
> export CROSS_COMPILE=aarch64-linux-gnu-
> make evb-rk3399_defconfig
for firefly-rk3399, use below instead:

View file

@ -5,5 +5,6 @@ M: Anup Patel <anup.patel@wdc.com>
M: Atish Patra <atish.patra@wdc.com>
S: Maintained
F: board/sifive/fu540/
F: doc/board/sifive/fu540.rst
F: include/configs/sifive-fu540.h
F: configs/sifive_fu540_defconfig

View file

@ -4,7 +4,7 @@ The boot sequence is ATF -> OPTEE -> U-Boot -> Linux. U-Boot is in non-secure
world in this case.
- Build u-boot
Set environment variable of CROSS_COMPILE for your toolchain and ARCH=arm
Set environment variable of CROSS_COMPILE for your toolchain
$ make pico-imx7d_bl33_defconfig
$ make all

View file

@ -17,12 +17,12 @@ Configure U-Boot
Build the TPL/SPL stage
=======================
> make CROSS_COMPILE=aarch64-unknown-elf- ARCH=arm
> make CROSS_COMPILE=aarch64-unknown-elf-
Build the full U-Boot and a FIT image including the ATF
=======================================================
> make CROSS_COMPILE=aarch64-unknown-elf- ARCH=arm u-boot.itb
> make CROSS_COMPILE=aarch64-unknown-elf- u-boot.itb
Flash the image
===============

View file

@ -133,12 +133,12 @@ $ make PLATFORM=k3-am65x CFG_ARM64_core=y
4. U-Boot:
4.1. R5:
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am65x_evm_r5_defconfig O=/tmp/r5
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- O=/tmp/r5
$ make CROSS_COMPILE=arm-linux-gnueabihf- am65x_evm_r5_defconfig O=/tmp/r5
$ make CROSS_COMPILE=arm-linux-gnueabihf- O=/tmp/r5
4.2. A53:
$ make ARCH=arm CROSS_COMPILE=aarch64-linux-gnu- am65x_evm_a53_defconfig O=/tmp/a53
$ make ARCH=arm CROSS_COMPILE=aarch64-linux-gnu- ATF=<path to ATF dir>/build/k3/generic/release/bl31.bin TEE=<path to OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin O=/tmp/a53
$ make CROSS_COMPILE=aarch64-linux-gnu- am65x_evm_a53_defconfig O=/tmp/a53
$ make CROSS_COMPILE=aarch64-linux-gnu- ATF=<path to ATF dir>/build/k3/generic/release/bl31.bin TEE=<path to OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin O=/tmp/a53
Target Images
--------------

View file

@ -149,12 +149,12 @@ $ make PLATFORM=k3-j721e CFG_ARM64_core=y
4. U-Boot:
4.1. R5:
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- j721e_evm_r5_defconfig O=/tmp/r5
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- O=/tmp/r5
$ make CROSS_COMPILE=arm-linux-gnueabihf- j721e_evm_r5_defconfig O=/tmp/r5
$ make CROSS_COMPILE=arm-linux-gnueabihf- O=/tmp/r5
4.2. A72:
$ make ARCH=arm CROSS_COMPILE=aarch64-linux-gnu- j721e_evm_a72_defconfig O=/tmp/a72
$ make ARCH=arm CROSS_COMPILE=aarch64-linux-gnu- ATF=<path to ATF dir>/build/k3/generic/release/bl31.bin TEE=<path to OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin O=/tmp/a72
$ make CROSS_COMPILE=aarch64-linux-gnu- j721e_evm_a72_defconfig O=/tmp/a72
$ make CROSS_COMPILE=aarch64-linux-gnu- ATF=<path to ATF dir>/build/k3/generic/release/bl31.bin TEE=<path to OPTEE OS dir>/out/arm-plat-k3/core/tee-pager_v2.bin O=/tmp/a72
Target Images
--------------

View file

@ -74,7 +74,7 @@ Supported image formats:
Build instructions:
===================
Examples for k2hk, for k2e, k2l and k2g just replace k2hk prefix accordingly.
Don't forget to add ARCH=arm and CROSS_COMPILE.
Don't forget to add CROSS_COMPILE.
To build u-boot.bin, u-boot-spi.gph, MLO:
>make k2hk_evm_defconfig

View file

@ -57,7 +57,6 @@ Compile the U-Boot
> cd ../u-boot
> cp ../rkbin/rk33/rk3399_bl31_v1.00.elf ./bl31.elf
> export ARCH=arm64
> export CROSS_COMPILE=aarch64-linux-gnu-
> make rock960-rk3399_defconfig
> make

View file

@ -491,6 +491,7 @@ config CMD_SPL_WRITE_SIZE
config CMD_FITUPD
bool "fitImage update command"
depends on UPDATE_TFTP
help
Implements the 'fitupd' command, which allows to automatically
store software updates present on a TFTP server in NOR Flash

View file

@ -8,10 +8,6 @@
#include <command.h>
#include <net.h>
#if !defined(CONFIG_UPDATE_TFTP)
#error "CONFIG_UPDATE_TFTP required"
#endif
static int do_fitupd(struct cmd_tbl *cmdtp, int flag, int argc,
char *const argv[])
{

View file

@ -33,6 +33,13 @@ static ulong android_image_get_kernel_addr(const struct andr_img_hdr *hdr)
if (hdr->kernel_addr == ANDROID_IMAGE_DEFAULT_KERNEL_ADDR)
return (ulong)hdr + hdr->page_size;
/*
* abootimg creates images where all load addresses are 0
* and we need to fix them.
*/
if (hdr->kernel_addr == 0 && hdr->ramdisk_addr == 0)
return env_get_ulong("kernel_addr_r", 16, 0);
return hdr->kernel_addr;
}

View file

@ -35,7 +35,7 @@ development boards.
Supported CPU families
----------------------
Please "make menuconfig" with ARCH=m68k, or check arch/m68k/cpu to see the
Please "make menuconfig" and select "m68k" or check arch/m68k/cpu to see the
currently supported processor and families.
@ -75,8 +75,8 @@ A bash script similar to the one below may be used:
board=M5475DFE
make distclean
make ARCH=m68k ${board}_defconfig
make ARCH=m68k KBUILD_VERBOSE=1
make ${board}_defconfig
make KBUILD_VERBOSE=1
Adopted toolchains

View file

@ -102,7 +102,7 @@ Building U-BOOT proper image
$ make clean
$ export CROSS_COMPILE=aarch64-linux-gnu-
$ make ARCH=arm cubieboard7_defconfig
$ make cubieboard7_defconfig
$ make u-boot-dtb.img -j16
u-boot-dtb.img can now be flashed to debian image partition mounted on host machine.

View file

@ -39,7 +39,6 @@ Building
.. code-block:: none
export ARCH=riscv
export CROSS_COMPILE=<riscv64 toolchain prefix>
3. make sifive_fu540_defconfig

View file

@ -18,7 +18,6 @@ Build U-Boot
.. code-block:: bash
$ export CROSS_COMPILE=arm-linux-gnueabi-
$ export ARCH=arm
$ make colibri_imx7_emmc_defconfig # For NAND: colibri_imx7_defconfig
$ make

View file

@ -67,7 +67,6 @@ or if you just installed gcc-arm-linux-gnueabi then it might be
b. Configure and build U-Boot with verified boot enabled:
export ARCH=arm
export UBOOT=/path/to/u-boot
cd $UBOOT
# You can add -j10 if you have 10 CPUs to make it faster

View file

@ -27,6 +27,8 @@ config BOOTCOUNT_GENERIC
config BOOTCOUNT_EXT
bool "Boot counter on EXT filesystem"
depends on FS_EXT4
select EXT4_WRITE
help
Add support for maintaining boot count in a file on an EXT
filesystem.

View file

@ -21,7 +21,7 @@ config DM_KEYBOARD
input and update LEDs if the keyboard has them.
config SPL_DM_KEYBOARD
bool "Enable driver model keyboard support"
bool "Enable driver model keyboard support for SPL"
depends on SPL_DM
help
This adds a uclass for keyboards and implements keyboard support
@ -30,7 +30,7 @@ config SPL_DM_KEYBOARD
input and update LEDs if the keyboard has them.
config TPL_DM_KEYBOARD
bool "Enable driver model keyboard support"
bool "Enable driver model keyboard support for TPL"
depends on TPL_DM
help
This adds a uclass for keyboards and implements keyboard support

View file

@ -39,8 +39,8 @@ config DM_USB
help
Enable driver model for USB. The USB interface is then implemented
by the USB uclass. Multiple USB controllers of different types
(XHCI, EHCI) can be attached and used. The 'usb' command works as
normal. OCHI is not supported at present.
(XHCI, EHCI, OHCI) can be attached and used. The 'usb' command works
as normal.
Much of the code is shared but with this option enabled the USB
uclass takes care of device enumeration. USB devices can be

View file

@ -11,6 +11,7 @@
* e.g. PCI controllers need this
*/
#include <asm/cache.h>
#include <asm/io.h>
#ifdef CONFIG_SYS_OHCI_SWAP_REG_ACCESS

View file

@ -2,6 +2,7 @@
#ifndef _LINUX_DMA_MAPPING_H
#define _LINUX_DMA_MAPPING_H
#include <asm/cache.h>
#include <linux/dma-direction.h>
#include <linux/types.h>
#include <asm/dma-mapping.h>

View file

@ -162,7 +162,7 @@ config LIB_RAND
bool "Pseudo-random library support"
config LIB_HW_RAND
bool "HW Engine for random libray support"
bool "HW Engine for random library support"
endchoice
@ -448,7 +448,7 @@ config ZSTD
config SPL_LZ4
bool "Enable LZ4 decompression support in SPL"
help
This enables support for tge LZ4 decompression algorithm in SPL. LZ4
This enables support for the LZ4 decompression algorithm in SPL. LZ4
is a lossless data compression algorithm that is focused on
fast compression and decompression speed. It belongs to the LZ77
family of byte-oriented compression schemes.
@ -456,7 +456,7 @@ config SPL_LZ4
config SPL_LZMA
bool "Enable LZMA decompression support for SPL build"
help
This enables support for LZMA compression altorithm for SPL boot.
This enables support for LZMA compression algorithm for SPL boot.
config SPL_LZO
bool "Enable LZO decompression support in SPL"

View file

@ -156,7 +156,7 @@ def pytest_configure(config):
o_opt = ''
cmds = (
['make', o_opt, '-s', board_type + '_defconfig'],
['make', o_opt, '-s', '-j8'],
['make', o_opt, '-s', '-j{}'.format(os.cpu_count())],
)
name = 'make'

8
tools/env/fw_env.c vendored
View file

@ -946,11 +946,17 @@ static int flash_read_buf(int dev, int fd, void *buf, size_t count,
lseek(fd, blockstart + block_seek, SEEK_SET);
rc = read(fd, buf + processed, readlen);
if (rc != readlen) {
if (rc == -1) {
fprintf(stderr, "Read error on %s: %s\n",
DEVNAME(dev), strerror(errno));
return -1;
}
if (rc != readlen) {
fprintf(stderr, "Read error on %s: "
"Attempted to read %d bytes but got %d\n",
DEVNAME(dev), readlen, rc);
return -1;
}
#ifdef DEBUG
fprintf(stderr, "Read 0x%x bytes at 0x%llx on %s\n",
rc, (unsigned long long)blockstart + block_seek,

View file

@ -111,7 +111,7 @@ static int fit_calc_size(struct image_tool_params *params)
if (size < 0)
return -1;
/* Add space for properties */
/* Add space for properties and hash node */
total_size += size + 300;
}
@ -192,6 +192,18 @@ static void get_basename(char *str, int size, const char *fname)
str[len] = '\0';
}
/**
* add_crc_node() - Add a hash node to request a CRC checksum for an image
*
* @fdt: Device tree to add to (in sequential-write mode)
*/
static void add_crc_node(void *fdt)
{
fdt_begin_node(fdt, "hash-1");
fdt_property_string(fdt, FIT_ALGO_PROP, "crc32");
fdt_end_node(fdt);
}
/**
* fit_write_images() - Write out a list of images to the FIT
*
@ -230,6 +242,7 @@ static int fit_write_images(struct image_tool_params *params, char *fdt)
ret = fdt_property_file(params, fdt, FIT_DATA_PROP, params->datafile);
if (ret)
return ret;
add_crc_node(fdt);
fdt_end_node(fdt);
/* Now the device tree files if available */
@ -252,6 +265,7 @@ static int fit_write_images(struct image_tool_params *params, char *fdt)
genimg_get_arch_short_name(params->arch));
fdt_property_string(fdt, FIT_COMP_PROP,
genimg_get_comp_short_name(IH_COMP_NONE));
add_crc_node(fdt);
fdt_end_node(fdt);
}
@ -269,7 +283,7 @@ static int fit_write_images(struct image_tool_params *params, char *fdt)
params->fit_ramdisk);
if (ret)
return ret;
add_crc_node(fdt);
fdt_end_node(fdt);
}