summaryrefslogtreecommitdiffstats
path: root/arch/arm/Kconfig
Commit message (Collapse)AuthorAgeFilesLines
* ARM64: add optional EFI stubAhmad Fatoum2024-03-051-0/+1
| | | | | | | | | | | While very recent binutils releases have dedicated efi-*-aarch targets, we may want to support older toolchains. For this reason, we import the kernel's EFI stub PE fakery, so the same barebox-dt-2nd.img may be loaded as if it were a "normal" or an EFI-stubbed kernel. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20240304190038.3486881-87-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/misc'Sascha Hauer2024-01-231-18/+1
|\
| * clk: select CLKDEV_LOOKUP from COMMON_CLKAhmad Fatoum2024-01-191-14/+0
| | | | | | | | | | | | | | | | | | | | All platforms that select COMMON_CLK also select CLKDEV_LOOKUP, therefore just select it in drivers/clk/Kconfig and drop the CLKDEV_LOOKUP all over the place. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20240118090718.1314156-2-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * clk: make COMMON_CLK a visible symbolAhmad Fatoum2024-01-191-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | So far, we expected platforms to select COMMON_CLK if they have a clock controller that's covered by the common clk framework and HAVE_CLK if they have a legacy clock driver. With the addition of SCMI clocks, platforms, especially virtualized ones, that previously didn't need clock support may now want access to them. Instead of having to select COMMON_CLK from such platforms on the off-chance that SCMI clocks may need to be used, just make COMMON_CLK user visible, so it can be selected as needed. As COMMON_CLK needs to conflict with legacy clock support, we also add a symbol for that and start selecting it where appropriate, Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20240118090718.1314156-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | ARM: layerscape: configure all DMA masters to be cache-coherentAhmad Fatoum2024-01-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upstream device tree now has /soc/dma-coherent, which breaks USB in Linux v6.1 when kernel is booted with barebox. Fix this by: - setting the snoop bits for the DMA masters, so we properly support Linux >= v6.1 DTs - fixing up cache coherency setting into kernel DT whenever barebox DT has /soc/dma-coherent to support older device trees The latter is done automatically when OF_DMA_COHERENCY is selected, so add the missing snoop bits here. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20240110160112.4134162-11-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | ARM: Layerscape: move over to MULTIARCHSascha Hauer2024-01-101-13/+14
|/ | | | | | | | Layerscape doesn't contain any unprotected initcalls anymore, so we can safely move it over to MULTIARCH. Link: https://lore.barebox.org/20240109161527.3237581-15-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/misc'Sascha Hauer2023-11-271-0/+1
|\
| * ARM: ls1046a: use compressed dtbsSascha Hauer2023-11-211-0/+1
| | | | | | | | | | | | | | | | It's getting tight in the initial 64k SRAM space. Use compressed dtbs to get some more free space. Link: https://lore.barebox.org/20231120133930.3946286-1-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | ARM: Add Texas Instruments K3 architectureSascha Hauer2023-11-061-0/+14
|/ | | | | | | | | | | This adds the Kconfig snippets for supporting the Texas Instruments K3 architecure. This also enables deep probe support on a SoC basis as all new boards should work with deep probe enabled. Likewise we need PM domain support for the initially supported AM62x SoC, so enable that for this SoC as well. Link: https://lore.barebox.org/20230803105003.4088205-18-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/versatile'Sascha Hauer2023-05-241-7/+12
|\
| * ARM: versatile: Use existing clocksource driverSascha Hauer2023-05-021-0/+2
| | | | | | | | | | | | | | We already have a SP804 driver in drivers/clocksource/. Use that instead of the open coded arch clocksource. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * ARM: versatile: move over to multi arch supportSascha Hauer2023-05-021-10/+10
| | | | | | | | | | | | | | Versatile is safe for multi arch support, move the Kconfig snippet over to it. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * ARM: versatile: move over to multi image supportSascha Hauer2023-05-021-0/+1
| | | | | | | | | | | | | | With multi image support we can compile the versatile image along with other images. Enable support for it. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * ARM: versatile: Use common clk frameworkSascha Hauer2023-05-021-0/+2
| | | | | | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | Merge branch 'for-next/rockchip'Sascha Hauer2023-05-241-0/+1
|\ \
| * | pinctrl/gpio: rockchip: separate gpio from pinctrl driverSascha Hauer2023-05-231-0/+1
| |/ | | | | | | | | | | Like done in Linux, for easier code sharing. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* / ARM: arm64virt: move to multiarchSascha Hauer2023-05-021-2/+2
|/ | | | | | | ARCH_ARM64_VIRT is safe for multiarch, move the Kconfig snippet over there. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: cleanup 32bit/64bit support in KconfigSascha Hauer2023-04-051-25/+27
| | | | | | | | | | | | | | The decision whether to build a 32bit or 64bit barebox has to be made first before anything else, so this makes CONFIG_64BIT a toplevel option without any further dependencies. With this patch we will only present the SoCs/boards which are actually supported by the selected code model in Kconfig. Without this patch it was often possible to select 32bit boards on a 64bit build or vice versa, which resulted in a broken build. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: Rockchip: let boards depend on 32/64bitSascha Hauer2023-04-051-0/+2
| | | | | | | | So far we can enable support for 32bit and 64bit SoCs at the same time which results in an unbuildable barebox. This is annoying, let the board visibility depend on the selected code model. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: bcm283x: Add multi-arch supportSascha Hauer2023-03-071-17/+16
| | | | | | Enable multi-arch support for bcm0283x Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: vexpress: Add multi-arch supportSascha Hauer2023-03-071-14/+14
| | | | | | | Nothing left to do, just move the vexpress Kconfig symbols over to multi-arch. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: stm32mp: Add multi-arch supportSascha Hauer2023-03-071-16/+16
| | | | | | | All preparations are done, move stm32mp architecture over to multi-arch support. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: zynqmp: Add multi-arch supportSascha Hauer2023-03-071-16/+16
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: omap: Add support for multi-archSascha Hauer2023-03-071-3/+15
| | | | Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: add multi-arch supportSascha Hauer2023-03-071-24/+29
| | | | | | | | | | | | | | This allows to build barebox for multiple arch/arm/mach-* for architectures that allow it. To get there we convert machine-y to a list. Architectures that want to support multi-arch must make sure that all boards support multi PBL support (i.e. select HAVE_PBL_MULTI_IMAGES). Also they must make sure that all initcalls can gracefully be executed on other SoCs. Two architectures that fulfil these requirements are added right from the start: i.MX and Rockchip. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: drop CONFIG_HAS_ASM_DEBUG_LLSascha Hauer2023-03-031-1/+1
| | | | | | | | | | | When CONFIG_HAS_ASM_DEBUG_LL is set then include/debug_ll.h includes asm/debug_ll.h, otherwise it includes mach/debug_ll.h. Drop this option and instead always include asm/debug_ll.h and include mach/debug_ll.h from there if necessary. This also adds the missing asm/debug_ll.h for architectures which previously did not have that file. Link: https://lore.barebox.org/20230302111606.1054037-6-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: Drop HAVE_MACH_ARM_HEADSascha Hauer2023-03-031-3/+0
| | | | | | | | | HAVE_MACH_ARM_HEAD stands in the way of adding multi arch support, as barebox-arm-head.h compiles differently on different archs. There are no users left, so remove it. Link: https://lore.barebox.org/20230302111606.1054037-5-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mvebu: Use ENTRY_FUNCTION_HEADSascha Hauer2023-03-021-1/+0
| | | | | | | | Use ENTRY_FUNCTION_HEAD in the mvebu boards to customize the barebox image header without having to hook into a generic include file. Link: https://lore.barebox.org/20230302111606.1054037-3-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: i.MX: let boards depend on 32/64bitSascha Hauer2023-03-021-0/+2
| | | | | | | | | So far we can enable support for 32bit and 64bit SoCs at the same time which results in an unbuildable barebox. This is annying, let the board visibility depend on the selected code model. Link: https://lore.barebox.org/20230302124731.2081045-2-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: i.MX: Remove old boardsSascha Hauer2023-03-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes a bunch of old boards that nobody showed interest in for a long time: Freescale boards ================ MACH_IMX21ADS MACH_IMX27ADS MACH_FREESCALE_MX25_3STACK MACH_FREESCALE_MX35_3STACK MACH_FREESCALE_MX53_SMD Eukrea boards ============= MACH_EUKREA_CPUIMX25 MACH_EUKREA_CPUIMX27 MACH_EUKREA_CPUIMX35 MACH_EUKREA_CPUIMX51SD Garz+Fricke boards ================== MACH_NESO MACH_GUF_CUPID Phytec boards ============= MACH_PCM037 MACH_PCM043 Amazon boards ============= MACH_KINDLE3 All these boards have not been converted to device tree nor do they support multi-image generation. As they are becoming a maintenance burden remove them now. A board can always be added back once it is ported to support the recent barebox interfaces. Link: https://lore.barebox.org/20230302105225.943524-2-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: at91: Switch all boards to multiimageSascha Hauer2023-03-011-0/+1
| | | | | | | | | Most at91 boards are not safe for multiimage support. We can however switch their compilation to the multiimage way which allows us to get rid of some legacy cruft in the longer run. Link: https://lore.barebox.org/20230228143031.1718565-8-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: remove samsung archSascha Hauer2023-03-011-19/+0
| | | | | | | | | arch/arm/mach-samsung/ hasn't seen any active maintenance or interest for a long time. Remove the architecture, boards and defconfig files Reviewed-by: Marco Felsch <m.felsch@pengutronix.de> Link: https://lore.barebox.org/20230228135727.1602351-2-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: add DEBUG_LL support for ARM64 QEMU VirtAhmad Fatoum2023-01-311-0/+1
| | | | | | | | | We have DEBUG_LL for the PL011 on the ARM64 QEMU Virt, but it is unused. Wire it in. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20230130064510.2398689-1-ahmad@a3f.at Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* treewide: rename CONFIG_HAS_ARCH_SJLJ to CONFIG_ARCH_HAS_SJLJAhmad Fatoum2022-12-071-1/+1
| | | | | | | | | We have 9 symbols beginning with ARCH_HAS, but only with HAS_ARCH. Change it over for symmetry. No functional change. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20221205133033.3008535-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/rpi4'Sascha Hauer2022-06-291-4/+6
|\
| * ARM: rpi: add Raspberry Pi 3 64-bit build supportAhmad Fatoum2022-06-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | Have the subarch select the needed symbols to display a 32-bit/64-bit menu and hide the boards that aren't capable of 64-bit when CONFIG_64BIT=y. Building for 64-bit throws some warning about mismatched type sizes, so fix those as well. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20220609055922.667016-14-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * ARM: cpu: remove unused SYS_SUPPORTS_32BIT_KERNELAhmad Fatoum2022-06-171-1/+1
| | | | | | | | | | | | | | | | | | This symbol only serves hiding CONFIG_32BIT and was so far not set anywhere, so just drop it. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20220609055922.667016-13-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * ARM: cpu: remove unnecessary CONFIG_SYS_SUPPORTS_64BIT_KERNELAhmad Fatoum2022-06-171-3/+1
| | | | | | | | | | | | | | | | | | | | For ARM, SYS_SUPPORTS_64BIT_KERNEL is selected exclusively by symbols that also select CPU_SUPPORTS_64BIT_KERNEL, so we can drop SYS_SUPPORTS_64BIT_KERNEL safely. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20220609055922.667016-12-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
| * ARM: cpu: prevent recursive dependencies via CPU_SUPPORTS_64BIT_KERNELAhmad Fatoum2022-06-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | For ARM, CONFIG_CPU_SUPPORTS_64BIT_KERNEL's only function, along with CONFIG_SYS_SUPPORTS_64BIT_KERNEL is to control visibility of the 64BIT symbol. Select it from CPU_V8 is detrimental, because subarches may want to select CPU_SUPPORTS_64BIT_KERNEL unconditionally and select CPU_V8 only if 64BIT was chosen. This currently leads to a recursive dependency, so break this up. No functional change just yet. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20220609055922.667016-11-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* | ARM: clps711x: Switch to devicetree usageAlexander Shiyan2022-06-101-0/+4
|/ | | | | | | | | | This is a complex patch that switches the ARM CLPS711X architecture to work with the device tree. Includes changes to board initialization and any architecture drivers used. Signed-off-by: Alexander Shiyan <eagle.alexander923@gmail.com> Link: https://lore.barebox.org/20220524060411.7754-1-eagle.alexander923@gmail.com Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: stm32mp: allow driver reuse for STM32 MCUsAhmad Fatoum2022-02-011-0/+7
| | | | | | | | | | | Most peripheral driver are usable for both STM32 MPUs and MCUs, but so far we they were only used for STM32MP1. In preparation for adding MCU support, introduce a new ARCH_STM32 selected by ARCH_STM32MP and migrate common drivers to it. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20220131075725.1873026-12-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* treewide: add SPDX-License-Identifier for Kbuild/KconfigAhmad Fatoum2022-01-051-0/+2
| | | | | | | | | | | | | | | To verify only Kconfig/Makefile is touched: git show --numstat --format=oneline HEAD | grep -v 'Kconfig\|Makefile' will print only arch/powerpc/Kbuild. To verify nothing unexpected is added: git show -U0 | grep '^-[^-]\|^+[^+]' | sort -u Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20220103120539.1730644-3-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: qemu: move board code to central locationAhmad Fatoum2021-12-071-0/+1
| | | | | | | | | | | The state/environment overlay applied on top of QEMU is applicable to other virt platforms as well, like RISC-V. In preparation for sharing code across architectures, add a new common/boards and move the board code there. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211125161042.3829996-6-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM64: qemu-virt: enable PCI supportAhmad Fatoum2021-11-221-0/+1
| | | | | | | | | | We now have a driver for the PCI controller on QEMU, so define HW_HAS_PCI. The barebox PCI implementation doesn't yet deal with 64-bit addresses, so use -M virt,highmem=off by default. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20211117130044.2437471-1-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* gpio: add driver for xilinx zynq and zynqmpThomas Haemmerle2021-10-141-0/+2
| | | | | | | | | | | Port the driver for the Xilinx Zynq/Zynq UltraScale+ MPSoC architecture to barebox (based on the Linux driver). Signed-off-by: Thomas Haemmerle <thomas.haemmerle@wolfvision.net> [apply format fixes, revise probe function, revise Kconfig] Signed-off-by: Michael Riesch <michael.riesch@wolfvision.net> Link: https://lore.barebox.org/20211013112247.3065-2-michael.riesch@wolfvision.net Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: Rockchip: Add rk3568 supportSascha Hauer2021-06-281-3/+0
| | | | | | | | | This adds basic support for the Rockchip rk3568 SoC. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Link: https://lore.barebox.org/20210615141641.31577-8-s.hauer@pengutronix.de Link: https://lore.barebox.org/20210621092802.27275-8-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: Add atf common supportSascha Hauer2021-06-241-0/+3
| | | | | | | | | | | | ARM trusted firmware has some common data structures passed to bl31. This patch imports the code supporting this taken from U-Boot. The defines and data structures are taken directly from U-Boot, the support code is heavily modified for the sake of readability. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Link: https://lore.barebox.org/20210615141641.31577-9-s.hauer@pengutronix.de Link: https://lore.barebox.org/20210621092802.27275-9-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: make ARM_USE_COMPRESSED_DTB available for other archesAhmad Fatoum2021-03-231-3/+2
| | | | | | | | | | Other PBL-enabled architecture can benefit from compressed dtbs as well. Move symbol and code to a comm place to be able to use it from RISC-V in a later commit. In order not to break out of tree boards at runtime, the old symbol name is maintained for ARM. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* images: make BOARD_ARM_GENERIC_DT available for other archesAhmad Fatoum2021-03-231-1/+1
| | | | | | | | | | | Other architectures would benefit from the generic DT image too. Add a new arch-agnostic symbol that arches besides ARM can select. The new symbol itself should not have a prompt as the help text for each architecture likely differs (e.g. device tree handoff register). Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Merge branch 'for-next/bthreads'Sascha Hauer2021-03-231-0/+1
|\