summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2019-08-26Merge https://gitlab.denx.de/u-boot/custodians/u-boot-riscvTom Rini
- Support SPL and OpenSBI (FW_DYNAMIC firmware) boot. - Fix qemu kconfig build warning.
2019-08-26riscv: qemu: add SPL configurationLukas Auer
Add two new configurations (qemu-riscv{32,64}_spl_defconfig) with SPL enabled for RISC-V QEMU. QEMU does not require SPL to run U-Boot. The configurations are meant to help the development of SPL on RISC-V. The configurations enable RAM as the only SPL boot device. Images must be loaded at address 0x80200000. In the default boot flow, U-Boot SPL starts in machine mode, loads the OpenSBI FW_DYNAMIC firmware and U-Boot proper from the supplied FIT image, and starts OpenSBI. U-Boot proper is then started in supervisor mode by OpenSBI. Signed-off-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Anup Patel <anup.patel@wdc.com>
2019-08-26spl: support booting via RISC-V OpenSBILukas Auer
RISC-V OpenSBI is an open-source implementation of the RISC-V Supervisor Binary Interface (SBI) specification. It is required by Linux and U-Boot running in supervisor mode. This patch adds support for booting via the OpenSBI FW_DYNAMIC firmware. It supports OpenSBI version 0.4 and higher. In this configuration, U-Boot SPL starts in machine mode. After loading OpenSBI and U-Boot proper, it will start OpenSBI. All necessary parameters are generated by U-Boot SPL and are passed to OpenSBI. U-Boot proper is started in supervisor mode by OpenSBI. Support for OpenSBI is enabled with CONFIG_SPL_OPENSBI. An additional configuration entry, CONFIG_SPL_OPENSBI_LOAD_ADDR, is used to specify the load address of the OpenSBI firmware binary. It is not used directly in U-Boot and instead is intended to make the value available to scripts such as FIT configuration generators. The header file include/opensbi.h is based on header files from the OpenSBI project. They are recent, as of commit bae54f764570 ("firmware: Add fw_dynamic firmware"). Signed-off-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Anup Patel <anup.patel@wdc.com>
2019-08-26fdtdec: make CONFIG_OF_PRIOR_STAGE available in SPLLukas Auer
The current preprocessor logic prevents CONFIG_OF_PRIOR_STAGE from being used in U-Boot SPL. Change the logic to also make it available in U-Boot SPL. Signed-off-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Anup Patel <anup.patel@wdc.com>
2019-08-25Convert CONFIG_SYS_SPI_U_BOOT_OFFS to KconfigHannes Schmelzer
This converts the following to Kconfig: CONFIG_SYS_SPI_U_BOOT_OFFS Signed-off-by: Hannes Schmelzer <hannes.schmelzer@br-automation.com> [trini: Expose this for SPL_SPI_SUNXI for now] Signed-off-by: Tom Rini <trini@konsulko.com>
2019-08-25moveconfig: prepare moving CONFIG_SYS_SPI_U_BOOT_OFFS to Kconfig step 4Hannes Schmelzer
the x530 board needs conversion of SPL_SPI_LOAD to Kconfig first Signed-off-by: Hannes Schmelzer <hannes.schmelzer@br-automation.com> Reviewed-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
2019-08-25moveconfig: prepare moving CONFIG_SYS_SPI_U_BOOT_OFFS to Kconfig step 3Hannes Schmelzer
Exact two boards are referencing CONFIG_SYS_SPI_U_BOOT_OFFS to another define, we replace this manually with the value for having a clean run of moveconfig.py afterwards. Signed-off-by: Hannes Schmelzer <hannes.schmelzer@br-automation.com>
2019-08-25moveconfig: prepare moving CONFIG_SYS_SPI_U_BOOT_OFFS to Kconfig step 2Hannes Schmelzer
some boards have common headers for several individual build-targets where CONFIG_SYS_SPI_U_BOOT_OFFS is defined even it is not needed (only needed if CONFIG_SPL_SPI_LOAD is defined also). Take this define here under '#ifdef CONFIG_SPL_SPI_LOAD' for having a clean run of moveconfig.py Signed-off-by: Hannes Schmelzer <hannes.schmelzer@br-automation.com>
2019-08-25moveconfig: prepare moving CONFIG_SYS_SPI_U_BOOT_OFFS to Kconfig step 1Hannes Schmelzer
Some boards have coded this offset with formula or bitshifts in their board-config. Manually convert these things into hex-values to be able using moveconfig.py afterwards. Signed-off-by: Hannes Schmelzer <hannes.schmelzer@br-automation.com>
2019-08-25mtd: nand: raw: Move CONFIG_SYS_NAND_USE_FLASH_BBT to KconfigStefan Roese
Convert CONFIG_SYS_NAND_USE_FLASH_BBT to Kconfig, update defconfigs, headers and whitelist. Please note that this symbol already was used in Kconfig (imply in CONFIG_NAND_ATMEL) which did not work, since this symbol was not available in Kconfig. This changes now with this patch and all boards with CONFIG_NAND_ATMEL will have BBT enabled. Which is what I also need on my GARDENA AT91SAM based board. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Eugen Hristev <eugen.hristev@microchip.com> Cc: Miquel Raynal <miquel.raynal@bootlin.com> Cc: Gregory CLEMENT <gregory.clement@bootlin.com> [trini: Rework such that the configs are unchanged to start with] Signed-off-by: Tom Rini <trini@konsulko.com>
2019-08-25Convert CONFIG_ARCH_CPU_INIT to KconfigAdam Ford
This converts the following to Kconfig: CONFIG_ARCH_CPU_INIT Signed-off-by: Adam Ford <aford173@gmail.com> Acked-by: Chris Packham <chris.packham@alliedtelesis.co.nz> Tested-by: Felix Brack <fb@ltec.ch>
2019-08-24Merge tag 'u-boot-rockchip-20190823' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-rockchip - remove rk3288 fennec board - remove SPL raw image support for Rockchip SoCs - add common misc_init_r() for ethaddr from cpuid - enable USB HOST support for rk3328 - unify code for finding a valid gpt in part driver
2019-08-24Merge branch '2019-08-23-master-imports'Tom Rini
- Migrate CONFIG_MX_CYCLIC, CONFIG_FSL_USDHC and CONFIG_MXS_GPIO to Kconfig - Fix some SPL/TPL and ARM64 dependencies
2019-08-23Convert CONFIG_MX_CYCLIC to KconfigAdam Ford
This converts the following to Kconfig: CONFIG_MX_CYCLIC Signed-off-by: Adam Ford <aford173@gmail.com> Acked-by: David Lechner <david@lechnology.com>
2019-08-23Convert CONFIG_FSL_USDHC to KconfigAdam Ford
This converts the following to Kconfig: CONFIG_FSL_USDHC Signed-off-by: Adam Ford <aford173@gmail.com> [trini: Add IMX8M, TARGET_S32V234EVB to FSL_USDHC list] Signed-off-by: Tom Rini <trini@konsulko.com>
2019-08-23kconfig: Convert CONFIG_MXS_GPIO to KconfigLukasz Majewski
This converts the following to Kconfig: CONFIG_MXS_GPIO Travis-CI: https://travis-ci.org/lmajewski/u-boot-dfu/builds/571260789 Signed-off-by: Lukasz Majewski <lukma@denx.de> Acked-by: Peng Fan <peng.fan@nxp.com> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2019-08-23Merge https://gitlab.denx.de/u-boot/custodians/u-boot-clkTom Rini
2019-08-23evb_rk3399: revert CONFIG_SYS_MMC_ENV_DEV to 0Max Kellermann
This was changed to 1 in commit 0717dde057e, but a few months later, commit 5f9411af37b swapped the order of eMMC and SD card by assigning indexed aliases to `&sdhci` and `&sdmmc`. Signed-off-by: Max Kellermann <max.kellermann@gmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> (Add signature) Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2019-08-23disk: efi: ignore 'IGNOREME' GPT header found on cros eMMCsUrja Rannikko
Some ChromeOS devices (atleast veyron speedy) have the first 8MiB of the eMMC write protected and equipped with a dummy 'IGNOREME' GPT header - instead of spewing error messages about it, just silently try the backup GPT. Note: this does not touch the gpt cmd writing/verifying functions, those will still complain. Signed-off-by: Urja Rannikko <urjaman@gmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2019-08-23rockchip: rk3288: remove fennec board supportKever Yang
Since there is no one using this board, remove it. Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2019-08-23rockchip: Move config SYS_MALLOC_LEN to KconfigKever Yang
Use Kconfig for option SYS_MALLOC_LEN and default to 0x2000000. Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2019-08-22armv8: ls1088aqds: support DSPI mode by hwconfigChuanhua Han
BRDCFG4[USBOSC] and BRDCFG5[SPR] register field of Qixis device is used to control SPI and other IP signal routing. USBOSC: 0= SPI_CLK used as external USB REFCLK input driven with 24.000 MHz. SPI devices are unusable in this mode. 1= SPI_CLK used as SPI clock. SPI devices are usable in this mode. USB block is clocked from internal sources SPR[3:2]: SPI_CS / SDHC_DAT4:7 Routing (schematic net CFG_SPI_ROUTE[3:2]): 00= SDHC/eMMC 8-bit 01= SD Card Rev 2.0/3.0 10= SPI on-board memory 11= TDM Riser / SPI off-board connector. The default value is 00 if an SDCard/eMMC card is selected as the boot device. SPR[1:0]: SPI_SIN/SOUT/SCK Routing (schematic net CFG_SPI_ROUTE[1:0]): 00= SDHC Sync loop 01= TDM Riser / SPI off-board connector. 10= SPI on-board memory. 11= SPI off-board connector. By default, the SPI feature is not available, so we need to configure the above register fields to select the route to the SPI feature. Signed-off-by: Chuanhua Han <chuanhua.han@nxp.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-22armv8: ls1046afrwy: Define CONFIG_ENV_ADDR for QSPI BootAlison Wang
Defines CONFIG_ENV_ADDR for QSPI Boot which specifies the start address of the flash sector containing the environment. It fixes the issue that bootcmd is always set as default at bootup. Signed-off-by: Alison Wang <alison.wang@nxp.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-22armv8: ls1088aqds: Add support of I2C driver model.Chuanhua Han
Udate ls1088aqds board init code to support DM_I2C. Signed-off-by: Chuanhua Han <chuanhua.han@nxp.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-22boards: ls1088a: Add support of I2C driver modelChuanhua Han
DM_I2C_COMPAT is a compatibility layer that allows using the non-DM I2C API when DM_I2C is used.When DM_I2C_COMPAT is not enabled for compilation, a compilation error will be generated. This patch solves the problem that the i2c-related api of the ls1088a platform does not support dm. Signed-off-by: Chuanhua Han <chuanhua.han@nxp.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-22boards: ls2088aqds: Add support of I2C driver model.Chuanhua Han
Update ls2088aqds board init code to support DM_I2C. Signed-off-by: Chuanhua Han <chuanhua.han@nxp.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-22rtc: ds3232/ds3231: Add support to generate 32KHz output for driver moduleChuanhua Han
Add an implementation of the rtc_enable_32khz_output() that uses the driver model i2c APIs. Also put code related to rtc_enable_32khz_output under CONFIG_RTC_ENABLE_32KHZ_OUTPUT. Signed-off-by: Chuanhua Han <chuanhua.han@nxp.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-22boards: ls2088a: Add support of I2C driver model.Chuanhua Han
DM_I2C_COMPAT is a compatibility layer that allows using the non-DM I2C API when DM_I2C is used.When DM_I2C_COMPAT is not enabled for compilation, a compilation error will be generated. This patch solves the problem that the i2c-related api of the ls2088a platform does not support dm. Signed-off-by: Chuanhua Han <chuanhua.han@nxp.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-22armv8: ls1028aqds: Remove the definition of CONFIG_SYS_I2C_EARLY_INITChuanhua Han
Since i2c uses dm mode, i2c controller will be initialized when reading and writing devices on i2c bus. So there is no need for the original non-dm mode i2c early initialization function call, this patch removed the definition of CONFIG_SYS_I2C_EARLY_INIT. Signed-off-by: Chuanhua Han <chuanhua.han@nxp.com> Reviewed-by: Alex Marginean <alexm.osslist@gmail.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-22boards: ls1028a: Add support of I2C driver modelChuanhua Han
DM_I2C_COMPAT is a compatibility layer that allows using the non-DM I2C API when DM_I2C is used.When DM_I2C_COMPAT is not enabled for compilation, a compilation error will be generated. This patch solves the problem that the i2c-related api of the ls1028a platform does not support dm. Signed-off-by: Chuanhua Han <chuanhua.han@nxp.com> Reviewed-by: Alex Marginean <alexm.osslist@gmail.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-22configs: ls1043aqds: Move CONFIG_FSL_QSPI to defconfigAshish Kumar
Move CONFIG_FSL_QSPI from header file to defconfigs, consequently unset imply config(CONFIG_SPI_FLASH_BAR) which is not valid for LS series. Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-22drivers: net: mc: Report extra memory to LinuxMeenakshi Aggarwal
MC firmware need to be aligned to 512M, so minimum 512MB DDR is reserved. But MC support to work with 128MB or 256MB DDR memory also, in this case, rest of the memory is not usable. So reporting this extra memory to Linux through dtb memory fixup. Signed-off-by: Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-22sandbox: clk: add clk enable/disable test codePeng Fan
Since we added clk enable_count and prograte clk child enabling operation to clk parent, so add a new function sandbox_clk_enable_count to get enable_count for test usage. And add test code to get the enable_count after we enable/disable the device clk. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-08-22clk: introduce enable_countPeng Fan
As what Linux Kernel 5.3.0 provides when enable/disable clk, there is an enable_count in clk_core_disable/enable. Introduce enable_count to track the clk enable/disable count when clk_enable/disable for CCF. And Initialize enable_count to 0 when register the clk. And clk tree dump with enable_count will be supported, it will be easy for us to check the clk status with enable_count Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-08-20ARM: da850evm: Remove dead codeAdam Ford
Now that SPL supports DM_SERIAL and the direct NOR boot supports DM_SERIAL, the check to see if DM_SERIAL is defined can go away, because all da850evm variants now support DM_SERIAL. This patch simply removes some dead precompiler defines. Signed-off-by: Adam Ford <aford173@gmail.com>
2019-08-20ARM: da850evm: Remove dead SPI CodeAdam Ford
With SPL now supporting DM_SPI, the need for compiler directives and hard-coded addresses is obsolete. This patch removes some dead legacy code defining the SPI base address Signed-off-by: Adam Ford <aford173@gmail.com>
2019-08-20ARM: omapl138_lcdk: Enable USBAdam Ford
The OMAPL138-lcdk has two USB controllers which are currently disabled. This patch enables them. Signed-off-by: Adam Ford <aford173@gmail.com>
2019-08-20configs: Rename environment variable fit_bootfile to name_fitAndrew F. Davis
Like we did with 'fit_loadaddr' to 'addr_fit', the variable 'fit_bootfile' contains a name and so should be prefixed with name_. Make this change here. Signed-off-by: Andrew F. Davis <afd@ti.com>
2019-08-20configs: Rename environment variable fit_loadaddr to addr_fitAndrew F. Davis
This is the first part of a larger effort I would like to propose to unify and simplify the default set of environment variables. When many early environment variables were named there were fewer images being loaded, usually just a kernel. At this time names like 'loadaddr' would suffice. Now we have more images and many more commands that act on them, often re-using the same variable for several different uses. The contents of a variable are also not immediately known causing one to have to look up a chain of variables to understand what a command is actually doing. I suggest the following. To start, all variables containing names should be prefixed with name_ and addresses with addr_. This is like how K2 already does things and allows for simple universal commands like: get_fdt_nfs=nfs ${addr_fdt} /boot/${name_fdt} Which is very clear on what is intended here and would work across all board that using the this naming convention. We can do this one variable at a time, start here with addr_fit. Signed-off-by: Andrew F. Davis <afd@ti.com> Acked-by: Andreas Dannenberg <dannenberg@ti.com>
2019-08-20configs: Remove unneeded overlay_files environment variableAndrew F. Davis
The variable 'name_overlays' serves the same purpose. Remove 'overlay_files' and use 'name_overlays' everywhere. Signed-off-by: Andrew F. Davis <afd@ti.com>
2019-08-19Merge tag 'u-boot-rockchip-20190819' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-rockchip - Add ROC-RK3399-PC board support - Move CONFIG_SPI_FLASH_GIGADEVICE and CONFIG_CMD_USB_MASS_STORAGE to Kconfig - using SYSRESET_POWER_OFF for poweroff (Note that patch for rk8xx pmic is droped for it can not pass Travis build) - fix ofnode_get_name() assert
2019-08-19configs: Move CONFIG_CMD_USB_MASS_STORAGE properly into KconfigUrja Rannikko
This affects RK3036, RK322X and RK3288 - the defconfig changes done by moveconfig.py for the veyrons were left out on purpose because they dont have an OTG port, and will get their config updated in the next commit. Signed-off-by: Urja Rannikko <urjaman@gmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2019-08-19configs: Move CONFIG_SPI_FLASH_GIGADEVICE properly into KconfigUrja Rannikko
Affects rk3288 veyrons and rk3036, this was mostly done by moveconfig.py. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Urja Rannikko <urjaman@gmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2019-08-18global_data: Remove comment of reserved arch-specific GD flagsStefan Roese
With the removal of the x86 specific GD flags, there are no arch- specific GD flags any more. Let's remove the comment about reserving the upper 16 bits for arch-specific flags in the common header. This gives us more flexibility with the usage of the GD flags. As a matter of fact, we are already using more than 16 bits for common GD flags (with the addition of GD_FLG_WDT_READY). Signed-off-by: Stefan Roese <sr@denx.de> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Simon Glass <sjg@chromium.org> Cc: Tom Rini <trini@konsulko.com> Cc: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2019-08-18cbfs: Add functions to support multiple CBFSsSimon Glass
Sometimes an image has multiple CBFS. The current CBFS API is limited to handling only one at time. Also it keeps track of the CBFS internally in BSS, which does not work before relocation, for example. Add a few new functions to overcome these limitations. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com>
2019-08-18cbfs: Move result variable into the structSimon Glass
Move the result variable into the struct also, so that it can be used when BSS is not available. Add a function to read it. Note that all functions sill use the BSS version of the data. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com>
2019-08-18x86: qemu: Fix build warnings with CONFIG_DISTRO_DEFAULTS=nBin Meng
Use DISTRO_BOOTENV to decouple BOOTENV from CONFIG_DISTRO_DEFAULTS. Reported-by: Heinrich Schuchardt <xypron.debian@gmx.de> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2019-08-17Merge tag 'efi-2019-10-rc3' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-efi Pull request for UEFI sub-system for v2019.10-rc3 This pull request provides corrections for the SetVirtualAddress runtime service and avoids possible calls to NULL by consumers of the EFI_PXE_BASE_CODE_PROTOCOL.
2019-08-15efi_loader: EFI_PXE_BASE_CODE_PROTOCOL stubHeinrich Schuchardt
U-Boot implements the EFI_PXE_BASE_CODE_PROTOCOL because GRUB uses the mode information for booting via PXE. All function pointers in the protocol were NULL up to now which will cause immediate crashes when the services of the protocol are called. Create function stubs for all services of the protocol returning EFI_UNSUPPORTED. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-08-15ARM: socfpga: update CONFIG_SPL_FS_LOAD_PAYLOAD_NAME to u-boot.imgDalon Westergreen
Bring cyclone5 / arria5 / arria10 in line with convention and use u-boot.img as CONFIG_SPL_FS_LOAD_PAYLOAD_NAME. Signed-off-by: Dalon Westergreen <dalon.westergreen@intel.com>