diff options
83 files changed, 534 insertions, 235 deletions
diff --git a/MAINTAINERS b/MAINTAINERS index f42cb220ee9..d5059f611da 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -59,12 +59,6 @@ S: Maintained T: git git://git.denx.de/u-boot-arc.git F: arch/arc/ -ARC HSDK CREG GPIO -M: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com> -S: Maintained -L: uboot-snps-arc@synopsys.com -F: drivers/gpio/hsdk-creg-gpio.c - ARC HSDK CGU CLOCK M: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com> S: Maintained @@ -73,6 +67,12 @@ F: drivers/clk/clk-hsdk-cgu.c F: include/dt-bindings/clock/snps,hsdk-cgu.h F: doc/device-tree-bindings/clock/snps,hsdk-cgu.txt +ARC HSDK CREG GPIO +M: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com> +S: Maintained +L: uboot-snps-arc@synopsys.com +F: drivers/gpio/hsdk-creg-gpio.c + ARM M: Albert Aribaud <albert.u.boot@aribaud.net> S: Maintained @@ -185,6 +185,12 @@ M: Mateusz Kulikowski <mateusz.kulikowski@gmail.com> S: Maintained F: arch/arm/mach-snapdragon/ +ARM STI +M: Patrice Chotard <patrice.chotard@st.com> +S: Maintained +F: arch/arm/mach-sti/ +F: arch/arm/include/asm/arch-sti*/ + ARM STM SPEAR #M: Vipin Kumar <vipin.kumar@st.com> S: Orphaned (Since 2016-02) @@ -198,12 +204,6 @@ S: Maintained F: arch/arm/cpu/armv7/stv0991/ F: arch/arm/include/asm/arch-stv0991/ -ARM STI -M: Patrice Chotard <patrice.chotard@st.com> -S: Maintained -F: arch/arm/mach-sti/ -F: arch/arm/include/asm/arch-sti*/ - ARM SUNXI M: Jagan Teki <jagan@openedev.com> M: Maxime Ripard <maxime.ripard@bootlin.com> @@ -354,13 +354,6 @@ S: Maintained T: git git://git.denx.de/u-boot-mmc.git F: drivers/mmc/ -NETWORK -M: Joe Hershberger <joe.hershberger@ni.com> -S: Maintained -T: git git://git.denx.de/u-boot-net.git -F: drivers/net/ -F: net/ - NAND FLASH M: Scott Wood <oss@buserror.net> S: Maintained @@ -373,6 +366,13 @@ S: Maintained T: git git://git.denx.de/u-boot-nds32.git F: arch/nds32/ +NETWORK +M: Joe Hershberger <joe.hershberger@ni.com> +S: Maintained +T: git git://git.denx.de/u-boot-net.git +F: drivers/net/ +F: net/ + NIOS M: Thomas Chou <thomas@wytron.com.tw> S: Maintained @@ -5,7 +5,7 @@ VERSION = 2018 PATCHLEVEL = 03 SUBLEVEL = -EXTRAVERSION = -rc4 +EXTRAVERSION = NAME = # *DOCUMENTATION* diff --git a/arch/arm/dts/imx6dl-icore-rqs.dts b/arch/arm/dts/imx6dl-icore-rqs.dts index 0f1de3f18ce..820e66c7249 100644 --- a/arch/arm/dts/imx6dl-icore-rqs.dts +++ b/arch/arm/dts/imx6dl-icore-rqs.dts @@ -41,7 +41,7 @@ /dts-v1/; -#include "imx6q.dtsi" +#include "imx6dl.dtsi" #include "imx6qdl-icore-rqs.dtsi" / { diff --git a/arch/arm/dts/imx6qdl-icore-rqs.dtsi b/arch/arm/dts/imx6qdl-icore-rqs.dtsi index 1623838490f..4f7f10203d3 100644 --- a/arch/arm/dts/imx6qdl-icore-rqs.dtsi +++ b/arch/arm/dts/imx6qdl-icore-rqs.dtsi @@ -115,9 +115,13 @@ &usdhc4 { u-boot,dm-spl; - pinctrl-names = "default"; + pinctrl-names = "default", "state_100mhz", "state_200mhz"; pinctrl-0 = <&pinctrl_usdhc4>; + pinctrl-1 = <&pinctrl_usdhc4_100mhz>; + pinctrl-2 = <&pinctrl_usdhc4_200mhz>; + bus-witdh = <8>; no-1-8-v; + non-removable; status = "okay"; }; @@ -198,4 +202,35 @@ MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17070 >; }; + + pinctrl_usdhc4_100mhz: usdhc4grp_100mhz { + fsl,pins = < + MX6QDL_PAD_SD4_CMD__SD4_CMD 0x170B1 + MX6QDL_PAD_SD4_CLK__SD4_CLK 0x100B1 + MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x170B1 + MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x170B1 + MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x170B1 + MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x170B1 + MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x170B1 + MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x170B1 + MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x170B1 + MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x170B1 + >; + }; + + pinctrl_usdhc4_200mhz: usdhc4grp_200mhz { + fsl,pins = < + MX6QDL_PAD_SD4_CMD__SD4_CMD 0x170F9 + MX6QDL_PAD_SD4_CLK__SD4_CLK 0x100F9 + MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x170F9 + MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x170F9 + MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x170F9 + MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x170F9 + MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x170F9 + MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x170F9 + MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x170F9 + MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x170F9 + >; + }; + }; diff --git a/arch/arm/include/asm/mach-imx/hab.h b/arch/arm/include/asm/mach-imx/hab.h index 561de9c6f70..ce9a44dacda 100644 --- a/arch/arm/include/asm/mach-imx/hab.h +++ b/arch/arm/include/asm/mach-imx/hab.h @@ -9,6 +9,7 @@ #define __SECURE_MX6Q_H__ #include <linux/types.h> +#include <linux/compiler.h> /* * IVT header definitions @@ -21,11 +22,11 @@ #define IVT_HEADER_V1 0x40 #define IVT_HEADER_V2 0x41 -struct ivt_header { +struct __packed ivt_header { uint8_t magic; uint16_t length; uint8_t version; -} __attribute__((packed)); +}; struct ivt { struct ivt_header hdr; /* IVT header above */ diff --git a/arch/arm/mach-imx/hab.c b/arch/arm/mach-imx/hab.c index c3fc699d023..c730c8f7a91 100644 --- a/arch/arm/mach-imx/hab.c +++ b/arch/arm/mach-imx/hab.c @@ -526,10 +526,8 @@ int imx_hab_authenticate_image(uint32_t ddr_start, uint32_t image_size, } /* Verify if IVT DCD pointer is NULL */ - if (ivt->dcd) { - puts("Error: DCD pointer must be NULL\n"); - goto hab_authentication_exit; - } + if (ivt->dcd) + puts("Warning: DCD pointer should be NULL\n"); start = ddr_start; bytes = image_size; diff --git a/arch/arm/mach-imx/syscounter.c b/arch/arm/mach-imx/syscounter.c index 9290918dca2..1d4ebfe3439 100644 --- a/arch/arm/mach-imx/syscounter.c +++ b/arch/arm/mach-imx/syscounter.c @@ -62,7 +62,7 @@ int timer_init(void) unsigned long val, freq; freq = CONFIG_SC_TIMER_CLK; - asm("mcr p15, 0, %0, c14, c0, 0" : : "r" (freq)); + asm volatile("mcr p15, 0, %0, c14, c0, 0" : : "r" (freq)); writel(freq, &sctr->cntfid0); @@ -82,7 +82,7 @@ unsigned long long get_ticks(void) { unsigned long long now; - asm("mrrc p15, 0, %Q0, %R0, c14" : "=r" (now)); + asm volatile("mrrc p15, 0, %Q0, %R0, c14" : "=r" (now)); gd->arch.tbl = (unsigned long)(now & 0xffffffff); gd->arch.tbu = (unsigned long)(now >> 32); diff --git a/board/gdsys/a38x/MAINTAINERS b/board/gdsys/a38x/MAINTAINERS index 3cb9b63ff0d..d31e675ddce 100644 --- a/board/gdsys/a38x/MAINTAINERS +++ b/board/gdsys/a38x/MAINTAINERS @@ -1,6 +1,6 @@ A38X BOARD -M: Dirk Eibach <eibach@gdsys.cc> -M: Mario Six <six@gdsys.de> +M: Dirk Eibach <dirk.eibach@gdsys.cc> +M: Mario Six <mario.six@gdsys.cc> S: Maintained F: board/gdsys/a38x/ F: include/configs/controlcenterdc.h diff --git a/board/gdsys/common/adv7611.c b/board/gdsys/common/adv7611.c index b728274cce6..5355292280d 100644 --- a/board/gdsys/common/adv7611.c +++ b/board/gdsys/common/adv7611.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2014 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/common/fanctrl.c b/board/gdsys/common/fanctrl.c index 44569bb1aba..52a4f33836d 100644 --- a/board/gdsys/common/fanctrl.c +++ b/board/gdsys/common/fanctrl.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2015 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/common/fpga.c b/board/gdsys/common/fpga.c index e10c105feb1..09c0446f903 100644 --- a/board/gdsys/common/fpga.c +++ b/board/gdsys/common/fpga.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2013 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/common/ihs_mdio.c b/board/gdsys/common/ihs_mdio.c index 262ead55164..822517d4b28 100644 --- a/board/gdsys/common/ihs_mdio.c +++ b/board/gdsys/common/ihs_mdio.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2014 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/common/ioep-fpga.c b/board/gdsys/common/ioep-fpga.c index f72a01e5b26..7ebce04a8a2 100644 --- a/board/gdsys/common/ioep-fpga.c +++ b/board/gdsys/common/ioep-fpga.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2014 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/common/miiphybb.c b/board/gdsys/common/miiphybb.c index 310562902b2..09b62253cd7 100644 --- a/board/gdsys/common/miiphybb.c +++ b/board/gdsys/common/miiphybb.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2010 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/common/osd.c b/board/gdsys/common/osd.c index add95743698..454468ea3bc 100644 --- a/board/gdsys/common/osd.c +++ b/board/gdsys/common/osd.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2010 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/common/osd.h b/board/gdsys/common/osd.h index 5b3f14bf05e..a3b0e3d5ae8 100644 --- a/board/gdsys/common/osd.h +++ b/board/gdsys/common/osd.h @@ -1,6 +1,6 @@ /* * (C) Copyright 2010 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/common/phy.c b/board/gdsys/common/phy.c index fb926581788..45d2b81f37c 100644 --- a/board/gdsys/common/phy.c +++ b/board/gdsys/common/phy.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2014 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/mpc8308/MAINTAINERS b/board/gdsys/mpc8308/MAINTAINERS index 21470bf6b05..755b9a23858 100644 --- a/board/gdsys/mpc8308/MAINTAINERS +++ b/board/gdsys/mpc8308/MAINTAINERS @@ -1,5 +1,5 @@ MPC8308 BOARD -M: Dirk Eibach <eibach@gdsys.de> +M: Dirk Eibach <dirk.eibach@gdsys.cc> S: Maintained F: board/gdsys/mpc8308/ F: include/configs/hrcon.h diff --git a/board/gdsys/mpc8308/Makefile b/board/gdsys/mpc8308/Makefile index 42702fb967b..f9671cfbd69 100644 --- a/board/gdsys/mpc8308/Makefile +++ b/board/gdsys/mpc8308/Makefile @@ -1,6 +1,6 @@ # # (C) Copyright 2014 -# Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de +# Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc # # SPDX-License-Identifier: GPL-2.0+ # diff --git a/board/gdsys/mpc8308/hrcon.c b/board/gdsys/mpc8308/hrcon.c index 96f60bef95b..ed5cb332794 100644 --- a/board/gdsys/mpc8308/hrcon.c +++ b/board/gdsys/mpc8308/hrcon.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2014 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/mpc8308/mpc8308.c b/board/gdsys/mpc8308/mpc8308.c index 86b257f4de6..928f75a02f0 100644 --- a/board/gdsys/mpc8308/mpc8308.c +++ b/board/gdsys/mpc8308/mpc8308.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2014 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/mpc8308/strider.c b/board/gdsys/mpc8308/strider.c index 88211050610..c8ea8a4ae0a 100644 --- a/board/gdsys/mpc8308/strider.c +++ b/board/gdsys/mpc8308/strider.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2014 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/board/gdsys/p1022/MAINTAINERS b/board/gdsys/p1022/MAINTAINERS index 5119fbb1426..99f1200c098 100644 --- a/board/gdsys/p1022/MAINTAINERS +++ b/board/gdsys/p1022/MAINTAINERS @@ -1,5 +1,5 @@ P1022 BOARD -M: Dirk Eibach <eibach@gdsys.de> +M: Dirk Eibach <dirk.eibach@gdsys.cc> S: Maintained F: board/gdsys/p1022/ F: include/configs/controlcenterd.h diff --git a/configs/am3517_crane_defconfig b/configs/am3517_crane_defconfig index b70e54d7140..9d092ef0487 100644 --- a/configs/am3517_crane_defconfig +++ b/configs/am3517_crane_defconfig @@ -19,7 +19,6 @@ CONFIG_CMD_NAND=y CONFIG_CMD_USB=y # CONFIG_CMD_SETEXPR is not set # CONFIG_CMD_NET is not set -CONFIG_CMD_DHCP=y CONFIG_CMD_EXT2=y CONFIG_CMD_FAT=y CONFIG_CMD_JFFS2=y diff --git a/configs/efi-x86_defconfig b/configs/efi-x86_defconfig index 83850d478fb..7d162a8e048 100644 --- a/configs/efi-x86_defconfig +++ b/configs/efi-x86_defconfig @@ -16,7 +16,6 @@ CONFIG_CMD_SF=y CONFIG_CMD_SPI=y CONFIG_CMD_USB=y # CONFIG_CMD_NET is not set -CONFIG_CMD_DHCP=y CONFIG_CMD_PING=y CONFIG_CMD_TIME=y CONFIG_CMD_EXT2=y diff --git a/configs/imx6qdl_icore_mipi_defconfig b/configs/imx6qdl_icore_mipi_defconfig index 208fc89b7e5..6dc8d2fe13f 100644 --- a/configs/imx6qdl_icore_mipi_defconfig +++ b/configs/imx6qdl_icore_mipi_defconfig @@ -15,11 +15,11 @@ CONFIG_DEBUG_UART=y CONFIG_FIT=y CONFIG_FIT_SIGNATURE=y CONFIG_FIT_VERBOSE=y +CONFIG_SPL_LOAD_FIT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/mach-imx/spl_sd.cfg" CONFIG_BOOTDELAY=3 CONFIG_SUPPORT_RAW_INITRD=y CONFIG_SPL=y -CONFIG_SPL_LOAD_FIT=y CONFIG_SPL_OS_BOOT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="icorem6qdl-mipi> " diff --git a/configs/imx6qdl_icore_mmc_defconfig b/configs/imx6qdl_icore_mmc_defconfig index d386946df60..a3f5e8fc34f 100644 --- a/configs/imx6qdl_icore_mmc_defconfig +++ b/configs/imx6qdl_icore_mmc_defconfig @@ -15,11 +15,11 @@ CONFIG_DEBUG_UART=y CONFIG_FIT=y CONFIG_FIT_SIGNATURE=y CONFIG_FIT_VERBOSE=y +CONFIG_SPL_LOAD_FIT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/mach-imx/spl_sd.cfg" CONFIG_BOOTDELAY=3 CONFIG_SUPPORT_RAW_INITRD=y CONFIG_SPL=y -CONFIG_SPL_LOAD_FIT=y CONFIG_SPL_OS_BOOT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="icorem6qdl> " diff --git a/configs/imx6qdl_icore_nand_defconfig b/configs/imx6qdl_icore_nand_defconfig index 5e142272d6f..2a860592262 100644 --- a/configs/imx6qdl_icore_nand_defconfig +++ b/configs/imx6qdl_icore_nand_defconfig @@ -33,7 +33,6 @@ CONFIG_CMD_FS_GENERIC=y CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand" CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:2m(spl),2m(uboot),1m(env),8m(kernel),1m(dtb),-(rootfs)" CONFIG_CMD_UBI=y -CONFIG_OF_LIST="imx6q-icore imx6dl-icore" CONFIG_ENV_IS_IN_NAND=y CONFIG_SYS_I2C_MXC=y CONFIG_NAND=y diff --git a/configs/imx6qdl_icore_rqs_defconfig b/configs/imx6qdl_icore_rqs_defconfig index 13f34553697..6c8fb85ca2b 100644 --- a/configs/imx6qdl_icore_rqs_defconfig +++ b/configs/imx6qdl_icore_rqs_defconfig @@ -14,11 +14,11 @@ CONFIG_DEFAULT_DEVICE_TREE="imx6q-icore-rqs" CONFIG_FIT=y CONFIG_FIT_SIGNATURE=y CONFIG_FIT_VERBOSE=y +CONFIG_SPL_LOAD_FIT=y CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/mach-imx/spl_sd.cfg" CONFIG_BOOTDELAY=3 CONFIG_SUPPORT_RAW_INITRD=y CONFIG_SPL=y -CONFIG_SPL_LOAD_FIT=y CONFIG_SPL_OS_BOOT=y CONFIG_HUSH_PARSER=y CONFIG_SYS_PROMPT="icorem6qdl-rqs> " diff --git a/configs/omap3_pandora_defconfig b/configs/omap3_pandora_defconfig index 649a57458fd..a004f147441 100644 --- a/configs/omap3_pandora_defconfig +++ b/configs/omap3_pandora_defconfig @@ -31,5 +31,5 @@ CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SYS_NS16550=y CONFIG_OMAP3_SPI=y CONFIG_FAT_WRITE=y -CONFIG_OF_LIBFDT=y # CONFIG_REGEX is not set +CONFIG_OF_LIBFDT=y diff --git a/configs/thunderx_88xx_defconfig b/configs/thunderx_88xx_defconfig index 4b25c0814c8..891a4173d9c 100644 --- a/configs/thunderx_88xx_defconfig +++ b/configs/thunderx_88xx_defconfig @@ -27,4 +27,3 @@ CONFIG_DEBUG_UART_PL011=y CONFIG_DEBUG_UART_BASE=0x87e024000000 CONFIG_DEBUG_UART_CLOCK=24000000 CONFIG_DEBUG_UART_SKIP_INIT=y -CONFIG_REGEX=y diff --git a/configs/vct_platinumavc_defconfig b/configs/vct_platinumavc_defconfig index 57b30779390..174a840f391 100644 --- a/configs/vct_platinumavc_defconfig +++ b/configs/vct_platinumavc_defconfig @@ -10,7 +10,6 @@ CONFIG_CMD_EEPROM=y CONFIG_CMD_I2C=y # CONFIG_CMD_SETEXPR is not set # CONFIG_CMD_NET is not set -CONFIG_CMD_DHCP=y # CONFIG_CMD_NFS is not set # CONFIG_ISO_PARTITION is not set CONFIG_ENV_IS_IN_FLASH=y diff --git a/configs/vct_platinumavc_onenand_defconfig b/configs/vct_platinumavc_onenand_defconfig index de1c1e8589a..c33dc0d4f9f 100644 --- a/configs/vct_platinumavc_onenand_defconfig +++ b/configs/vct_platinumavc_onenand_defconfig @@ -12,7 +12,6 @@ CONFIG_CMD_I2C=y CONFIG_CMD_ONENAND=y # CONFIG_CMD_SETEXPR is not set # CONFIG_CMD_NET is not set -CONFIG_CMD_DHCP=y # CONFIG_CMD_NFS is not set CONFIG_CMD_JFFS2=y CONFIG_MTDIDS_DEFAULT="onenand0=onenand" diff --git a/configs/zynq_zc770_xm011_defconfig b/configs/zynq_zc770_xm011_defconfig index eeff2c8260a..b6ddf986c54 100644 --- a/configs/zynq_zc770_xm011_defconfig +++ b/configs/zynq_zc770_xm011_defconfig @@ -42,4 +42,3 @@ CONFIG_DEBUG_UART_BASE=0xe0001000 CONFIG_DEBUG_UART_CLOCK=50000000 CONFIG_DEBUG_UART_ANNOUNCE=y CONFIG_ZYNQ_SERIAL=y -CONFIG_REGEX=y diff --git a/configs/zynq_zc770_xm011_x16_defconfig b/configs/zynq_zc770_xm011_x16_defconfig index 235d39f49f3..bd0ec7b33b7 100644 --- a/configs/zynq_zc770_xm011_x16_defconfig +++ b/configs/zynq_zc770_xm011_x16_defconfig @@ -43,4 +43,3 @@ CONFIG_DEBUG_UART_BASE=0xe0001000 CONFIG_DEBUG_UART_CLOCK=50000000 CONFIG_DEBUG_UART_ANNOUNCE=y CONFIG_ZYNQ_SERIAL=y -CONFIG_REGEX=y diff --git a/doc/README.imx6 b/doc/README.imx6 index 2e8f1d8a8ab..b0644f8491f 100644 --- a/doc/README.imx6 +++ b/doc/README.imx6 @@ -113,51 +113,3 @@ issue the command: In order to load SPL and u-boot.img via imx_usb_loader tool, please refer to doc/README.sdp. -3. Using Secure Boot on i.MX6 machines with SPL support -------------------------------------------------------- - -This version of U-Boot is able to build a signable version of the SPL -as well as a signable version of the U-Boot image. The signature can -be verified through High Assurance Boot (HAB). - -CONFIG_SECURE_BOOT is needed to build those two binaries. -After building, you need to create a command sequence file and use -Freescales Code Signing Tool to sign both binaries. After creation, -the mkimage tool outputs the required information about the HAB Blocks -parameter for the CSF. During the build, the information is preserved -in log files named as the binaries. (SPL.log and u-boot-ivt.log). - -More information about the CSF and HAB can be found in the AN4581. -https://cache.freescale.com/files/32bit/doc/app_note/AN4581.pdf - -We don't want to explain how to create a PKI tree or SRK table as -this is well explained in the Application Note. - -Example Output of the SPL (imximage) creation: - Image Type: Freescale IMX Boot Image - Image Ver: 2 (i.MX53/6/7 compatible) - Mode: DCD - Data Size: 61440 Bytes = 60.00 kB = 0.06 MB - Load Address: 00907420 - Entry Point: 00908000 - HAB Blocks: 00907400 00000000 0000cc00 - -Example Output of the u-boot-ivt.img (firmware_ivt) creation: - Image Name: U-Boot 2016.11-rc1-31589-g2a4411 - Created: Sat Nov 5 21:53:28 2016 - Image Type: ARM U-Boot Firmware with HABv4 IVT (uncompressed) - Data Size: 352192 Bytes = 343.94 kB = 0.34 MB - Load Address: 17800000 - Entry Point: 00000000 - HAB Blocks: 0x177fffc0 0x0000 0x00054020 - -The CST (Code Signing Tool) can be downloaded from NXP. -# Compile CSF and create signature -./cst --o csf-u-boot.bin < command_sequence_uboot.csf -./cst --o csf-SPL.bin < command_sequence_spl.csf -# Append compiled CSF to Binary -cat SPL csf-SPL.bin > SPL-signed -cat u-boot-ivt.img csf-u-boot.bin > u-boot-signed.img - -These two signed binaries can be used on an i.MX6 in closed -configuration when the according SRK Table Hash has been flashed. diff --git a/doc/README.mxc_hab b/doc/README.mxc_hab index 4bd07d31516..75390a505e6 100644 --- a/doc/README.mxc_hab +++ b/doc/README.mxc_hab @@ -1,4 +1,5 @@ -High Assurance Boot (HAB) for i.MX6 CPUs +1. High Assurance Boot (HAB) for i.MX CPUs +------------------------------------------ To enable the authenticated or encrypted boot mode of U-Boot, it is required to set the proper configuration for the target board. This @@ -10,14 +11,22 @@ In addition, the U-Boot image to be programmed into the boot media needs to be properly constructed, i.e. it must contain a proper Command Sequence File (CSF). -The Initial Vector Table contains a pointer to the CSF. Please see -doc/README.imximage for how to prepare u-boot.imx. +The CSF itself is generated by the i.MX High Assurance Boot Reference +Code Signing Tool. +https://www.nxp.com/webapp/sps/download/license.jsp?colCode=IMX_CST_TOOL -The CSF itself is being generated by Freescale HAB tools. +More information about the CSF and HAB can be found in the AN4581. +https://www.nxp.com/docs/en/application-note/AN4581.pdf -mkimage will output additional information about "HAB Blocks" -which can be used in the Freescale tooling to authenticate U-Boot -(entries in the CSF file). +We don't want to explain how to create a PKI tree or SRK table as +this is well explained in the Application Note. + +2. Secure Boot on non-SPL targets +--------------------------------- + +On non-SPL targets a singe U-Boot binary is generated, mkimage will +output additional information about "HAB Blocks" which can be used +in the CST to authenticate the U-Boot image (entries in the CSF file). Image Type: Freescale IMX Boot Image Image Ver: 2 (i.MX53/6 compatible) @@ -33,31 +42,69 @@ HAB Blocks: 177ff400 00000000 0004dc00 | --------------------------- (3) -(1) Size of area in file u-boot.imx to sign +(1) Size of area in file u-boot-dtb.imx to sign This area should include the IVT, the Boot Data the DCD and U-Boot itself. -(2) Start of area in u-boot.imx to sign +(2) Start of area in u-boot-dtb.imx to sign (3) Start of area in RAM to authenticate CONFIG_SECURE_BOOT currently enables only an additional command 'hab_status' in U-Boot to retrieve the HAB status and events. This can be useful while developing and testing HAB. -Commands to generate a signed U-Boot using Freescale HAB tools: -cst --o U-Boot_CSF.bin < U-Boot.CSF -objcopy -I binary -O binary --pad-to 0x2000 --gap-fill=0x00 \ - U-Boot_CSF.bin U-Boot_CSF_pad.bin -cat u-boot.imx U-Boot_CSF_pad.bin > u-boot-signed.imx - -NOTE: U-Boot_CSF.bin needs to be padded to the value specified in -the imximage.cfg file. - -Setup U-Boot Image for Encrypted Boot -------------------------------------- +Commands to generate a signed U-Boot using i.MX HAB CST tool: +# Compile CSF and create signature +cst --o csf-u-boot.bin --i command_sequence_uboot.csf +# Append compiled CSF to Binary +cat u-boot-dtb.imx csf-u-boot.bin > u-boot-signed.imx + +3. Secure Boot on SPL targets +----------------------------- + +This version of U-Boot is able to build a signable version of the SPL +as well as a signable version of the U-Boot image. The signature can +be verified through High Assurance Boot (HAB). + +After building, you need to create a command sequence file and use +i.MX HAB Code Signing Tool to sign both binaries. After creation, +the mkimage tool outputs the required information about the HAB Blocks +parameter for the CSF. During the build, the information is preserved +in log files named as the binaries. (SPL.log and u-boot-ivt.log). + +Example Output of the SPL (imximage) creation: + Image Type: Freescale IMX Boot Image + Image Ver: 2 (i.MX53/6/7 compatible) + Mode: DCD + Data Size: 61440 Bytes = 60.00 kB = 0.06 MB + Load Address: 00907420 + Entry Point: 00908000 + HAB Blocks: 00907400 00000000 0000cc00 + +Example Output of the u-boot-ivt.img (firmware_ivt) creation: + Image Name: U-Boot 2016.11-rc1-31589-g2a4411 + Created: Sat Nov 5 21:53:28 2016 + Image Type: ARM U-Boot Firmware with HABv4 IVT (uncompressed) + Data Size: 352192 Bytes = 343.94 kB = 0.34 MB + Load Address: 17800000 + Entry Point: 00000000 + HAB Blocks: 0x177fffc0 0x0000 0x00054020 + +# Compile CSF and create signature +cst --o csf-u-boot.bin --i command_sequence_uboot.csf +cst --o csf-SPL.bin --i command_sequence_spl.csf +# Append compiled CSF to Binary +cat SPL csf-SPL.bin > SPL-signed +cat u-boot-ivt.img csf-u-boot.bin > u-boot-signed.img + +These two signed binaries can be used on an i.MX in closed +configuration when the according SRK Table Hash has been flashed. + +4. Setup U-Boot Image for Encrypted Boot +---------------------------------------- An authenticated U-Boot image is used as starting point for -Encrypted Boot. The image is encrypted by Freescale's Code -Signing Tool (CST). The CST replaces only the image data of -u-boot.imx with the encrypted data. The Initial Vector Table, +Encrypted Boot. The image is encrypted by i.MX Code Signing +Tool (CST). The CST replaces only the image data of +u-boot-dtb.imx with the encrypted data. The Initial Vector Table, DCD, and Boot data, remains in plaintext. The image data is encrypted with a Encryption Key (DEK). @@ -87,9 +134,7 @@ U-Boot image. Note that the blob needs to be transferred back to the host.Then the following commands are used to construct the final image. -objcopy -I binary -O binary --pad-to 0x2000 --gap-fill=0x00 \ - U-Boot_CSF.bin U-Boot_CSF_pad.bin -cat u-boot.imx U-Boot_CSF_pad.bin > u-boot-signed.imx +cat u-boot-dtb.imx csf-u-boot.bin > u-boot-signed.imx objcopy -I binary -O binary --pad-to <blob_dst> --gap-fill=0x00 \ u-boot-signed.imx u-boot-signed-pad.bin cat u-boot-signed-pad.imx DEK_blob.bin > u-boot-encrypted.imx diff --git a/drivers/gpio/mpc8xxx_gpio.c b/drivers/gpio/mpc8xxx_gpio.c index 326fd1672d0..c7acf116597 100644 --- a/drivers/gpio/mpc8xxx_gpio.c +++ b/drivers/gpio/mpc8xxx_gpio.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2016 - * Mario Six, Guntermann & Drunck GmbH, six@gdsys.de + * Mario Six, Guntermann & Drunck GmbH, mario.six@gdsys.cc * * based on arch/powerpc/include/asm/mpc85xx_gpio.h, which is * diff --git a/drivers/gpio/pca9698.c b/drivers/gpio/pca9698.c index d2663f7331a..3995c496aee 100644 --- a/drivers/gpio/pca9698.c +++ b/drivers/gpio/pca9698.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2011 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/drivers/i2c/ihs_i2c.c b/drivers/i2c/ihs_i2c.c index ee96cd50d5b..92985212200 100644 --- a/drivers/i2c/ihs_i2c.c +++ b/drivers/i2c/ihs_i2c.c @@ -1,6 +1,6 @@ /* * (C) Copyright 2013 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/drivers/serial/serial_bcm283x_mu.c b/drivers/serial/serial_bcm283x_mu.c index 40029fadbcb..d87b44e9026 100644 --- a/drivers/serial/serial_bcm283x_mu.c +++ b/drivers/serial/serial_bcm283x_mu.c @@ -51,6 +51,8 @@ struct bcm283x_mu_priv { struct bcm283x_mu_regs *regs; }; +static int bcm283x_mu_serial_getc(struct udevice *dev); + static int bcm283x_mu_serial_setbrg(struct udevice *dev, int baudrate) { struct bcm283x_mu_serial_platdata *plat = dev_get_platdata(dev); @@ -59,13 +61,17 @@ static int bcm283x_mu_serial_setbrg(struct udevice *dev, int baudrate) u32 divider; if (plat->skip_init) - return 0; + goto out; divider = plat->clock / (baudrate * 8); writel(BCM283X_MU_LCR_DATA_SIZE_8, ®s->lcr); writel(divider - 1, ®s->baud); +out: + /* Flush the RX queue - all data in there is bogus */ + while (bcm283x_mu_serial_getc(dev) != -EAGAIN) ; + return 0; } diff --git a/drivers/serial/serial_bcm283x_pl011.c b/drivers/serial/serial_bcm283x_pl011.c index bfd39f84f35..dad72368952 100644 --- a/drivers/serial/serial_bcm283x_pl011.c +++ b/drivers/serial/serial_bcm283x_pl011.c @@ -9,6 +9,7 @@ #include <asm/gpio.h> #include <dm/pinctrl.h> #include <dm/platform_data/serial_pl01x.h> +#include <serial.h> #include "serial_pl01x_internal.h" /* @@ -55,6 +56,28 @@ static int bcm283x_pl011_serial_ofdata_to_platdata(struct udevice *dev) return 0; } +static int bcm283x_pl011_serial_setbrg(struct udevice *dev, int baudrate) +{ + int r; + + r = pl01x_serial_setbrg(dev, baudrate); + + /* + * We may have been muxed to a bogus line before. Drain the RX + * queue so we start at a clean slate. + */ + while (pl01x_serial_getc(dev) != -EAGAIN) ; + + return r; +} + +static const struct dm_serial_ops bcm283x_pl011_serial_ops = { + .putc = pl01x_serial_putc, + .pending = pl01x_serial_pending, + .getc = pl01x_serial_getc, + .setbrg = bcm283x_pl011_serial_setbrg, +}; + static const struct udevice_id bcm283x_pl011_serial_id[] = { {.compatible = "brcm,bcm2835-pl011", .data = TYPE_PL011}, {} @@ -67,7 +90,7 @@ U_BOOT_DRIVER(bcm283x_pl011_uart) = { .ofdata_to_platdata = of_match_ptr(bcm283x_pl011_serial_ofdata_to_platdata), .platdata_auto_alloc_size = sizeof(struct pl01x_serial_platdata), .probe = pl01x_serial_probe, - .ops = &pl01x_serial_ops, + .ops = &bcm283x_pl011_serial_ops, .flags = DM_FLAG_PRE_RELOC, .priv_auto_alloc_size = sizeof(struct pl01x_priv), }; diff --git a/drivers/serial/serial_pl01x.c b/drivers/serial/serial_pl01x.c index 23d9d839cbc..45f12827703 100644 --- a/drivers/serial/serial_pl01x.c +++ b/drivers/serial/serial_pl01x.c @@ -273,7 +273,7 @@ __weak struct serial_device *default_serial_console(void) #ifdef CONFIG_DM_SERIAL -static int pl01x_serial_setbrg(struct udevice *dev, int baudrate) +int pl01x_serial_setbrg(struct udevice *dev, int baudrate) { struct pl01x_serial_platdata *plat = dev_get_platdata(dev); struct pl01x_priv *priv = dev_get_priv(dev); @@ -299,21 +299,21 @@ int pl01x_serial_probe(struct udevice *dev) return 0; } -static int pl01x_serial_getc(struct udevice *dev) +int pl01x_serial_getc(struct udevice *dev) { struct pl01x_priv *priv = dev_get_priv(dev); return pl01x_getc(priv->regs); } -static int pl01x_serial_putc(struct udevice *dev, const char ch) +int pl01x_serial_putc(struct udevice *dev, const char ch) { struct pl01x_priv *priv = dev_get_priv(dev); return pl01x_putc(priv->regs, ch); } -static int pl01x_serial_pending(struct udevice *dev, bool input) +int pl01x_serial_pending(struct udevice *dev, bool input) { struct pl01x_priv *priv = dev_get_priv(dev); unsigned int fr = readl(&priv->regs->fr); @@ -324,7 +324,7 @@ static int pl01x_serial_pending(struct udevice *dev, bool input) return fr & UART_PL01x_FR_TXFF ? 0 : 1; } -const struct dm_serial_ops pl01x_serial_ops = { +static const struct dm_serial_ops pl01x_serial_ops = { .putc = pl01x_serial_putc, .pending = pl01x_serial_pending, .getc = pl01x_serial_getc, diff --git a/drivers/serial/serial_pl01x_internal.h b/drivers/serial/serial_pl01x_internal.h index c56dd54c7b8..d4605f24a39 100644 --- a/drivers/serial/serial_pl01x_internal.h +++ b/drivers/serial/serial_pl01x_internal.h @@ -43,7 +43,12 @@ struct pl01x_regs { int pl01x_serial_ofdata_to_platdata(struct udevice *dev); int pl01x_serial_probe(struct udevice *dev); -extern const struct dm_serial_ops pl01x_serial_ops; + +/* Needed for external pl01x_serial_ops drivers */ +int pl01x_serial_putc(struct udevice *dev, const char ch); +int pl01x_serial_pending(struct udevice *dev, bool input); +int pl01x_serial_getc(struct udevice *dev); +int pl01x_serial_setbrg(struct udevice *dev, int baudrate); struct pl01x_priv { struct pl01x_regs *regs; diff --git a/drivers/tpm/tpm_atmel_twi.c b/drivers/tpm/tpm_atmel_twi.c index 4fd772dc4fc..860848777d8 100644 --- a/drivers/tpm/tpm_atmel_twi.c +++ b/drivers/tpm/tpm_atmel_twi.c @@ -1,7 +1,7 @@ /* * Copyright (C) 2013 Guntermann & Drunck, GmbH * - * Written by Dirk Eibach <eibach@gdsys.de> + * Written by Dirk Eibach <dirk.eibach@gdsys.cc> * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/fs/ext4/ext4_common.c b/fs/ext4/ext4_common.c index dac95453650..e3cc30a1e0a 100644 --- a/fs/ext4/ext4_common.c +++ b/fs/ext4/ext4_common.c @@ -2343,7 +2343,7 @@ int ext4fs_mount(unsigned part_length) /* Make sure this is an ext2 filesystem. */ if (le16_to_cpu(data->sblock.magic) != EXT2_MAGIC) - goto fail; + goto fail_noerr; if (le32_to_cpu(data->sblock.revision_level) == 0) { @@ -2379,6 +2379,7 @@ int ext4fs_mount(unsigned part_length) return 1; fail: printf("Failed to mount ext2 filesystem...\n"); +fail_noerr: free(data); ext4fs_root = NULL; diff --git a/fs/yaffs2/yaffs_guts.c b/fs/yaffs2/yaffs_guts.c index bbe0d700fb6..c8b27adda91 100644 --- a/fs/yaffs2/yaffs_guts.c +++ b/fs/yaffs2/yaffs_guts.c @@ -1872,8 +1872,8 @@ static int yaffs_new_obj_id(struct yaffs_dev *dev) n += YAFFS_NOBJECT_BUCKETS; list_for_each(i, &dev->obj_bucket[bucket].list) { /* If there is already one in the list */ - if (i && list_entry(i, struct yaffs_obj, - hash_link)->obj_id == n) { + if (list_entry(i, struct yaffs_obj, + hash_link)->obj_id == n) { found = 0; break; } diff --git a/fs/yaffs2/yaffsfs.c b/fs/yaffs2/yaffsfs.c index ba76a5ccdbd..47abc6bedae 100644 --- a/fs/yaffs2/yaffsfs.c +++ b/fs/yaffs2/yaffsfs.c @@ -2847,12 +2847,9 @@ static void yaffsfs_RemoveObjectCallback(struct yaffs_obj *obj) * the next one to prevent a hanging ptr. */ list_for_each(i, &search_contexts) { - if (i) { - dsc = list_entry(i, struct yaffsfs_DirSearchContxt, - others); - if (dsc->nextReturn == obj) - yaffsfs_DirAdvance(dsc); - } + dsc = list_entry(i, struct yaffsfs_DirSearchContxt, others); + if (dsc->nextReturn == obj) + yaffsfs_DirAdvance(dsc); } } diff --git a/include/configs/at91rm9200ek.h b/include/configs/at91rm9200ek.h index 9ce0a8f9bf5..8c27122c002 100644 --- a/include/configs/at91rm9200ek.h +++ b/include/configs/at91rm9200ek.h @@ -44,7 +44,6 @@ /* CPU configuration */ #define CONFIG_AT91RM9200 #define CONFIG_AT91RM9200EK -#define CONFIG_CPUAT91 #define USE_920T_MMU #include <asm/hardware.h> /* needed for port definitions */ diff --git a/include/configs/at91sam9263ek.h b/include/configs/at91sam9263ek.h index b6691feb681..7fe51c2c0b6 100644 --- a/include/configs/at91sam9263ek.h +++ b/include/configs/at91sam9263ek.h @@ -21,8 +21,6 @@ #define CONFIG_SYS_AT91_MAIN_CLOCK 16367660 /* 16.367 MHz crystal */ #define CONFIG_SYS_AT91_SLOW_CLOCK 32768 -#define CONFIG_AT91SAM9263EK 1 /* It's an AT91SAM9263EK Board */ - #define CONFIG_ARCH_CPU_INIT #define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */ diff --git a/include/configs/at91sam9rlek.h b/include/configs/at91sam9rlek.h index 08c8f48bb58..6f8fd2a035f 100644 --- a/include/configs/at91sam9rlek.h +++ b/include/configs/at91sam9rlek.h @@ -17,8 +17,6 @@ #define CONFIG_SYS_AT91_SLOW_CLOCK 32768 /* slow clock xtal */ #define CONFIG_SYS_AT91_MAIN_CLOCK 12000000 /* main clock xtal */ -#define CONFIG_AT91SAM9RLEK 1 /* It's an AT91SAM9RLEK Board */ - #define CONFIG_ARCH_CPU_INIT #define CONFIG_SKIP_LOWLEVEL_INIT diff --git a/include/configs/dbau1x00.h b/include/configs/dbau1x00.h index ebd2c239608..f00111a8c40 100644 --- a/include/configs/dbau1x00.h +++ b/include/configs/dbau1x00.h @@ -12,7 +12,6 @@ #ifndef __CONFIG_H #define __CONFIG_H -#define CONFIG_DBAU1X00 1 #define CONFIG_SOC_AU1X00 1 /* alchemy series cpu */ #ifdef CONFIG_DBAU1000 diff --git a/include/configs/draco.h b/include/configs/draco.h index 3278196b3af..c1816409a98 100644 --- a/include/configs/draco.h +++ b/include/configs/draco.h @@ -13,7 +13,6 @@ #ifndef __CONFIG_DRACO_H #define __CONFIG_DRACO_H -#define CONFIG_SIEMENS_DRACO #define CONFIG_SIEMENS_MACH_TYPE MACH_TYPE_DRACO #include "siemens-am33x-common.h" diff --git a/include/configs/edb93xx.h b/include/configs/edb93xx.h index 6e024d1b2fd..18ec6cb7583 100644 --- a/include/configs/edb93xx.h +++ b/include/configs/edb93xx.h @@ -34,7 +34,6 @@ #define CONFIG_SYS_LDSCRIPT "board/cirrus/edb93xx/u-boot.lds" #ifdef CONFIG_EDB9301 -#define CONFIG_EP9301 #define CONFIG_MACH_TYPE MACH_TYPE_EDB9301 #define CONFIG_ENV_SECT_SIZE 0x00020000 #elif defined(CONFIG_EDB9302) diff --git a/include/configs/exynos5420-common.h b/include/configs/exynos5420-common.h index ae9ead53f64..e13092515ad 100644 --- a/include/configs/exynos5420-common.h +++ b/include/configs/exynos5420-common.h @@ -10,8 +10,6 @@ #define __CONFIG_EXYNOS5420_H #define CONFIG_EXYNOS5420 -/* A variant of Exynos5420 (Exynos5 Family) */ -#define CONFIG_EXYNOS5800 #define CONFIG_EXYNOS5_DT diff --git a/include/configs/h2200.h b/include/configs/h2200.h index 608f5eec32f..4b380beee27 100644 --- a/include/configs/h2200.h +++ b/include/configs/h2200.h @@ -12,7 +12,6 @@ #define CONFIG_MACH_TYPE MACH_TYPE_H2200 #define CONFIG_CPU_PXA25X 1 -#define CONFIG_BOARD_H2200 #define CONFIG_NR_DRAM_BANKS 1 #define PHYS_SDRAM_1 0xa0000000 /* SDRAM Bank #1 */ diff --git a/include/configs/hrcon.h b/include/configs/hrcon.h index 44910859cc6..a8afb15ebae 100644 --- a/include/configs/hrcon.h +++ b/include/configs/hrcon.h @@ -1,6 +1,6 @@ /* * (C) Copyright 2014 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * * SPDX-License-Identifier: GPL-2.0+ diff --git a/include/configs/ipam390.h b/include/configs/ipam390.h index 82ab24c688b..c8e99513f0a 100644 --- a/include/configs/ipam390.h +++ b/include/configs/ipam390.h @@ -19,7 +19,6 @@ * Board */ #define CONFIG_DRIVER_TI_EMAC -#define CONFIG_BARIX_IPAM390 /* * SoC Configuration diff --git a/include/configs/kzm9g.h b/include/configs/kzm9g.h index 0d8de370dd9..82984f4d17e 100644 --- a/include/configs/kzm9g.h +++ b/include/configs/kzm9g.h @@ -11,7 +11,6 @@ #undef DEBUG #define CONFIG_SH73A0 -#define CONFIG_KZM_A9_GT #define CONFIG_ARCH_RMOBILE_BOARD_STRING "KMC KZM-A9-GT" #define CONFIG_MACH_TYPE MACH_TYPE_KZM9G diff --git a/include/configs/omapl138_lcdk.h b/include/configs/omapl138_lcdk.h index 837286bd784..ea7bdf133d7 100644 --- a/include/configs/omapl138_lcdk.h +++ b/include/configs/omapl138_lcdk.h @@ -23,7 +23,6 @@ * SoC Configuration */ #define CONFIG_MACH_OMAPL138_LCDK -#define CONFIG_ARM926EJS /* arm926ejs CPU core */ #define CONFIG_SYS_CLK_FREQ clk_get(DAVINCI_ARM_CLKID) #define CONFIG_SYS_OSCIN_FREQ 24000000 #define CONFIG_SYS_TIMERBASE DAVINCI_TIMER0_BASE diff --git a/include/configs/pb1x00.h b/include/configs/pb1x00.h index 972c13a6251..8adb7d7cfae 100644 --- a/include/configs/pb1x00.h +++ b/include/configs/pb1x00.h @@ -12,7 +12,6 @@ #ifndef __CONFIG_H #define __CONFIG_H -#define CONFIG_PB1X00 1 #define CONFIG_SOC_AU1X00 1 /* alchemy series cpu */ #ifdef CONFIG_PB1000 diff --git a/include/configs/picosam9g45.h b/include/configs/picosam9g45.h index 06ee8e7f9ef..0d4fc119ac6 100644 --- a/include/configs/picosam9g45.h +++ b/include/configs/picosam9g45.h @@ -22,8 +22,6 @@ #define CONFIG_SYS_AT91_SLOW_CLOCK 32768 #define CONFIG_SYS_AT91_MAIN_CLOCK 12000000 /* from 12 MHz crystal */ -#define CONFIG_PICOSAM - #define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ #define CONFIG_SETUP_MEMORY_TAGS #define CONFIG_INITRD_TAG diff --git a/include/configs/platinum_picon.h b/include/configs/platinum_picon.h index 36795304195..20315546aae 100644 --- a/include/configs/platinum_picon.h +++ b/include/configs/platinum_picon.h @@ -7,7 +7,6 @@ #ifndef __PLATINUM_PICON_CONFIG_H__ #define __PLATINUM_PICON_CONFIG_H__ -#define CONFIG_PLATINUM_PICON #define CONFIG_PLATINUM_BOARD "Barco Picon" #define CONFIG_PLATINUM_PROJECT "picon" #define CONFIG_PLATINUM_CPU "imx6dl" diff --git a/include/configs/platinum_titanium.h b/include/configs/platinum_titanium.h index 69406a4b65e..09b9bd38ff4 100644 --- a/include/configs/platinum_titanium.h +++ b/include/configs/platinum_titanium.h @@ -7,7 +7,6 @@ #ifndef __PLATINUM_TITANIUM_CONFIG_H__ #define __PLATINUM_TITANIUM_CONFIG_H__ -#define CONFIG_PLATINUM_TITANIUM #define CONFIG_PLATINUM_BOARD "Barco Titanium" #define CONFIG_PLATINUM_PROJECT "titanium" #define CONFIG_PLATINUM_CPU "imx6q" diff --git a/include/configs/pm9261.h b/include/configs/pm9261.h index d2702b4f2d6..e1e9af07ec3 100644 --- a/include/configs/pm9261.h +++ b/include/configs/pm9261.h @@ -27,7 +27,6 @@ #define CONFIG_SYS_AT91_MAIN_CLOCK 18432000 #define CONFIG_SYS_AT91_CPU_NAME "AT91SAM9261" -#define CONFIG_PM9261 1 /* on a Ronetix PM9261 Board */ #define CONFIG_ARCH_CPU_INIT #define CONFIG_MACH_TYPE MACH_TYPE_PM9261 diff --git a/include/configs/pm9263.h b/include/configs/pm9263.h index c4990883af2..880c3f118df 100644 --- a/include/configs/pm9263.h +++ b/include/configs/pm9263.h @@ -27,7 +27,6 @@ #define CONFIG_SYS_AT91_SLOW_CLOCK 32768 /* slow clock xtal */ #define CONFIG_SYS_AT91_CPU_NAME "AT91SAM9263" -#define CONFIG_PM9263 1 /* on a Ronetix PM9263 Board */ #define CONFIG_ARCH_CPU_INIT #define CONFIG_MACH_TYPE MACH_TYPE_PM9263 diff --git a/include/configs/pm9g45.h b/include/configs/pm9g45.h index 21c31daadd5..5612f5f358e 100644 --- a/include/configs/pm9g45.h +++ b/include/configs/pm9g45.h @@ -22,7 +22,6 @@ */ #include <asm/hardware.h> -#define CONFIG_PM9G45 1 /* It's an Ronetix PM9G45 */ #define CONFIG_SYS_AT91_CPU_NAME "AT91SAM9G45" #define CONFIG_MACH_TYPE MACH_TYPE_PM9G45 diff --git a/include/configs/pxm2.h b/include/configs/pxm2.h index 157b32a6a43..2ad0c3018e6 100644 --- a/include/configs/pxm2.h +++ b/include/configs/pxm2.h @@ -14,7 +14,6 @@ #ifndef __CONFIG_PXM2_H #define __CONFIG_PXM2_H -#define CONFIG_SIEMENS_PXM2 #define CONFIG_SIEMENS_MACH_TYPE MACH_TYPE_PXM2 #include "siemens-am33x-common.h" diff --git a/include/configs/qemu-arm.h b/include/configs/qemu-arm.h index c968aa76ac2..839bc10a184 100644 --- a/include/configs/qemu-arm.h +++ b/include/configs/qemu-arm.h @@ -47,4 +47,6 @@ "ramdisk_addr_r=0x44000000\0" \ BOOTENV +#define CONFIG_SYS_CBSIZE 512 + #endif /* __CONFIG_H */ diff --git a/include/configs/rut.h b/include/configs/rut.h index 71078e99806..46f48009dd3 100644 --- a/include/configs/rut.h +++ b/include/configs/rut.h @@ -14,7 +14,6 @@ #ifndef __CONFIG_RUT_H #define __CONFIG_RUT_H -#define CONFIG_SIEMENS_RUT #define CONFIG_SIEMENS_MACH_TYPE MACH_TYPE_RUT #include "siemens-am33x-common.h" diff --git a/include/configs/smdkc100.h b/include/configs/smdkc100.h index 8a0718e3de1..5b3be6d5329 100644 --- a/include/configs/smdkc100.h +++ b/include/configs/smdkc100.h @@ -19,7 +19,6 @@ #define CONFIG_SAMSUNG 1 /* in a SAMSUNG core */ #define CONFIG_S5P 1 /* which is in a S5P Family */ #define CONFIG_S5PC100 1 /* which is in a S5PC100 */ -#define CONFIG_SMDKC100 1 /* working with SMDKC100 */ #include <asm/arch/cpu.h> /* get chip and board defs */ diff --git a/include/configs/smdkv310.h b/include/configs/smdkv310.h index cce7cafdb49..d7e73c33e74 100644 --- a/include/configs/smdkv310.h +++ b/include/configs/smdkv310.h @@ -17,7 +17,6 @@ /* High Level Configuration Options */ #define CONFIG_EXYNOS4210 1 /* which is a EXYNOS4210 SoC */ -#define CONFIG_SMDKV310 1 /* working with SMDKV310*/ /* Mach Type */ #define CONFIG_MACH_TYPE MACH_TYPE_SMDKV310 diff --git a/include/configs/stm32f429-discovery.h b/include/configs/stm32f429-discovery.h index 2f59f52ee15..4c4e72763e1 100644 --- a/include/configs/stm32f429-discovery.h +++ b/include/configs/stm32f429-discovery.h @@ -8,8 +8,6 @@ #ifndef __CONFIG_H #define __CONFIG_H -#define CONFIG_STM32F4DISCOVERY - #define CONFIG_MISC_INIT_R #define CONFIG_SYS_FLASH_BASE 0x08000000 diff --git a/include/configs/stm32f469-discovery.h b/include/configs/stm32f469-discovery.h index 3d4ca7ee551..990653beb8f 100644 --- a/include/configs/stm32f469-discovery.h +++ b/include/configs/stm32f469-discovery.h @@ -8,8 +8,6 @@ #ifndef __CONFIG_H #define __CONFIG_H -#define CONFIG_STM32F4DISCOVERY - #define CONFIG_MISC_INIT_R #define CONFIG_SYS_FLASH_BASE 0x08000000 diff --git a/include/configs/strider.h b/include/configs/strider.h index 14b03c813b6..9ba52d1303d 100644 --- a/include/configs/strider.h +++ b/include/configs/strider.h @@ -1,6 +1,6 @@ /* * (C) Copyright 2014 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * * SPDX-License-Identifier: GPL-2.0+ diff --git a/include/configs/stv0991.h b/include/configs/stv0991.h index 0c08556d211..2401dbd619a 100644 --- a/include/configs/stv0991.h +++ b/include/configs/stv0991.h @@ -10,8 +10,6 @@ #define CONFIG_SYS_DCACHE_OFF #define CONFIG_SYS_EXCEPTION_VECTORS_HIGH -#define CONFIG_SYS_CORTEX_R4 - /* ram memory-related information */ #define CONFIG_NR_DRAM_BANKS 1 #define PHYS_SDRAM_1 0x00000000 diff --git a/include/gdsys_fpga.h b/include/gdsys_fpga.h index bb8e144e049..10290509f50 100644 --- a/include/gdsys_fpga.h +++ b/include/gdsys_fpga.h @@ -1,6 +1,6 @@ /* * (C) Copyright 2010 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/include/pca9698.h b/include/pca9698.h index 9732be661d2..c7f3ddd50a2 100644 --- a/include/pca9698.h +++ b/include/pca9698.h @@ -1,6 +1,6 @@ /* * (C) Copyright 2011 - * Dirk Eibach, Guntermann & Drunck GmbH, eibach@gdsys.de + * Dirk Eibach, Guntermann & Drunck GmbH, dirk.eibach@gdsys.cc * * SPDX-License-Identifier: GPL-2.0+ */ diff --git a/scripts/coccinelle/null/badzero.cocci b/scripts/coccinelle/null/badzero.cocci new file mode 100644 index 00000000000..619b058f93f --- /dev/null +++ b/scripts/coccinelle/null/badzero.cocci @@ -0,0 +1,241 @@ +/// Compare pointer-typed values to NULL rather than 0 +/// +//# This makes an effort to choose between !x and x == NULL. !x is used +//# if it has previously been used with the function used to initialize x. +//# This relies on type information. More type information can be obtained +//# using the option -all_includes and the option -I to specify an +//# include path. +// +// Confidence: High +// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. GPLv2. +// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6. GPLv2. +// URL: http://coccinelle.lip6.fr/ +// Requires: 1.0.0 +// Options: +// +// SPDX-License-Identifier: GPL-2.0 +// + +virtual patch +virtual context +virtual org +virtual report + +@initialize:ocaml@ +@@ +let negtable = Hashtbl.create 101 + +@depends on patch@ +expression *E; +identifier f; +@@ + +( + (E = f(...)) == +- 0 ++ NULL +| + (E = f(...)) != +- 0 ++ NULL +| +- 0 ++ NULL + == (E = f(...)) +| +- 0 ++ NULL + != (E = f(...)) +) + + +@t1 depends on !patch@ +expression *E; +identifier f; +position p; +@@ + +( + (E = f(...)) == +* 0@p +| + (E = f(...)) != +* 0@p +| +* 0@p + == (E = f(...)) +| +* 0@p + != (E = f(...)) +) + +@script:python depends on org@ +p << t1.p; +@@ + +coccilib.org.print_todo(p[0], "WARNING comparing pointer to 0") + +@script:python depends on report@ +p << t1.p; +@@ + +coccilib.report.print_report(p[0], "WARNING comparing pointer to 0") + +// Tests of returned values + +@s@ +identifier f; +expression E,E1; +@@ + + E = f(...) + ... when != E = E1 + !E + +@script:ocaml depends on s@ +f << s.f; +@@ + +try let _ = Hashtbl.find negtable f in () +with Not_found -> Hashtbl.add negtable f () + +@ r disable is_zero,isnt_zero exists @ +expression *E; +identifier f; +@@ + +E = f(...) +... +(E == 0 +|E != 0 +|0 == E +|0 != E +) + +@script:ocaml@ +f << r.f; +@@ + +try let _ = Hashtbl.find negtable f in () +with Not_found -> include_match false + +// This rule may lead to inconsistent path problems, if E is defined in two +// places +@ depends on patch disable is_zero,isnt_zero @ +expression *E; +expression E1; +identifier r.f; +@@ + +E = f(...) +<... +( +- E == 0 ++ !E +| +- E != 0 ++ E +| +- 0 == E ++ !E +| +- 0 != E ++ E +) +...> +?E = E1 + +@t2 depends on !patch disable is_zero,isnt_zero @ +expression *E; +expression E1; +identifier r.f; +position p1; +position p2; +@@ + +E = f(...) +<... +( +* E == 0@p1 +| +* E != 0@p2 +| +* 0@p1 == E +| +* 0@p1 != E +) +...> +?E = E1 + +@script:python depends on org@ +p << t2.p1; +@@ + +coccilib.org.print_todo(p[0], "WARNING comparing pointer to 0, suggest !E") + +@script:python depends on org@ +p << t2.p2; +@@ + +coccilib.org.print_todo(p[0], "WARNING comparing pointer to 0") + +@script:python depends on report@ +p << t2.p1; +@@ + +coccilib.report.print_report(p[0], "WARNING comparing pointer to 0, suggest !E") + +@script:python depends on report@ +p << t2.p2; +@@ + +coccilib.report.print_report(p[0], "WARNING comparing pointer to 0") + +@ depends on patch disable is_zero,isnt_zero @ +expression *E; +@@ + +( + E == +- 0 ++ NULL +| + E != +- 0 ++ NULL +| +- 0 ++ NULL + == E +| +- 0 ++ NULL + != E +) + +@ t3 depends on !patch disable is_zero,isnt_zero @ +expression *E; +position p; +@@ + +( +* E == 0@p +| +* E != 0@p +| +* 0@p == E +| +* 0@p != E +) + +@script:python depends on org@ +p << t3.p; +@@ + +coccilib.org.print_todo(p[0], "WARNING comparing pointer to 0") + +@script:python depends on report@ +p << t3.p; +@@ + +coccilib.report.print_report(p[0], "WARNING comparing pointer to 0") diff --git a/scripts/coccinelle/null/kmerr.cocci b/scripts/coccinelle/null/kmerr.cocci new file mode 100644 index 00000000000..a1e75e617d0 --- /dev/null +++ b/scripts/coccinelle/null/kmerr.cocci @@ -0,0 +1,75 @@ +/// This semantic patch looks for malloc etc that are not followed by a +/// NULL check. It only gives a report in the case where there is some +/// error handling code later in the function, which may be helpful +/// in determining what the error handling code for the call to malloc etc +/// should be. +/// +// Confidence: High +// Copyright: (C) 2010 Nicolas Palix, DIKU. GPLv2. +// Copyright: (C) 2010 Julia Lawall, DIKU. GPLv2. +// Copyright: (C) 2010 Gilles Muller, INRIA/LiP6. GPLv2. +// URL: http://coccinelle.lip6.fr/ +// Comments: +// Options: --no-includes --include-headers +// +// SPDX-License-Identifier: GPL-2.0 +// + +virtual context +virtual org +virtual report + +@withtest@ +expression x; +position p; +identifier f,fld; +@@ + +x@p = f(...); +... when != x->fld +\(x == NULL \| x != NULL\) + +@fixed depends on context && !org && !report@ +expression x,x1; +position p1 != withtest.p; +statement S; +position any withtest.p; +identifier f; +@@ + +*x@p1 = \(malloc\|calloc\)(...); +... +*x1@p = f(...); +if (!x1) S + +// ------------------------------------------------------------------------ + +@rfixed depends on (org || report) && !context exists@ +expression x,x1; +position p1 != withtest.p; +position p2; +statement S; +position any withtest.p; +identifier f; +@@ + +x@p1 = \(malloc\|calloc\)(...); +... +x1@p = f@p2(...); +if (!x1) S + +@script:python depends on org@ +p1 << rfixed.p1; +p2 << rfixed.p2; +@@ + +cocci.print_main("alloc call",p1) +cocci.print_secs("possible model",p2) + +@script:python depends on report@ +p1 << rfixed.p1; +p2 << rfixed.p2; +@@ + +msg = "alloc with no test, possible model on line %s" % (p2[0].line) +coccilib.report.print_report(p1[0],msg) diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt index a42b64d209d..3606585c05c 100644 --- a/scripts/config_whitelist.txt +++ b/scripts/config_whitelist.txt @@ -50,7 +50,6 @@ CONFIG_ARCH_USE_BUILTIN_BSWAP CONFIG_ARC_MMU_VER CONFIG_ARC_SERIAL CONFIG_ARIES_M28_V10 -CONFIG_ARM926EJS CONFIG_ARMADA100 CONFIG_ARMADA100_FEC CONFIG_ARMADA168 @@ -79,7 +78,6 @@ CONFIG_AT91RM9200 CONFIG_AT91RM9200EK CONFIG_AT91SAM9260EK CONFIG_AT91SAM9261EK -CONFIG_AT91SAM9263EK CONFIG_AT91SAM9G10 CONFIG_AT91SAM9G10EK CONFIG_AT91SAM9G20EK @@ -87,7 +85,6 @@ CONFIG_AT91SAM9G20EK_2MMC CONFIG_AT91SAM9G45EKES CONFIG_AT91SAM9G45_LCD_BASE CONFIG_AT91SAM9M10G45EK -CONFIG_AT91SAM9RLEK CONFIG_AT91SAM9_WATCHDOG CONFIG_AT91_CAN CONFIG_AT91_EFLASH @@ -110,7 +107,6 @@ CONFIG_ATMEL_SPI0 CONFIG_AT_TRANS CONFIG_AUTO_ZRELADDR CONFIG_BACKSIDE_L2_CACHE -CONFIG_BARIX_IPAM390 CONFIG_BAT_PAIR CONFIG_BAT_RW CONFIG_BCH_CONST_M @@ -133,7 +129,6 @@ CONFIG_BOARD_AXM CONFIG_BOARD_COMMON CONFIG_BOARD_EARLY_INIT_R CONFIG_BOARD_ECC_SUPPORT -CONFIG_BOARD_H2200 CONFIG_BOARD_IS_OPENRD_BASE CONFIG_BOARD_IS_OPENRD_CLIENT CONFIG_BOARD_IS_OPENRD_ULTIMATE @@ -272,7 +267,6 @@ CONFIG_CORTINA_FW_LENGTH CONFIG_CPLD_BR_PRELIM CONFIG_CPLD_OR_PRELIM CONFIG_CPM2 -CONFIG_CPUAT91 CONFIG_CPU_ARCHS34 CONFIG_CPU_ARMV8 CONFIG_CPU_CAVIUM_OCTEON @@ -325,7 +319,6 @@ CONFIG_DA850_AM18X_EVM CONFIG_DA850_EVM_MAX_CPU_CLK CONFIG_DA8XX_GPIO CONFIG_DBAU1000 -CONFIG_DBAU1X00 CONFIG_DBGU CONFIG_DBG_MONITOR CONFIG_DB_784MP_GP @@ -547,7 +540,6 @@ CONFIG_ENV_UBI_MTD CONFIG_ENV_UBI_VOLUME_REDUND CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG CONFIG_ENV_VERSION -CONFIG_EP9301 CONFIG_EP9302 CONFIG_EP9307 CONFIG_EP9312 @@ -599,7 +591,6 @@ CONFIG_EXYNOS4210 CONFIG_EXYNOS5 CONFIG_EXYNOS5250 CONFIG_EXYNOS5420 -CONFIG_EXYNOS5800 CONFIG_EXYNOS5_DT CONFIG_EXYNOS7420 CONFIG_EXYNOS_ACE_SHA @@ -663,9 +654,7 @@ CONFIG_FORCE_DDR_DATA_BUS_WIDTH_32 CONFIG_FORMIKE CONFIG_FPGA_COUNT CONFIG_FPGA_DELAY -CONFIG_FPGA_SPARTAN3 CONFIG_FPGA_STRATIX_V -CONFIG_FPGA_ZYNQPL CONFIG_FSLDMAFEC CONFIG_FSL_CADMUS CONFIG_FSL_CORENET @@ -1169,7 +1158,6 @@ CONFIG_KVM_GUEST CONFIG_KW88F6192 CONFIG_KW88F6281 CONFIG_KW88F6702 -CONFIG_KZM_A9_GT CONFIG_L1_INIT_RAM CONFIG_L2_CACHE CONFIG_LAN91C96_USE_32_BIT @@ -1496,7 +1484,6 @@ CONFIG_PARAVIRT CONFIG_PB1000 CONFIG_PB1100 CONFIG_PB1500 -CONFIG_PB1X00 CONFIG_PCA953X CONFIG_PCA9698 CONFIG_PCI1 @@ -1566,7 +1553,6 @@ CONFIG_PHY_MAX_ADDR CONFIG_PHY_MODE_NEED_CHANGE CONFIG_PHY_RESET CONFIG_PHY_RESET_DELAY -CONFIG_PICOSAM CONFIG_PIGGY_MAC_ADRESS_OFFSET CONFIG_PIXIS_BRDCFG0_SPI CONFIG_PIXIS_BRDCFG0_USB2 @@ -1583,15 +1569,10 @@ CONFIG_PL01x_PORTS CONFIG_PLATFORM_ENV_SETTINGS CONFIG_PLATINUM_BOARD CONFIG_PLATINUM_CPU -CONFIG_PLATINUM_PICON CONFIG_PLATINUM_PROJECT -CONFIG_PLATINUM_TITANIUM CONFIG_PLL1_CLK_FREQ CONFIG_PLL1_DIV2_CLK_FREQ CONFIG_PM -CONFIG_PM9261 -CONFIG_PM9263 -CONFIG_PM9G45 CONFIG_PMC_BR_PRELIM CONFIG_PMC_OR_PRELIM CONFIG_PMECC_CAP @@ -1870,10 +1851,7 @@ CONFIG_SH_SDHI_FREQ CONFIG_SH_SDRAM_OFFSET CONFIG_SH_SPI_BASE CONFIG_SH_TMU_CLK_FREQ -CONFIG_SIEMENS_DRACO CONFIG_SIEMENS_MACH_TYPE -CONFIG_SIEMENS_PXM2 -CONFIG_SIEMENS_RUT CONFIG_SIMU CONFIG_SKIP_LOCAL_MAC_RANDOMIZATION CONFIG_SKIP_LOWLEVEL_INIT @@ -1888,8 +1866,6 @@ CONFIG_SMC_AUTONEG_TIMEOUT CONFIG_SMC_USE_32_BIT CONFIG_SMC_USE_IOFUNCS CONFIG_SMDK5420 -CONFIG_SMDKC100 -CONFIG_SMDKV310 CONFIG_SMP_PEN_ADDR CONFIG_SMSC_LPC47M CONFIG_SMSC_SIO1007 @@ -2077,7 +2053,6 @@ CONFIG_STACKBASE CONFIG_STANDALONE_LOAD_ADDR CONFIG_STATIC_BOARD_REV CONFIG_STD_DEVICES_SETTINGS -CONFIG_STM32F4DISCOVERY CONFIG_STM32_FLASH CONFIG_STM32_HZ CONFIG_STRIDER @@ -2257,7 +2232,6 @@ CONFIG_SYS_CMXFCR_VALUE2 CONFIG_SYS_CMXFCR_VALUE3 CONFIG_SYS_CORE_SRAM CONFIG_SYS_CORE_SRAM_SIZE -CONFIG_SYS_CORTEX_R4 CONFIG_SYS_CORTINA_FW_IN_MMC CONFIG_SYS_CORTINA_FW_IN_NAND CONFIG_SYS_CORTINA_FW_IN_NOR @@ -3302,9 +3276,6 @@ CONFIG_SYS_I2C_TCA642X_ADDR CONFIG_SYS_I2C_TCA642X_BUS_NUM CONFIG_SYS_I2C_TEGRA CONFIG_SYS_I2C_W83782G_ADDR -CONFIG_SYS_I2C_ZYNQ -CONFIG_SYS_I2C_ZYNQ_SLAVE -CONFIG_SYS_I2C_ZYNQ_SPEED CONFIG_SYS_IBAT CONFIG_SYS_IBAT0L CONFIG_SYS_IBAT0U @@ -3539,7 +3510,6 @@ CONFIG_SYS_MECR_VAL CONFIG_SYS_MEMAC_LITTLE_ENDIAN CONFIG_SYS_MEMORY_BASE CONFIG_SYS_MEMORY_SIZE -CONFIG_SYS_MEMORY_TOP CONFIG_SYS_MEMTEST_END CONFIG_SYS_MEMTEST_SCRATCH CONFIG_SYS_MEMTEST_START @@ -4413,7 +4383,6 @@ CONFIG_SYS_SUPPORT_64BIT_DATA CONFIG_SYS_SXCNFG_VAL CONFIG_SYS_TBIPA_VALUE CONFIG_SYS_TCLK -CONFIG_SYS_TEXT_ADDR CONFIG_SYS_TEXT_BASE_NOR CONFIG_SYS_TEXT_BASE_SPL CONFIG_SYS_TIMERBASE @@ -4859,7 +4828,6 @@ CONFIG_X86_MRC_ADDR CONFIG_X86_REFCODE_ADDR CONFIG_X86_REFCODE_RUN_ADDR CONFIG_XGI_XG22_BASE -CONFIG_XILINX_GPIO CONFIG_XILINX_SPI_IDLE_VAL CONFIG_XILINX_TB_WATCHDOG CONFIG_XR16L2751 @@ -4883,12 +4851,7 @@ CONFIG_ZYNQMP_XHCI_LIST CONFIG_ZYNQ_EEPROM CONFIG_ZYNQ_EEPROM_BUS CONFIG_ZYNQ_GEM_EEPROM_ADDR -CONFIG_ZYNQ_GEM_I2C_MAC_OFFSET CONFIG_ZYNQ_HISPD_BROKEN -CONFIG_ZYNQ_I2C0 -CONFIG_ZYNQ_I2C1 CONFIG_ZYNQ_SDHCI0 CONFIG_ZYNQ_SDHCI1 -CONFIG_ZYNQ_SDHCI_MAX_FREQ -CONFIG_ZYNQ_SDHCI_MIN_FREQ CONFIG_eTSEC_MDIO_BUS diff --git a/tools/fit_image.c b/tools/fit_image.c index 1db44f47a16..3f5cc20e49a 100644 --- a/tools/fit_image.c +++ b/tools/fit_image.c @@ -650,9 +650,9 @@ static int fit_handle_file(struct image_tool_params *params) } *cmd = '\0'; } else if (params->datafile) { - /* dtc -I dts -O dtb -p 500 datafile > tmpfile */ - snprintf(cmd, sizeof(cmd), "%s %s \"%s\" > \"%s\"", - MKIMAGE_DTC, params->dtc, params->datafile, tmpfile); + /* dtc -I dts -O dtb -p 500 -o tmpfile datafile */ + snprintf(cmd, sizeof(cmd), "%s %s -o \"%s\" \"%s\"", + MKIMAGE_DTC, params->dtc, tmpfile, params->datafile); debug("Trying to execute \"%s\"\n", cmd); } else { snprintf(cmd, sizeof(cmd), "cp \"%s\" \"%s\"", diff --git a/tools/imximage.c b/tools/imximage.c index eb7e682038d..ed9d9359031 100644 --- a/tools/imximage.c +++ b/tools/imximage.c @@ -777,11 +777,6 @@ static uint32_t parse_cfg_file(struct imx_header *imxhdr, char *name) (*set_dcd_rst)(imxhdr, dcd_len, name, lineno); fclose(fd); - /* Exit if there is no BOOT_FROM field specifying the flash_offset */ - if (imximage_ivt_offset == FLASH_OFFSET_UNDEFINED) { - fprintf(stderr, "Error: No BOOT_FROM tag in %s\n", name); - exit(EXIT_FAILURE); - } return dcd_len; } |