From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by smtp.subspace.kernel.org (Postfix) with ESMTP id EDEC0224FA for ; Fri, 2 Jan 2026 00:41:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.140.110.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767314474; cv=none; b=bX5AFECJlHDeenD//FIRCzB0nBxROhQ7OW5BUHKUlH5UYSKlXFsygw+cnvMNuKnoFcyBJnJZVmu7A/Tw7ZT4h6YUhDmHdRDhZfTJMrh6Yz3Fme07daP4jTGHZ4Ybfr9ckD/0Kres9IZlpKXrxHPSwWcMuwOr+CJZzgVnwtqf1Ac= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767314474; c=relaxed/simple; bh=akOsmxaQyCuGQy1MaPn4yjWibzuz20Sd61dbWzrBchg=; h=Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=t5aZvuC8yZqf9DMlqxEPE/ii1Z3Ko9pFZNJjzcmqziqIV27avEiVsYSV/qe+4nxBgDpOf/b+E2XIx45sRd9B1Qc9aGxpqaWWXBVszsY1UdX/14JjvtKX08JQ5x6UxXM2kjDaszX1M1/m4VAV4m0yvOZpx9jv64CPg1KkSNxhGJg= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; arc=none smtp.client-ip=217.140.110.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id F10BE497; Thu, 1 Jan 2026 16:41:03 -0800 (PST) Received: from minigeek.lan (usa-sjc-mx-foss1.foss.arm.com [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 5FE433F694; Thu, 1 Jan 2026 16:41:09 -0800 (PST) Date: Fri, 2 Jan 2026 01:40:19 +0100 From: Andre Przywara To: Yixun Lan Cc: u-boot@lists.denx.de, linux-sunxi@lists.linux.dev, Jagan Teki , Tom Rini , Jernej Skrabec , Paul Kocialkowski , Samuel Holland Subject: Re: [PATCH v2 01/10] sunxi: sun60i: initial support for A733 SoC Message-ID: <20260102014019.36db66d4@minigeek.lan> In-Reply-To: <20251130-01-a733-soc-support-v2-1-18bdd4376fad@gentoo.org> References: <20251130-01-a733-soc-support-v2-0-18bdd4376fad@gentoo.org> <20251130-01-a733-soc-support-v2-1-18bdd4376fad@gentoo.org> Organization: Arm Ltd. X-Mailer: Claws Mail 4.2.0 (GTK 3.24.31; x86_64-slackware-linux-gnu) Precedence: bulk X-Mailing-List: linux-sunxi@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit On Sun, 30 Nov 2025 21:45:10 +0000 Yixun Lan wrote: Hi Yixun, thanks for updating this series, and sorry for the delay in the review. As for this patch: it should go to the end of the series, since it already introduces the possibility to select the new SoC, even though the rest of the code isn't ready yet. And I think we should drop the "select SUPPORT_SPL", since it's not really supported, without the DRAM code. If we rely on FEL to load U-Boot anyway, we can much simpler load TF-A and U-Boot proper directly, no need for any FIT image. And thanks for using the SUNXI_GEN_NCAT2 symbol, btw! One small thing below... > Add basic support for Allwinner A733 SoC. > > - Include some basic register definitions > - Introduce a new SUN60I A733 Kconfig option > - Ssetup RVBAR register properly according to docs > - Config max DDR size 16GB > - Config SRAM 0x62000 for TF-A > > Signed-off-by: Yixun Lan > > --- > Note, Address for TF-A can be altered to other value, for example, > moving it to the DDR address space. The only requirement is that > load and run address should be matched. > --- > arch/arm/mach-sunxi/Kconfig | 14 ++++++++++++++ > arch/arm/mach-sunxi/cpu_info.c | 2 ++ > include/configs/sun60i.h | 11 +++++++++++ > 3 files changed, 27 insertions(+) > > diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig > index e979ee4a2cc..e6b4ac3688b 100644 > --- a/arch/arm/mach-sunxi/Kconfig > +++ b/arch/arm/mach-sunxi/Kconfig > @@ -215,6 +215,7 @@ config SUNXI_SRAM_ADDRESS > hex > default 0x10000 if MACH_SUN9I || MACH_SUN50I || MACH_SUN50I_H5 > default 0x44000 if MACH_SUN55I_A523 > + default 0x47000 if MACH_SUN60I_A733 > default 0x20000 if SUN50I_GEN_H6 || SUNXI_GEN_NCAT2 > default 0x0 > ---help--- > @@ -228,6 +229,7 @@ config SUNXI_RVBAR_ADDRESS > depends on ARM64 > default 0x08100040 if MACH_SUN50I_A133 > default 0x08000040 if MACH_SUN55I_A523 > + default 0x08001004 if MACH_SUN60I_A733 > default 0x09010040 if SUN50I_GEN_H6 > default 0x017000a0 > ---help--- > @@ -257,6 +259,7 @@ config SUNXI_BL31_BASE > default 0x40000000 if MACH_SUN50I_H616 > default 0x00104000 if SUN50I_GEN_H6 > default 0x00054000 if MACH_SUN55I_A523 > + default 0x00062000 if MACH_SUN60I_A733 > default 0x0 > help > Address where BL31 (TF-A) is loaded, or zero if BL31 is not used. > @@ -339,6 +342,7 @@ config MACH_SUNXI_H3_H5 > config SUNXI_DRAM_MAX_SIZE > hex > default 0x100000000 if MACH_SUN50I_H616 || MACH_SUN50I_A133 || MACH_SUN55I_A523 > + default 0x400000000 if MACH_SUN60I_A733 > default 0xC0000000 if MACH_SUN50I || MACH_SUN50I_H5 || MACH_SUN50I_H6 > default 0x80000000 > > @@ -553,6 +557,14 @@ config MACH_SUN55I_A523 > select SPL_LOAD_FIT if SPL > imply OF_UPSTREAM > > +config MACH_SUN60I_A733 > + bool "sun60i (Allwinner A733)" > + select ARM64 > + select SUNXI_GEN_NCAT2 > + select FIT > + select SPL_LOAD_FIT if SPL > + select SUPPORT_SPL > + > endchoice > > # The sun8i SoCs share a lot, this helps to avoid a lot of "if A23 || A33" > @@ -870,6 +882,7 @@ config SYS_CONFIG_NAME > default "sun50i" if MACH_SUN50I_H616 > default "sun50i" if MACH_SUN50I_A133 > default "sun55i" if MACH_SUN55I_A523 > + default "sun60i" if MACH_SUN60I_A733 > > config SYS_BOARD > default "sunxi" > @@ -1186,6 +1199,7 @@ config SPL_STACK_R_ADDR > default 0x4fe00000 if MACH_SUN50I > default 0x4fe00000 if SUN50I_GEN_H6 > default 0x4fe00000 if SUNXI_GEN_NCAT2 > + default 0x4fe00000 if MACH_SUN60I_A733 This is not needed, since the same address is already selected by NCAT2. Cheers, Andre > config SPL_SPI_SUNXI > bool "Support for SPI Flash on Allwinner SoCs in SPL" > diff --git a/arch/arm/mach-sunxi/cpu_info.c b/arch/arm/mach-sunxi/cpu_info.c index c3a51d9956e..f0b33bb9097 100644 > --- a/arch/arm/mach-sunxi/cpu_info.c > +++ b/arch/arm/mach-sunxi/cpu_info.c > @@ -108,6 +108,8 @@ int print_cpuinfo(void) > puts("CPU: Allwinner A133 (SUN50I)\n"); > #elif defined CONFIG_MACH_SUN55I_A523 > puts("CPU: Allwinner A523 (SUN55I)\n"); > +#elif defined CONFIG_MACH_SUN60I_A733 > + puts("CPU: Allwinner A733 (SUN60I)\n"); > #else > #warning Please update cpu_info.c with correct CPU information > puts("CPU: SUNXI Family\n"); > diff --git a/include/configs/sun60i.h b/include/configs/sun60i.h > new file mode 100644 > index 00000000000..70649366c1c > --- /dev/null > +++ b/include/configs/sun60i.h > @@ -0,0 +1,11 @@ > +/* SPDX-License-Identifier: GPL-2.0+ */ > +/* > + * Placeholder wrapper to allow addressing Allwinner devices with Cortex-A55 > + * cores separately. Please do not add anything in here. > + */ > +#ifndef __CONFIG_H > +#define __CONFIG_H > + > +#include > + > +#endif /* __CONFIG_H */ >