summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-04-21ARM: imx: imx8mn-evk: change environment address variablesHeiko Thiery
Currently the space between kernel_addr_r and the fdt_addr_r is only 32MB. To have enough space to load kernel images bigger than 32MB change the variables to a feasible value. The new environment variables layout is based on the scheme from "include/configs/ti_armv7_common.h". The CONFIG_SYS_LOAD_ADDR value is set to 0x42000000. With that we have the same value as for the kernel_addr_r. Signed-off-by: Heiko Thiery <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2022-04-21configs: imx: drop IMX_FEC_BASEPeng Fan
IMX_FEC_BASE is not used in these boards, so drop it. Reviewed-by: Fabio Estevam <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21imx8mm-cl-iot-gate: Remove redundant board_fix_fdt()Ying-Chun Liu (PaulLiu)
In arch/arm/mach-imx/imx8m/soc.c there's an implementation of board_fix_fdt() introduced by commit 35bb60787b88. Remove the redundant one to avoid failed to build from source when enabling CONFIG_OF_BOARD_FIXUP. Signed-off-by: Ying-Chun Liu (PaulLiu) <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: uboot-imx <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2022-04-21arm: set cntfrq_el0 if CONFIG_COUNTER_FREQUENCY is validPeng Fan
Since COUNTER_FREQUENCY is obselete, so set cntfrq_el0 if CONFIG_COUNTER_FREQUENCY is valid Signed-off-by: Peng Fan <[email protected]> Reviewed-by: Philipp Tomsich <[email protected]>
2022-04-21include/configs: drop COUNTER_FREQUENCYPeng Fan
Since we have CONFIG_COUNTER_FREQUENCY enabled, no need COUNTER_FREQUENCY Signed-off-by: Peng Fan <[email protected]>
2022-04-21configs: set CONFIG_COUNTER_FREQUENCYPeng Fan
Set CONFIG_COUNTER_FREQUENCY according to COUNTER_FREQUENCY in config header file. Signed-off-by: Peng Fan <[email protected]> [trini: Re-run migration]
2022-04-21arch: arm: Kconfig: set default COUNTER_FREQUENCYPeng Fan
Set default COUNTER_FREQUENCY according to config header file under include/configs/ i.MX6UL/ULL/7D/8QM/8QXP all has system counter frequency run at 8MHz, so set default value for them. SUNXI/EXYNOS/ROCKCHIP_RK3128/ROCKCHIP_RK3288/ROCKCHIP_RK322X/ROCKCHIP_RK3036 at 24MHz. ARCH_LX2160A at 25MHz ARCH_ZYNQMP at 100MHz
2022-04-21arch: arm: move COUNTER_FREQUENCY from versal to armPeng Fan
Make COUNTER_FREQUENCY usable to armv8 and armv7-a, not limited to versal. And update help message. Signed-off-by: Peng Fan <[email protected]>
2022-04-21xilinx: versal: board: use CONFIG_COUNTER_FREQUENCYPeng Fan
Since versal has CONFIG_COUNTER_FREQUENCY, so use it. And COUNTER_FREQUENCY will be dropped. Signed-off-by: Peng Fan <[email protected]> Reviewed-by: Michal Simek <[email protected]>
2022-04-21misc: atsha204a: Remove duplicate CRC-16 implementationPali Rohár
ATSHA204A uses bit-reversed checksum of standard CRC-16 with polynomial x^16 + x^15 + x^2 + 1. This ATSHA204A specific checksum can be calculated just by using common U-Boot functions bitrev16() and crc16(). So replace custom driver CRC-16 implementation by common U-Boot functions. Signed-off-by: Pali Rohár <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-04-21fs: ext4: Use CRC-16 implementation from linux/crc16.hPali Rohár
Implementation in linux/crc16.h provides standard CRC-16 algorithm with polynomial x^16 + x^15 + x^2 + 1. Use it and remove duplicate ext4 CRC-16 specific code. Signed-off-by: Pali Rohár <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-04-21crc16: Move standard CRC-16 implementation from ubifs to libPali Rohár
This implementation provides standard CRC-16 algorithm with polynomial x^16 + x^15 + x^2 + 1. Signed-off-by: Pali Rohár <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-04-21crc16: Rename fs/ubifs/crc16.h to include/linux/crc16.hPali Rohár
File fs/ubifs/crc16.h is standard linux's crc16.h include file. So move it from fs/ubifs to include/linux where are also other linux include files. Signed-off-by: Pali Rohár <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-04-21crc16-ccitt: Rename file with CRC-16-CCITT implementation to crc16-ccitt.cPali Rohár
U-Boot CRC-16 implementation uses polynomial x^16 + x^12 + x^5 + 1 which is not standard CRC-16 algorithm, but it is known as CRC-16-CCITT. Rename file crc16.c to crc16-ccitt.c to reduce confusion. Signed-off-by: Pali Rohár <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-04-21SPL: Do not enable SPL_SYS_MALLOC_SIMPLE without SPL_FRAMEWORK by defaultPali Rohár
On P2020 board is SPL malloc simple always failing with error and loops: SD boot... alloc space exhausted Bad trap at PC: f8f8b5f0, SR: 21200, vector=d00 NIP: 00000000 XER: 00000000 LR: 00000000 REGS: f8f8b5f0 TRAP: 20000000 DAR: 00000000 MSR: 00021200 EE: 0 PR: 0 FP: 0 ME: 1 IR/DR: 00 GPR00: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 GPR08: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 GPR16: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 GPR24: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Call backtrace: Exception in kernel pc f8f8b5f0 signal 0 Inspection showed that gd->malloc_limit is zero. And it is because generally SPL_FRAMEWORK initialize SPL's gd->malloc_limit. But when SPL_FRAMEWORK is not enabled then in most cases nobody initialize gd->malloc_limit and so SPL malloc simple does not work. So disable SPL_SYS_MALLOC_SIMPLE by default when SPL_FRAMEWORK is not enabled. SPL_SYS_MALLOC_SIMPLE can be disabled only by setting SPL_SYS_MALLOC_F_LEN to zero. So do it. This change fixes SPL error "alloc space exhausted" on P2020 board. Signed-off-by: Pali Rohár <[email protected]>
2022-04-21Merge https://source.denx.de/u-boot/custodians/u-boot-marvellTom Rini
- mrvl_uart.sh: Remove script (Pali) - Fix Espressobin build for configs where ENV is not in SPI (Rogier) - mvebu: a37xx: Add support for reading OTP (Pali) - mvebu: uDPU: Ethernet fixes and misc DT and defconfig changes (Robert) - mvebu: Add support for reading LD0 and LD1 eFuse (Pali) - kwboot: Replace fstat()+st_size by lseek()+SEEK_END (Pali) - mvebu: turris_omnia: Enable CONFIG_CMD_FUSE (Pali) - arm: Add CONFIG_SPL_SYS_NO_VECTOR_TABLE used on 32bit MVEBU (Pali) - mvebu: a37xx: Add support for writing Security OTP values (Pali) - mvebu: turris: Misc enhancements and cleanups / fixes (Pali) - Sheevaplug : Use Marvell uclass mvgbe and PHY driver for Ethernet (Tony)
2022-04-21Merge branch '2022-04-21-assorted-improvements'Tom Rini
- For the environment, add a arch_env_get_location hook and make use of it on some NXP platforms (so that boards can override SoCs). - Remove some unused squashfs code from SPL - Resync am335x beaglebone related DTS files - Enable SPL_SEPARATE_BSS if SPL_BSS_START_ADDR is used
2022-04-21imx: Fix build errorYe Li
Fix wrong environment.h and remove DECLARE_GLOBAL_DATA_PTR Fixes: 30e39ac7c9 (imx: imx7 Support for Manufacturing Protection) Signed-off-by: Ye Li <[email protected]> Reviewed-by: Gaurav Jain <[email protected]>
2022-04-21imx: Update FSL_MFGPROT config for iMX8MYe Li
Update the Kconfig and Makefile to allow build for iMX8M and restrict the build only in u-boot. Signed-off-by: Ye Li <[email protected]> Reviewed-by: Gaurav Jain <[email protected]>
2022-04-21crypto/fsl: add invalidate_dcache_range for hash output bufferGaurav Jain
HW accelerated hash operations are giving incorrect hash output. so invalidate cache lines to avoid cache overwriting in DDR memory region. caam_hash() -moved address alignment check in the beginning of function. -added invalidate_dcache_range for pout buffer before running descriptor. Fixes: d7af2baa49 (crypto/fsl: Fix HW accelerated hash commands) Signed-off-by: Gaurav Jain <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2022-04-21doc: imx8mn_evk: Do not export ATF_LOAD_ADDRFabio Estevam
The imx8mn_evk target have been converted to use binman. With the binman approach the ATF load address is described via devicetree, so remove the now unneeded instruction of exporting ATF_LOAD_ADDR. Signed-off-by: Fabio Estevam <[email protected]>
2022-04-21imx8mn_evk: Enable cache in SPLFabio Estevam
There is no reason for disabling I-cache and D-cache in SPL. Remove the unneeded CONFIG_SPL_SYS_ICACHE_OFF and CONFIG_SPL_SYS_DCACHE_OFF options. Signed-off-by: Fabio Estevam <[email protected]>
2022-04-21board: bsh: imx8mn_bsh_smm_s2/s2pro: enable DM_SERIALMichael Trimarchi
Enable DM_SERIAL for both U_Boot and the SPL. The uart4 and its pinmux are already marked with u-boot,dm-spl but we need to move the call to preloader_console_init() after spl_init() to avoid a board hang as dm can't be used until after spl_init(). Remove the manual config of the UART pinmux now that it is no longer needed. Signed-off-by: Michael Trimarchi <[email protected]> Cc: Tim Harvey <[email protected]> Reviewed-by: Fabio Estevam <[email protected]> Tested-by: Ariel D'Alessandro <[email protected]>
2022-04-21arm: dts: imx8mp: add of-list support to common imx8mp-u-boot.dtsiTim Harvey
Add support for OF-LIST to common imx8mp-u-boot.dtsi so that it can be used with boards that have multiple DTB's. Signed-off-by: Tim Harvey <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: NXP i.MX U-Boot Team <[email protected]> Cc: Peng Fan <[email protected]> Cc: Teresa Remmet <[email protected]> Cc: Ying-Chun Liu (PaulLiu) <[email protected]> Cc: Marcel Ziswiler <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2022-04-21crypto/fsl: Clear the memory when blob decapsulation failsGaurav Jain
issue: blob decapsulation operation store the decrypted data in memory even if ICV check failed. fix: clear the blob data output memory. Fixes: c5de15cbc8 (crypto/fsl: Add command for encapsulating/decapsulating blobs) Signed-off-by: Gaurav Jain <[email protected]> Reviewed-by: Kshitiz Varshney <[email protected]> Tested-by: Kshitiz Varshney <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2022-04-21imx: imx8mq-evk: enable CONFIG_DM_SERIALPeng Fan
Marked related nodes as u-boot,dm-spl for serial driver model Enable CONFIG_DM_SERIAL Signed-off-by: Peng Fan <[email protected]>
2022-04-21imx: imx8mn_evk: enable CONFIG_DM_SERIALPeng Fan
Enable CONFIG_DM_SERIAL. uart2 and its pinmux was already marked with u-boot,dm-spl. move the preloader_console_init() call after spl_init() to avoid board hang Signed-off-by: Peng Fan <[email protected]>
2022-04-21imx: imx8mm_evk: enable CONFIG_DM_SERIALPeng Fan
Enable CONFIG_DM_SERIAL. uart2 and its pinmux was already marked with u-boot,dm-spl. move the preloader_console_init() call after spl_early_init() to avoid board hang Signed-off-by: Peng Fan <[email protected]>
2022-04-21imx: imx8mp_evk: enable CONFIG_DM_SERIALPeng Fan
Enable CONFIG_DM_SERIAL. uart2 and its pinmux was already marked with u-boot,dm-spl. Signed-off-by: Peng Fan <[email protected]>
2022-04-21scripts: config_whitelist: drop CONFIG_MMCROOTPeng Fan
Drop CONFIG_MMCROOT, no users now. Reviewed-by: Fabio Estevam <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21configs: drop CONFIG_MMCROOTPeng Fan
CONFIG_MMCROOT is only used to set mmcroot, no need a dedicated macro. Script as below " for i in `ls include/configs/*.h` do mmcroot=`sed -n '/define.*MMCROOT/ p' $i | awk -F\" '{ print $2;}'` if [ ! -n "$mmcroot" ]; then continue fi sed -i '/define.*MMCROOT/ d' $i sed -i 's,\" CONFIG_MMCROOT \",'$mmcroot',g' $i done " Reviewed-by: Fabio Estevam <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21treewide: Enable SPL_SEPARATE_BSS if SPL_BSS_START_ADDR is usedSean Anderson
If .bss does not immediately follow the end of the image, then CONFIG_SPL_SEPARATE_BSS must be selected. Typically, the location of bss is specified by using CONFIG_SPL_BSS_START_ADDR in a linker script. On these arches, CONFIG_SPL_SEPARATE_BSS should be enabled. If there is an option to use an alternate boot script (e.g. CONFIG_SPL_LDSCRIPT is just a default), just imply. If there is not, select. Signed-off-by: Sean Anderson <[email protected]>
2022-04-21board: ti: am335x: Add support for BBE Extended WiFiPaul Barker
The Sancloud BeagleBone Enhanced Extended WiFi (BBE Extended WiFi) has its own devicetree file and the board can be identified by the 2nd letter of the config string within the common EEPROM. Signed-off-by: Paul Barker <[email protected]>
2022-04-21board: ti: am335x: Add BBE Lite supportPaul Barker
The Sancloud BeagleBone Enhanced Lite (BBE Lite) has its own devicetree file and the board can be identified by the 2nd letter of the config string within the common EEPROM. Signed-off-by: Paul Barker <[email protected]>
2022-04-21arm: dts: Resync dts for BeagleBone and derivativesPaul Barker
Sync BeagleBone dts files & TPS dtsi files with Linux v5.17 and include the SanCloud BBE Extended WiFi dts added in v5.18-rc1. Also pull in changes to am33xx-l4.dtsi needed to support the BeagleBone Blue. The change to use the cpsw switch driver (commit c477358e66a3 in Linux) is excluded from the sync as u-boot does not recognise the new compatible string. Signed-off-by: Paul Barker <[email protected]>
2022-04-21fs: Allow to compile FS_SQUASHFS only for proper U-BootPali Rohár
CONFIG_SPL_FS_SQUASHFS cannot be disabled when CONFIG_FS_SQUASHFS is enabled. Fix it. Signed-off-by: Pali Rohár <[email protected]>
2022-04-21ARM: imx: imx8m: env: Switch to arch_env_get_location()Marek Vasut
Implement arch_env_get_location() instead of env_get_location(), so that the env_get_location() can be implemented on board level and override the arch_env_get_location() architecture defaults. Signed-off-by: Marek Vasut <[email protected]> Cc: Adam Ford <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: Marek Behún <[email protected]> Cc: Peng Fan <[email protected]> Cc: Simon Glass <[email protected]> Cc: Stefano Babic <[email protected]> Cc: Tim Harvey <[email protected]> Cc: Tom Rini <[email protected]> Cc: Tommaso Merciai <[email protected]> Cc: Vladimir Oltean <[email protected]>
2022-04-21armv8: layerscape: env: Switch to arch_env_get_location()Marek Vasut
Implement arch_env_get_location() instead of env_get_location(), so that the env_get_location() can be implemented on board level and override the arch_env_get_location() architecture defaults. Signed-off-by: Marek Vasut <[email protected]> Cc: Adam Ford <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: Marek Behún <[email protected]> Cc: Peng Fan <[email protected]> Cc: Simon Glass <[email protected]> Cc: Stefano Babic <[email protected]> Cc: Tim Harvey <[email protected]> Cc: Tom Rini <[email protected]> Cc: Tommaso Merciai <[email protected]> Cc: Vladimir Oltean <[email protected]>
2022-04-21env: Implement lower priority arch_env_get_location()Marek Vasut
Currently there is only one way to override desired environment location, by implementing env_get_location(). This is increasingly being conflated both on board level and architecture level, which leads to a problem on boards where this function is already implemented on architecture level, since those boards have no way to override this environment location on board level anymore. Implement arch_env_get_location() function which is architecture specific and should only ever be implemented in architecture code. This function has lower priority than env_get_location(), which should only ever be implemented in board code, and which overrides the arch_env_get_location() architecture environment selection. This way, architecture can define its default environment chooser, while board can now override it as needed at all times. There is no functional change, since env_get_location() simply returns arch_env_get_location(), and arch_env_get_location() implements the current env_get_location() default content. Signed-off-by: Marek Vasut <[email protected]> Cc: Adam Ford <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: Marek Behún <[email protected]> Cc: Peng Fan <[email protected]> Cc: Simon Glass <[email protected]> Cc: Stefano Babic <[email protected]> Cc: Tim Harvey <[email protected]> Cc: Tom Rini <[email protected]> Cc: Tommaso Merciai <[email protected]> Cc: Vladimir Oltean <[email protected]>
2022-04-21configs: phycore_imx8mm/p: drop unused SDHC macroPeng Fan
With SPL_DM_MMC and DM_MMC, the two macros not needed, drop it. CONFIG_SYS_FSL_USDHC_NUM CONFIG_SYS_FSL_ESDHC_ADDR Reviewed-by: Fabio Estevam <[email protected]> Acked-By: Teresa Remmet <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21configs: imx8mm/n_venice: drop unused SDHC macroPeng Fan
With SPL_DM_MMC and DM_MMC, the two macros not needed, drop it. CONFIG_SYS_FSL_USDHC_NUM CONFIG_SYS_FSL_ESDHC_ADDR Reviewed-by: Fabio Estevam <[email protected]> Acked-By: Tim Harvey <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21configs: verdin-imx8m: drop unused SDHC macroPeng Fan
With SPL_DM_MMC and DM_MMC, the two macros not needed, drop it. CONFIG_SYS_FSL_USDHC_NUM CONFIG_SYS_FSL_ESDHC_ADDR Reviewed-by: Fabio Estevam <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21configs: imx8qm/qxp_evk: drop unused SDHC macroPeng Fan
With SPL_DM_MMC and DM_MMC, the two macros not needed, drop it. CONFIG_SYS_FSL_USDHC_NUM CONFIG_SYS_FSL_ESDHC_ADDR Reviewed-by: Fabio Estevam <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21configs: mx7dsabresd: drop unused SDHC macroPeng Fan
With SPL_DM_MMC and DM_MMC, the two macros not needed, drop it. CONFIG_SYS_FSL_USDHC_NUM CONFIG_SYS_FSL_ESDHC_ADDR Reviewed-by: Fabio Estevam <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21configs: mx6sxsabresd: drop CONFIG_SYS_FSL_USDHC_NUMPeng Fan
With DM_MMC, CONFIG_SYS_FSL_USDHC_NUM is not needed. Reviewed-by: Fabio Estevam <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21configs: imx8mn_evk: drop unused SDHC macroPeng Fan
With SPL_DM_MMC and DM_MMC, the two macros not needed, drop it. #define CONFIG_SYS_FSL_USDHC_NUM 2 #define CONFIG_SYS_FSL_ESDHC_ADDR 0 Reviewed-by: Fabio Estevam <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21configs: imx8mp_evk: drop unused SDHC macroPeng Fan
With SPL_DM_MMC and DM_MMC, the two macros not needed, drop it. #define CONFIG_SYS_FSL_USDHC_NUM 2 #define CONFIG_SYS_FSL_ESDHC_ADDR 0 Reviewed-by: Fabio Estevam <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21configs: imx8mm_evk: drop unused SDHC macroPeng Fan
With SPL_DM_MMC and DM_MMC, the two macros not needed, drop it. #define CONFIG_SYS_FSL_USDHC_NUM 2 #define CONFIG_SYS_FSL_ESDHC_ADDR 0 Reviewed-by: Fabio Estevam <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2022-04-21ARM: imx: imx8m: Fix board_get_usable_ram_top()Marek Vasut
The 4 GiB boundary is at 0xffffffff+1 , not at 0x80000000, fix this. The PHYS_SDRAM of i.MX8M is at 0x40000000 , so to restrict ram_top below 4 GiB, the ram_top has to be set to 0xffffffff as it is not an offset from the start of PHYS_SDRAM, but rather a physical address marking the topmost allowed DRAM address. Fixes: e27bddff4b9 ("imx8m: Restrict usable memory to space below 4G boundary") Signed-off-by: Marek Vasut <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: Frieder Schrempf <[email protected]> Cc: Peng Fan <[email protected]> Cc: Stefano Babic <[email protected]> Reviewed-by: Fabio Estevam <[email protected]> Reviewed-by: Frieder Schrempf <[email protected]>
2022-04-21configs: ge_bx50v3: remove CONFIG_PCIE_IMX_POWER_GPIOIan Ray
This GPIO is actually an input "Q7_3V3_PCIE_WAKE#_IN" not an output, so remove the misleaading and incorrect definition. Cc: Tim Harvey <[email protected]> (re: pci: imx: use vpcie-supply if defined by device-tree) Signed-off-by: Ian Ray <[email protected]>