summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)AuthorFilesLines
2021-09-08arm: Finish migration of CONFIG_MACH_TYPETom Rini79-236/+0
As this is only useful when booting with ATAGs, which are now largely disabled, remove this value for the remaining platforms. We have a few places in the code that had been testing for MACH_TYPE as a sort of internal logic. Update those to use different but still correct CONFIG symbols. Cc: Phil Sutter <phil@nwl.cc> Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-07arm: Add Kconfig entry for MACH_TYPETom Rini1-2/+0
As part of migrating support for ATAGs to Kconfig, add an option for setting and passing MACH_TYPE. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-07arm: Disable ATAGs supportTom Rini107-458/+0
With the exceptions of ds109, ds414, icnova-a20-swac, nokia_rx51 and stemmy, disable ATAG support. A large number of platforms had enabled support but never supported a kernel so old as to require it. Further, some platforms are old enough to support both, but are well supported by devicetree booting, and have been for a number of years. This is because some of the ATAGs related functions have been re-used to provide the same kind of information, but for devicetree or just generally to inform the user. When needed still, rename these functions to get_board_revision() instead, to avoid conflicts. In other cases, these functions were simply unused, so drop them. Cc: Andre Przywara <andre.przywara@arm.com> Cc: Jagan Teki <jagan@amarulasolutions.com> Cc: Phil Sutter <phil@nwl.cc> Cc: Stefan Bosch <stefan_b@posteo.net> Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-07imx: Convert SERIAL_TAG support to ENV_VARS_UBOOT_RUNTIME_CONFIGTom Rini7-13/+0
No iMX platforms have supported ATAG-based booting. They have however re-used the CONFIG_SERIAL_TAG option as a way to enable support of reading the OTP fuses and setting the serial# environment variable in some cases. Change the warp7 support to use this symbol, use this for updating the rest of the imx7 code, and update the imx8 conditionals. Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <festevam@gmail.com> Cc: NXP i.MX U-Boot Team <uboot-imx@nxp.com> Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-07Convert CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG to KconfigTom Rini11-21/+0
This converts the following to Kconfig: CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-04net: Move network rules to drivers/netSimon Glass1-1/+1
The code under drivers/net is related to ethernet networking drivers, in some fashion or another. Drop these from the top-level Makefile and also move the phy rule into drivers/net/Makefile which is where it belongs. Make the new rule for drivers/net check for the build-stage relevant ETH symbol. Fix up some Kconfig dependencies while we're here to mirror how the Makefile logic now works. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Introduce ETH, Kconfig dependency changes, am43xx fix] Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-04i2c: Convert CONFIG_POWER_I2C et al to KconfigSimon Glass24-53/+5
This converts the following to Kconfig: CONFIG_POWER_I2C CONFIG_POWER_LEGACY They are handled at the same time due to a dependency between them. Update the Makefile rule to use legacy power only in U-Boot proper. Unfortunately a separate rule is needed in SPL to be able to build legacy power. Add SPL related symbols for both, to allow for SPL-only usage. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com> [trini: More SPL related cleanups, reword commit message] Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-04power: Rename CONFIG_POWER to CONFIG_POWER_LEGACYSimon Glass24-29/+34
This option is used in pre-driver model code and much of it has never been converted to driver model. We want to add a new option to enable power support, so we can use a simple rule in the Makefile. Rename this one, which is really about a particular implementation of power. Also update the pmic.h header file so it either includes the legacy API or the driver model one. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2021-09-04power: Tidy up #undef of CONFIG_DM_PMICSimon Glass4-19/+0
Add a proper Kconfig option for SPL so we can remove the hack in some of the board config files. This involves adding CONFIG_SPL_DM_PMIC to some of the configs as well as updateing the Makefile rule for PMIC_RK8XX to exclude SPL. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com> [trini: Add SPL_PMIC_RK8XX, enable when needed, handle undef of CONFIG_DM_PMIC_PFUZE100 as well] Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-04Convert CONFIG_DMA_LPC32XX to KconfigSimon Glass1-3/+0
This converts the following to Kconfig: CONFIG_DMA_LPC32XX Signed-off-by: Simon Glass <sjg@chromium.org>
2021-09-04ti: Convert CONFIG_TI_EDMA3 to KconfigSimon Glass1-1/+0
This converts the following to Kconfig: CONFIG_TI_EDMA3 Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2021-09-04sata: Rename SATA_SUPPORT to SATASimon Glass1-1/+1
Rename this options so that CONFIG_IS_ENABLED can be used with it. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-09-04serial: Rename SERIAL_SUPPORT to SERIALSimon Glass4-5/+5
Rename these options so that CONFIG_IS_ENABLED can be used with them. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-09-04mmc: Rename MMC_SUPPORT to MMCSimon Glass10-10/+10
Rename these options so that CONFIG_IS_ENABLED can be used with them. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com> [trini: Fixup some incorrect renames] Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-03Revert most of the series for adding vexpress_aemv8r supportTom Rini1-37/+21
Per a request from Andre Przywara and agreed with by Peter Hoyes, the vexpress aemv8r support wasn't quite ready to be merged, but the discussion had moved off list. We should keep the first patch in the series for now, but revert the rest. This reverts the following commits: e0bd6f31ce41 doc: Add documentation for the Arm vexpress board configs 30e5a449e8c7 arm: Use armv8_switch_to_el1 env to switch to EL1 b53bbca63bf4 vexpress64: Add BASER_FVP vexpress board variant 2f5b7b74903f armv8: Add ARMv8 MPU configuration logic 37a757e227cc armv8: Ensure EL1&0 VMSA is enabled Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-02vexpress64: Add BASER_FVP vexpress board variantPeter Hoyes1-21/+37
The BASER_FVP board variant is implemented on top of the BASE_FVP board config (which, in turn, is based on the Juno Versatile Express board config). They all share a similar memory map - for BASER_FVP the map is inverted from the BASE_FVP (https://developer.arm.com/documentation/100964/1114/Base-Platform/Base---memory/BaseR-Platform-memory-map) * Create new TARGET_VEXPRESS64_BASER_FVP target, which uses the same board config as BASE_FVP and JUNO * Adapt vexpress_aemv8a.h header file to support BASER_FVP (and rename to vexpress_aemv8.h) * Enable config to switch to EL1 for the BASER_FVP * Create vexpress_aemv8r defconfig * Provide an MPU memory map for the BASER_FVP For now, only single core boot is supported. Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com> [trini: Add MAINTAINERS, move BOOTCOMMAND to defconfig] Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-02board: stemmy: Add basic Fastboot supportStephan Gerhold1-0/+27
Make use of the new drivers for ARM U8500 introduced in the U-Boot 2021.10 merge window by adding basic support for USB Fastboot with the "stemmy" board. As a first step this will always boot directly into USB Fastboot for now with the console displayed on the screen to make that obvious. Samsung uses quite strange GPT partition labels on these boards, so also add a bunch of fastboot_partition_alias_* to make this more easy to use. Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
2021-09-02dm: hash: Add new UCLASS_HASH supportChia-Wei Wang2-0/+62
Add UCLASS_HASH for hash driver development. Thus the hash drivers (SW or HW-accelerated) can be developed in the DM-based fashion. Signed-off-by: Chia-Wei Wang <chiawei_wang@aspeedtech.com>
2021-09-02lib/md5: Export progressive APIsChia-Wei Wang1-0/+4
Export the MD5 hash init/update/finish progressive APIs for better flexibility. Signed-off-by: Chia-Wei Wang <chiawei_wang@aspeedtech.com>
2021-09-01Merge branch 'next' of ↵Tom Rini2-6/+8
https://gitlab.denx.de/u-boot/custodians/u-boot-marvell into next - Handling all DM watchdogs in watchdog_reset() (Rasmus)
2021-09-01Convert CONFIG_SYS_MALLOC_LEN to KconfigTom Rini305-738/+0
This converts the following to Kconfig: CONFIG_SYS_MALLOC_LEN Signed-off-by: Tom Rini <trini@konsulko.com> Acked-by: Sean Anderson <seanga2@gmail.com> Reviewed-by: Rick Chen <rick@andestech.com>
2021-09-01Convert CONFIG_SKIP_LOWLEVEL_INIT et al to KconfigTom Rini117-207/+0
This converts the following to Kconfig: CONFIG_SKIP_LOWLEVEL_INIT CONFIG_SKIP_LOWLEVEL_INIT_ONLY In order to do this, we need to introduce SPL and TPL variants of these options so that we can clearly disable these options only in SPL in some cases, and both instances in other cases. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-01Finish converting CONFIG_SYS_CACHELINE_SIZE to KconfigTom Rini20-24/+0
We move the SYS_CACHE_SHIFT_N options from arch/arm/Kconfig to arch/Kconfig, and introduce SYS_CACHE_SHIFT_4 to provide a size of 16. Introduce select statements for other architectures based on current usage. For MIPS, we take the existing arch-specific symbol and migrate to the generic symbol. This lets us remove a little bit of otherwise unused code. Cc: Alexey Brodkin <alexey.brodkin@synopsys.com> Cc: Anup Patel <anup.patel@wdc.com> Cc: Atish Patra <atish.patra@wdc.com> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Leo <ycliang@andestech.com> Cc: Palmer Dabbelt <palmer@dabbelt.com> Cc: Paul Walmsley <paul.walmsley@sifive.com> Cc: Sean Anderson <seanga2@gmail.com> Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com> Acked-by: Sean Anderson <seanga2@gmail.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Reviewed-by: Rick Chen <rick@andestech.com>
2021-09-01Convert CONFIG_RAMBOOT_PBL et al to KconfigTom Rini15-214/+1
This converts the following to Kconfig: CONFIG_RAMBOOT_PBL CONFIG_SYS_FSL_PBL_PBI CONFIG_SYS_FSL_PBL_RCW Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-01nitrogen6x: Populate FDTFILE at build-time for all platformsTom Rini1-9/+1
Rather than using CONFIG_SABRELITE to set FDTFILE for only that platform, switch to always setting this based on CONFIG_DEFAULT_DEVICE_TREE as this should always match the kernel device tree name anyhow. Signed-off-by: Tom Rini <trini@konsulko.com> Acked-by: Troy Kisky <troy.kisky@boundarydevices.com>
2021-09-01Convert CONFIG_SYS_LOAD_ADDR to KconfigTom Rini312-564/+0
Now that we have consistent usage, migrate this symbol to Kconfig. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Rick Chen <rick@andestech.com>
2021-09-01global: Convert CONFIG_LOADADDR to CONFIG_SYS_LOADADDRTom Rini166-355/+141
- In most of the codebase, we reference CONFIG_SYS_LOAD_ADDR and not CONFIG_LOADADDR. - Generally, CONFIG_SYS_LOADADDR is set to CONFIG_LOADADDR and then as noted, we use CONFIG_SYS_LOADADDR. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-01Convert CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT to KconfigTom Rini2-2/+0
This converts the following to Kconfig: CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-01nxp: Migrate a number of DDR related symbols to KconfigTom Rini31-80/+0
- Guard most of the options in drivers/ddr/fsl/Kconfig with SYS_FSL_DDR || SYS_FSL_MMDC. - Migrate FSL_DMA, DDR_ECC, DDR_ECC_CMD, and ECC_INIT_VIA_DDRCONTROLLER to Kconfig. - Clean up the logic for including the DDR_ECC_CMD code. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-01nxp: Migrate CONFIG_DDR_CLK_FREQ to KconfigTom Rini28-44/+11
As this symbol can either be a fixed value or the function get_board_ddr_clk, migration is tricky. Introduce a choice of DYNAMIC or STATIC_DDR_CLK_FREQ. If DYNAMIC, we continue to use the board defined get_board_ddr_clk function. If STATIC, set CONFIG_DDR_CLK_FREQ to that value and now include/clock_legacy.h contains the function prototype or defines get_board_ddr_clk() to that static value. Update callers to test for DYNAMIC or STATIC. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-01mvebu: ddr: Rename CONFIG_DDR_FIXED_SIZE to CONFIG_SYS_SDRAM_SIZETom Rini2-2/+6
We have a number of CONFIG symbols to express the fixed size of system memory. For now, rename CONFIG_DDR_FIXED_SIZE to CONFIG_SYS_SDRAM_SIZE and adjust usage to match that CONFIG_SYS_SDRAM_SIZE expects the entire size rather than MiB. Cc: Marek Behún <marek.behun@nic.cz> Cc: Stefan Roese <sr@denx.de> Signed-off-by: Tom Rini <trini@konsulko.com> Acked-by: Marek Behún <marek.behun@nic.cz>
2021-09-01mvebu: Migrate CONFIG_DDR_32BIT/64BIT to KconfigTom Rini1-3/+0
Move CONFIG_DDR_32BIT/64BIT to Kconfig as a choice for Armada XP platforms. Make 64bit the default as this mirrors the current code. Signed-off-by: Tom Rini <trini@konsulko.com> Acked-by: Marek Behún <marek.behun@nic.cz> Reviewed-by: Stefan Roese <sr@denx.de>
2021-08-31watchdog: wdt-uclass.c: handle all DM watchdogs in watchdog_reset()Rasmus Villemoes1-6/+0
A board can have and make use of more than one watchdog device, say one built into the SOC and an external gpio-petted one. Having wdt-uclass only handle the first is both a little arbitrary and unexpected. So change initr_watchdog() so we visit (probe) all DM watchdog devices, and call the init_watchdog_dev helper for each. Similarly let watchdog_reset() loop over the whole uclass - each having their own ratelimiting metadata, and a separate "is this device running" flag. This gets rid of the watchdog_dev member of struct global_data. We do, however, still need the GD_FLG_WDT_READY set in initr_watchdog(). This is because watchdog_reset() can get called before DM is ready, and I don't think we can call uclass_get() that early. The current code just returns 0 if "getting" the first device fails - that can of course happen because there are no devices, but it could also happen if its ->probe call failed. In keeping with that, continue with the handling of the remaining devices even if one fails to probe. This is also why we cannot use uclass_probe_all(). If desired, it's possible to later add a per-device "u-boot,autostart" boolean property, so that one can do CONFIG_WATCHDOG_AUTOSTART per-device. Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de> Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
2021-08-31watchdog: wdt-uclass.c: add wdt_stop_all() helperRasmus Villemoes1-0/+8
Since the watchdog_dev member of struct global_data is going away in favor of the wdt-uclass handling all watchdog devices, prepare for that by adding a helper to call wdt_stop() on all known devices. If an error is encountered, still do wdt_stop() on remaining devices, but remember and return the first error seen. Initially, this will only be used in one single place (board/alliedtelesis/x530/x530.c). Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
2021-08-31global: Remove unused or unnecessary CONFIG symbols related to DDRTom Rini6-91/+0
These symbols are now either unused or were only used within the config file to determine other logic, which could be done in a way that doesn't further pollute the CONFIG namespace. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30astro_mcf5373l: Rework ASTRO_ID logicTom Rini1-7/+7
Rather than using CONFIG namespace for logic internal to include/configs/astro_mcf5373l.h to select ASTRO_ID (and populate the default environment), strip CONFIG from the various options used and set. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30mpc83xx: Update commentTom Rini1-1/+1
Update the comment here to refer to PCI_CONFIG_ADDRESS rather than CONFIG_ADDRESS. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2021-08-30video: Remove ati_radeon_fbTom Rini1-1988/+0
This driver is currently unused. Remove. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2021-08-30global: Remove dead code that starts with CONFIG_[0-9A]Tom Rini9-25/+0
This removes a number of spots of dead code based on symbols that start with CONFIG_[0-9] or CONFIG_A. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30i8042: Do not abuse CONFIG namespaceTom Rini1-6/+6
This driver uses the CONFIG namespace to set the chips internal CONFIG namespace related bits. However, CONFIG is reserved for the top-level Kconfig based configuration system. Use CFG as the namespace here instead to avoid pollution. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2021-08-30ppc: Rework some hard-coded BOOTCOMMANDSTom Rini23-76/+76
There are an assortment of hard-coded CONFIG_BOOTCOMMAND options in some board headers. Rework these so that they do not add to the CONFIG namespace. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30arm: Migrate GICV2 / GICV3 to KconfigTom Rini12-25/+4
Migrate CONFIG_GICV2 and CONFIG_GICV3 to Kconfig. We still have the GIC related registers that need to be handled more cleanly but start by moving this symbol to Kconfig. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30Convert CONFIG_I2C_SET_DEFAULT_BUS_NUM et al to KconfigTom Rini16-69/+0
This converts the following to Kconfig: CONFIG_I2C_SET_DEFAULT_BUS_NUM CONFIG_I2C_DEFAULT_BUS_NUMBER Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30tegra: Cleanup I2C supportTom Rini1-5/+0
Remove the irrelevant section from the README and remove the non-functional SPL-undef section. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30i2c: fsl_i2c: Migrate to KconfigTom Rini27-187/+7
- As there are no boards that use different values for speed / slave on different buses, use a single option. - Switch to using the common SYS_I2C_SPEED / SYS_I2C_SLAVE options. - Introduce _HAS_ options for additional buses as only the first one is common to all users. - Convert all remaining symbols to Kconfig. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30rcar: i2c: Migrate SYS_I2C_SH to KconfigTom Rini1-18/+0
- Migrate SYS_I2C_SH and related defines to Kconfig - Remove currently unused SYS_I2C_SH related defines - Cleanup related README section. Cc: Marek Vasut <marek.vasut+renesas@gmail.com> Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30Convert CONFIG_SYS_I2C_MXC et al to KconfigTom Rini44-213/+0
This converts the following to Kconfig: CONFIG_SYS_I2C_MXC CONFIG_SYS_I2C_MXC_I2C1 CONFIG_SYS_I2C_MXC_I2C2 CONFIG_SYS_I2C_MXC_I2C3 CONFIG_SYS_I2C_MXC_I2C4 Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30Convert CONFIG_SYS_I2C_SPEED et al to KconfigTom Rini66-144/+0
This converts the following to Kconfig: CONFIG_SYS_I2C_SPEED CONFIG_SYS_I2C_SLAVE Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30ti: i2c: Convert CONFIG_SYS_OMAP24_I2C to CONFIG_SYS_I2C namespaceTom Rini1-1/+1
The omap24xx I2C driver uses its own CONFIG namespace for common I2C variables. Rather than convert more of them to Kconfig, rename these to the common I2C ones and remove the entirely unused functionality. As part of this, we make the am335x_shc platforms consistent with their intended speed values. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30Convert CONFIG_SYS_I2C_EARLY_INIT to KconfigTom Rini6-14/+4
Convert SYS_I2C_EARLY_INIT to Kconfig, and make it depend on SPL_SYS_I2C_LEGACY. Remove the weak implementation as it's either something that needs to exist for real, or shouldn't be called. Signed-off-by: Tom Rini <trini@konsulko.com>