[PATCH v2 5/6] ARM: sunxi: Introduce mach-sunxi
Ahmad Fatoum
a.fatoum at pengutronix.de
Tue Jan 14 00:38:59 PST 2025
Hi,
On 07.01.25 15:37, Jules Maselbas wrote:
> Add some boilerplate, Makefiles, Kbuild.
> A generic barebox-dt-2nd.img image can be build for A64 SoC using
> the sunxi_v8_defconfig.
>
> This image can be booted from u-boot and has been tested on Pine64+,
> it should work on other A64 SoC such as the pinephone, and other Pine64
> boards, it might also work on H6 SoC which uses the same sd/mmc controler.
>
> Signed-off-by: Jules Maselbas <jmaselbas at zdiv.net>
After addition to MULTIARCH (really MULTIPLATFORM):
Reviewed-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
Cheers,
Ahmad
> ---
> v1->v2:
> - removed RELOCATABLE and HAVE_PBL_MULTI_IMAGES from Kconfig (Ahmad)
> - used __dummy__.o insead of an empty file (Ahmad)
> - removed include/mach/sunxi/barebox-arm.h (Ahmad)
>
> arch/arm/Kconfig | 12 ++++++++++++
> arch/arm/Makefile | 1 +
> arch/arm/configs/sunxi_v8_defconfig | 12 ++++++++++++
> arch/arm/mach-sunxi/Kconfig | 12 ++++++++++++
> arch/arm/mach-sunxi/Makefile | 1 +
> 5 files changed, 38 insertions(+)
> create mode 100644 arch/arm/configs/sunxi_v8_defconfig
> create mode 100644 arch/arm/mach-sunxi/Kconfig
> create mode 100644 arch/arm/mach-sunxi/Makefile
>
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 0251f2dcef..83adfaddf7 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -109,6 +109,17 @@ config ARCH_SOCFPGA
> select CPU_V7
> select COMMON_CLK
>
> +config ARCH_SUNXI
> + bool "Allwinner SoCs"
> + depends on 64BIT
> + select CLKDEV_LOOKUP
> + select COMMON_CLK
> + select COMMON_CLK_OF_PROVIDER
> + select GPIOLIB
> + select OFDEVICE
> + select OFTREE
> + select PINCTRL
> +
> config ARCH_TEGRA
> bool "NVIDIA Tegra"
> depends on 32BIT
> @@ -256,6 +267,7 @@ source "arch/arm/mach-omap/Kconfig"
> source "arch/arm/mach-pxa/Kconfig"
> source "arch/arm/mach-rockchip/Kconfig"
> source "arch/arm/mach-socfpga/Kconfig"
> +source "arch/arm/mach-sunxi/Kconfig"
> source "arch/arm/mach-stm32mp/Kconfig"
> source "arch/arm/mach-versatile/Kconfig"
> source "arch/arm/mach-vexpress/Kconfig"
> diff --git a/arch/arm/Makefile b/arch/arm/Makefile
> index 270f5dfdc1..e4041cf715 100644
> --- a/arch/arm/Makefile
> +++ b/arch/arm/Makefile
> @@ -102,6 +102,7 @@ machine-$(CONFIG_ARCH_ROCKCHIP) += rockchip
> machine-$(CONFIG_ARCH_SAMSUNG) += samsung
> machine-$(CONFIG_ARCH_SOCFPGA) += socfpga
> machine-$(CONFIG_ARCH_STM32MP) += stm32mp
> +machine-$(CONFIG_ARCH_SUNXI) += sunxi
> machine-$(CONFIG_ARCH_VERSATILE) += versatile
> machine-$(CONFIG_ARCH_VEXPRESS) += vexpress
> machine-$(CONFIG_ARCH_TEGRA) += tegra
> diff --git a/arch/arm/configs/sunxi_v8_defconfig b/arch/arm/configs/sunxi_v8_defconfig
> new file mode 100644
> index 0000000000..ebadd1c950
> --- /dev/null
> +++ b/arch/arm/configs/sunxi_v8_defconfig
> @@ -0,0 +1,12 @@
> +CONFIG_ARCH_SUNXI=y
> +CONFIG_64BIT=y
> +CONFIG_BOARD_ARM_GENERIC_DT=y
> +CONFIG_ARCH_SUN50I_A64=y
> +CONFIG_DRIVER_SERIAL_NS16550=y
> +CONFIG_MCI=y
> +CONFIG_MCI_SUNXI_SMHC=y
> +CONFIG_CMD_DMESG=y
> +CONFIG_MCI_STARTUP=y
> +CONFIG_FS_FAT=y
> +CONFIG_IMAGE_COMPRESSION_XZKERN=y
> +CONFIG_MMU=y
> diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig
> new file mode 100644
> index 0000000000..e8d23772c2
> --- /dev/null
> +++ b/arch/arm/mach-sunxi/Kconfig
> @@ -0,0 +1,12 @@
> +if ARCH_SUNXI
> +
> +config ARCH_SUN50I_A64
> + bool "Allwinner A64 SoC"
> + select CPU_V8
> + select CPU_SUPPORTS_64BIT_KERNEL
> + select CLOCKSOURCE_ARM_ARCHITECTED_TIMER
> + select PINCTRL_SUN50I_A64
> + help
> + Allwinner A64 (sun50iw1) SoC
> +
> +endif
> diff --git a/arch/arm/mach-sunxi/Makefile b/arch/arm/mach-sunxi/Makefile
> new file mode 100644
> index 0000000000..16a218658a
> --- /dev/null
> +++ b/arch/arm/mach-sunxi/Makefile
> @@ -0,0 +1 @@
> +obj- := __dummy__.o
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the barebox
mailing list