summaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2022-12-29Merge tag 'efi-2023-01-rc5-2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request for efi-2023-01-rc5-2 Documentation: * Reorganize existing TI docs and add K3 generation page * Add texinfodocs and infodocs targets * Update qemu-ppce500 documentation * Use "changesets" not "csets" in statistics pages UEFI * Fix merging of preseeded non-volatile variables * Fix a return value in the EFI_HII_DATABASE_PROTOCOL * Set UEFI specification version to 2.10
2022-12-29PowerPC: Update dependencies on *SYS_MPC85XX_NO_RESETVECTom Rini
In 96699f097a02 ("powerpc: mpc85xx: Use binman to embed dtb inside U-Boot") we introduce CONFIG_MPC85XX_HAVE_RESET_VECTOR and do so via Kconfig. However, much later in de47ff536363 ("Convert CONFIG_SYS_MPC85XX_NO_RESETVEC to Kconfig") I converted the symbol that is the inverse of this to Kconfig. This should have included a dependency on the first symbol as they are logically opposite. The dependency being missing lead to some platforms being broken at runtime due to discarding the require reset vector. Fixes: de47ff536363 ("Convert CONFIG_SYS_MPC85XX_NO_RESETVEC to Kconfig") Reported-by: Pali Rohár <[email protected]> Signed-off-by: Tom Rini <[email protected]> Tested-by: Pali Rohár <[email protected]>
2022-12-29efi_loader: set IMAGE_FILE_LARGE_ADDRESS_AWAREHeinrich Schuchardt
For the 64bit EFI binaries that we create set the IMAGE_FILE_LARGE_ADDRESS_AWARE characteristic in the PE-COFF header to indicate that they can handle addresses above 2 GiB. Signed-off-by: Heinrich Schuchardt <[email protected]>
2022-12-23bcmcygnus: Convert CONFIG_IPROC to KconfigTom Rini
Select this symbol as needed. Signed-off-by: Tom Rini <[email protected]>
2022-12-23configs: Remove unused or redundant CONFIG symbolsTom Rini
A number of CONFIG symbols have crept in that are never referenced in code, so drop them here. Further, we have two symbols being enabled in headers while already enabled correctly in Kconfig, so these lines can also be removed. Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_X86_REFCODE_RUN_ADDR to CFGTom Rini
Perform a simple rename of CONFIG_X86_REFCODE_RUN_ADDR to CFG_X86_REFCODE_RUN_ADDR Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_X86_REFCODE_ADDR to CFGTom Rini
Perform a simple rename of CONFIG_X86_REFCODE_ADDR to CFG_X86_REFCODE_ADDR Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_X86_MRC_ADDR to CFGTom Rini
Perform a simple rename of CONFIG_X86_MRC_ADDR to CFG_X86_MRC_ADDR Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_WATCHDOG_PRESC et al to CFGTom Rini
Perform simple renames of: CONFIG_WATCHDOG_PRESC to CFG_WATCHDOG_PRESC CONFIG_WATCHDOG_RC to CFG_WATCHDOG_RC Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_TEGRA_BOARD_STRING to CFGTom Rini
Perform a simple rename of CONFIG_TEGRA_BOARD_STRING to CFG_TEGRA_BOARD_STRING Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_SMP_PEN_ADDR to CFGTom Rini
Perform a simple rename of CONFIG_SMP_PEN_ADDR to CFG_SMP_PEN_ADDR Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_SC_TIMER_CLK to CFGTom Rini
Perform a simple rename of CONFIG_SC_TIMER_CLK to CFG_SC_TIMER_CLK Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_SAR_REG to CFGTom Rini
Perform a simple rename of CONFIG_SAR_REG to CFG_SAR_REG Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_SAR2_REG to CFGTom Rini
Perform a simple rename of CONFIG_SAR2_REG to CFG_SAR2_REG Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_RESET_VECTOR_ADDRESS to CFGTom Rini
Perform a simple rename of CONFIG_RESET_VECTOR_ADDRESS to CFG_RESET_VECTOR_ADDRESS Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_QBMAN_CLK_DIV to CFGTom Rini
Perform a simple rename of CONFIG_QBMAN_CLK_DIV to CFG_QBMAN_CLK_DIV Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_PME_PLAT_CLK_DIV to CFGTom Rini
Perform a simple rename of CONFIG_PME_PLAT_CLK_DIV to CFG_PME_PLAT_CLK_DIV Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_PL011_CLOCK to CFGTom Rini
Perform a simple rename of CONFIG_PL011_CLOCK to CFG_PL011_CLOCK Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_PHY_IRAM_BASE to CFGTom Rini
Perform a simple rename of CONFIG_PHY_IRAM_BASE to CFG_PHY_IRAM_BASE Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_MAX_RAM_BANK_SIZE to CFGTom Rini
Perform a simple rename of CONFIG_MAX_RAM_BANK_SIZE to CFG_MAX_RAM_BANK_SIZE Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_MAX_MEM_MAPPED to CFGTom Rini
Perform a simple rename of CONFIG_MAX_MEM_MAPPED to CFG_MAX_MEM_MAPPED Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_MALLOC_F_ADDR to CFGTom Rini
Perform a simple rename of CONFIG_MALLOC_F_ADDR to CFG_MALLOC_F_ADDR Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_LOWPOWER_FLAG to CFGTom Rini
Perform a simple rename of CONFIG_LOWPOWER_FLAG to CFG_LOWPOWER_FLAG Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_LOWPOWER_ADDR to CFGTom Rini
Perform a simple rename of CONFIG_LOWPOWER_ADDR to CFG_LOWPOWER_ADDR Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_KSNET_NETCP_BASE to CFGTom Rini
Perform a simple rename of CONFIG_KSNET_NETCP_BASE to CFG_KSNET_NETCP_BASE Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_KSNET_MAC_ID_BASE to CFGTom Rini
Perform a simple rename of CONFIG_KSNET_MAC_ID_BASE to CFG_KSNET_MAC_ID_BASE Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_KSNET_CPSW_NUM_PORTS to CFGTom Rini
Perform a simple rename of CONFIG_KSNET_CPSW_NUM_PORTS to CFG_KSNET_CPSW_NUM_PORTS Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_IRAM_TOP to CFGTom Rini
Perform a simple rename of CONFIG_IRAM_TOP to CFG_IRAM_TOP Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_IRAM_BASE to CFGTom Rini
Perform a simple rename of CONFIG_IRAM_BASE to CFG_IRAM_BASE Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_I2C_MVTWSI_BASE1 to CFGTom Rini
Perform a simple rename of CONFIG_I2C_MVTWSI_BASE1 to CFG_I2C_MVTWSI_BASE1 Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_I2C_MVTWSI_BASE0 to CFGTom Rini
Perform a simple rename of CONFIG_I2C_MVTWSI_BASE0 to CFG_I2C_MVTWSI_BASE0 Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_FM_PLAT_CLK_DIV to CFGTom Rini
Perform a simple rename of CONFIG_FM_PLAT_CLK_DIV to CFG_FM_PLAT_CLK_DIV Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_BOARDDIR to CFGTom Rini
Perform a simple rename of CONFIG_BOARDDIR to CFG_BOARDDIR Signed-off-by: Tom Rini <[email protected]>
2022-12-23global: Migrate CONFIG_ARM_GIC_BASE_ADDRESS to CFGTom Rini
Perform a simple rename of CONFIG_ARM_GIC_BASE_ADDRESS to CFG_ARM_GIC_BASE_ADDRESS Signed-off-by: Tom Rini <[email protected]>
2022-12-23Convert CONFIG_NEVER_ASSERT_ODT_TO_CPU to KconfigTom Rini
This converts the following to Kconfig: CONFIG_NEVER_ASSERT_ODT_TO_CPU Signed-off-by: Tom Rini <[email protected]>
2022-12-23rk32xx: Use standard TPL linker scriptTom Rini
As of 2f41ade79e59 ("linker: Modify linker scripts to be more generic") we can use the same linker script for SPL and TPL and not have to make use of #undef tricks. Remove these last remnants. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-12-23exynos: Rework legacy PWM usageTom Rini
The way that the timer support is currently done for exynos/nexell platforms relies on the legacy PWM infrastructure, and that needs to be updated. However, we really cannot safely undef CONFIG_DM_PWM to build the timer.c file without warnings. For now, rename the relevant legacy functions to be prefixed with s5p_ and add prototypes to the arch pwm.h files. Cc: Minkyu Kang <[email protected]> Cc: Jaehoon Chung <[email protected]> Cc: Dzmitry Sankouski <[email protected]> Cc: Stefan Bosch <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-12-22powerpc/mpc85xx: Disable AltiVec and VSX instructionsPali Rohár
All vector instructions on powerpc mpc85xx must not be used because U-Boot does not enable them. Usage cause random crashes. SPE vector instructions are already disabled by compiler flags, so disable also AltiVec and VSX vector instructions. Linux kernel disables AltiVec and VSX instructions too. Signed-off-by: Pali Rohár <[email protected]>
2022-12-22powerpc/mpc85xx: Improve disabling of SPE instructionsPali Rohár
Specifying -mspe=no also disables usage of SPE instructions. It is documented in "[PATCH,rs6000] make -mno-spe work as expected" email: http://gcc.gnu.org/ml/gcc-patches/2008-04/msg00311.html So replace -mspe=yes by -mspe=no, so make it clear that u-boot has to be compiled without SPE instructions. Linux kernel contains following Makefile code to achieve it: # No SPE instruction when building kernel # (We use all available options to help semi-broken compilers) KBUILD_CFLAGS += $(call cc-option,-mno-spe) KBUILD_CFLAGS += $(call cc-option,-mspe=no) Do same for U-Boot. Signed-off-by: Pali Rohár <[email protected]>
2022-12-22powerpc/mpc85xx: Pass correct cpu compiler flagsPali Rohár
When gcc's default cpu (selected by --with-cpu= during gcc's configure phase) does not match target U-Boot board cpu then U-Boot binary does not have to be compiled correctly. Lot of distributions sets gcc's default cpu to generic powerpc variant which works fine. U-Boot already pass -Wa,-me500 flag to gcc which instructs GNU AS to accept e500 specific instructions when processing assembler source files (.S). This affects also assembly files generated by gcc from C source files. And because gcc for generic powerpc cpu puts '.machine ppc' at the beginning of the generated assembly file, it basically overwrites -me500 flag by which was GNU AS invoked (from U-boot build system). It started to be an issue since binutils 2.38 which does not keep enabled extra functional units selected by previous cpu. Hence issuing directive '.machine ppc' (generated by gcc for generic powerpc) after '.machine e500' (specifying at command line) disables usage of e500 specific instructions. And compiling arch/powerpc/cpu/mpc85xx/tlb.c code throws following assembler errors: {standard input}: Assembler messages: {standard input}:127: Error: unrecognized opcode: `tlbre' {standard input}:418: Error: unrecognized opcode: `tlbre' {standard input}:821: Error: unrecognized opcode: `msync' {standard input}:821: Error: unrecognized opcode: `tlbwe' {standard input}:884: Error: unrecognized opcode: `tlbsx' This issue was already hit by Debian people and is reported in bug tracker: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1003490 Calling gcc with -mcpu=8540 flag fixes this issue because -mcpu=8540 tells gcc to compile code for e500 core/cpu (overwriting gcc's default cpu) and does not put '.machine ppc' directive into assembly anymore. Also if gcc is invoked with -mcpu=8540 then it pass -me500 flag to GNU AS. So it is unnecessary to manually specify -Wa,-me500 flag because it is implicitly added. Fix this issue properly by specifying correct -mcpu compiler flag for all supported powerpc cores in U-Boot mpc85xx platform, which are: e500v1, e500v2, e500mc, e5500 and e6500. For specifying e500v1 and e500v2 cores, gcc has unintuitive -mcpu=8540 and -mcpu=8548 flag names, for other cores -mcpu matches core name. The only difference between gcc's -mcpu=8540 and -mcpu=8548 flags is support for double precision floating point SPE instructions. As U-Boot does not use floating point, it is fine to use -mcpu=8540 for both e500v1 and e500v2 cores. Moreover gcc 9 completely removed e500 floating point support, so since gcc 9 -mcpu=8548 is just alias to -mcpu=8540. Note that U-Boot's CONFIG_E500 option is set also for other cpus, not only for e500v1 and e500v2. So do not check for CONFIG_E500 and rather set e500 as last fallback value when no other mpc85xx cpu matches. Signed-off-by: Pali Rohár <[email protected]>
2022-12-22T104xRDB: Remove non-TARGET_T1042D4RDB variantsTom Rini
At this point only the TARGET_T1042D4RDB variant of this is supported in tree, so remove the remaining parts of the other platforms. Signed-off-by: Tom Rini <[email protected]>
2022-12-22net: Remove more legacy functionsTom Rini
Remove some of the board and arch specific non-DM_ETH helper code. Signed-off-by: Tom Rini <[email protected]>
2022-12-22Convert CONFIG_TEGRA_ENABLE_UARTA et al to KconfigTom Rini
This converts the following to Kconfig: CONFIG_TEGRA_ENABLE_UARTA CONFIG_TEGRA_ENABLE_UARTB CONFIG_TEGRA_ENABLE_UARTC CONFIG_TEGRA_ENABLE_UARTD CONFIG_TEGRA_SPI CONFIG_TEGRA_UARTA_GPU CONFIG_TEGRA_UARTA_SDIO1 CONFIG_TEGRA_VDD_CORE_TPS62361B_SET3 CONFIG_TEGRA_VDD_CORE_TPS62366A_SET1 Signed-off-by: Tom Rini <[email protected]>
2022-12-22Convert CONFIG_STANDALONE_LOAD_ADDR to KconfigTom Rini
This converts the following to Kconfig: CONFIG_STANDALONE_LOAD_ADDR Signed-off-by: Tom Rini <[email protected]>
2022-12-22sandbox: Finish migration to KconfigTom Rini
Stop using CONFIG_SANDBOX_ARCH and use CONFIG_SANDBOX instead. For the SPI related defines, set them directly in Kconfig. This now empties arch/sandbox/include/asm/config.h. Cc: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-12-22powerpc: Migrate CONFIG_PPC_SPINTABLE_COMPATIBLE to KconfigTom Rini
Move this symbol to Kconfig, and preserve the current behavior. The help text here comes from where the relevant code is implemented and it is quite likely at this point in time we could either disable this option or at least make it configurable. Signed-off-by: Tom Rini <[email protected]>
2022-12-22arm: ti814x: Remove remaining support codeTom Rini
When the ti814x_evm config was removed most, but not all, of the relevant support code was remove. Get rid of what was missed. Fixes: 50b532686849 ("ti814x: Remove platform") Signed-off-by: Tom Rini <[email protected]>
2022-12-22Convert CONFIG_PEN_ADDR_BIG_ENDIAN to KconfigTom Rini
This converts the following to Kconfig: CONFIG_PEN_ADDR_BIG_ENDIAN Signed-off-by: Tom Rini <[email protected]>
2022-12-22Convert CONFIG_MONITOR_IS_IN_RAM to KconfigTom Rini
This converts the following to Kconfig: CONFIG_MONITOR_IS_IN_RAM As part of this, reword some of the documentation slightly to reflect that this is in Kconfig and not a define now. Signed-off-by: Tom Rini <[email protected]>
2022-12-22ddr: fsl: Remove CONFIG_MEM_INIT_VALUETom Rini
The way all of the memory init code here works is that we pass 0xDEADBEEF around for the initial value (as it's a well known 'poison' value and so easily recognized in debuggers, etc). The only point of this CONFIG symbol was to pass in a different value for that purpose. Drop this symbol and cleanup the code slightly. Signed-off-by: Tom Rini <[email protected]>