All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures
@ 2022-11-01  5:08 Samuel Holland
  2022-11-01  5:08 ` [PATCH 01/22] sunxi: Fix default-enablement of USB host drivers Samuel Holland
                   ` (22 more replies)
  0 siblings, 23 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

sunxi is getting a new RISC-V platform, D1. We want to share as much of
the existing configuration as possible, to provide a familiar
environment, DRAM layout, partition layout, etc.

Because U-Boot includes all architecture Kconfig files at once, we must
use a symbol outside of both CONFIG_ARM and CONFIG_RISCV to contain
shared Kconfig options. I chose BOARD_SUNXI, corresponding to the file
location and somewhat following the BOARD_SPECIFIC_OPTIONS pattern.

I did a buildman run on this series. The only net option changes are the
expected ones:
 - Host-side USB gets enabled on several boards by the first patch
   (emlid_neutis_n5_devboard orangepi_zero2 pinephone pinetab tanix_tx6
   x96_mate teres_i)
 - CONFIG_BOARD_SUNXI gets added everywhere
 - CONFIG_SYS_I2C_MVTWSI gets enabled by the corresponding patch

Andre, please feel free to take any subset of these; they don't all have
to go in at once. And I'm open to suggestions about what instances of
ARCH_SUNXI should (not) be converted. Some of them are open to opinion.

I left alone the options in arch/arm/mach-sunxi/Kconfig that are covered
by other series (MMC CD/USB PHY/power pins, AXP GPIO).

After this series, the Kconfig changes needed for D1 support are quite
small, something like this commit:
https://github.com/smaeul/u-boot/commit/c12cf6c5d72f5327eff793518229ddbd41dcf729.patch

Adding SUNXI_MINIMUM_DRAM_MB certainly made things nicer. There are a
few options that probably still need some adjustment to respect it.


Samuel Holland (22):
  sunxi: Fix default-enablement of USB host drivers
  sunxi: Remove unnecessary Kconfig selections
  sunxi: Add missing dependencies to Kconfig selections
  sunxi: Hide image type selection if SPL is disabled
  sunxi: Share the board Kconfig across architectures
  sunxi: Move most Kconfig selections to the board Kconfig
  sunxi: Globally enable SUPPORT_SPL
  sunxi: Downgrade driver selections to implications
  sunxi: Enable the I2C driver by default
  sunxi: Move default values to the board Kconfig
  sunxi: Hide the SUNXI_MINIMUM_DRAM_MB symbol
  sunxi: Clean up the SPL_STACK_R_ADDR defaults
  sunxi: Move PRE_CON_BUF_ADDR to the board Kconfig
  sunxi: Move SPL_BSS_START_ADDR to the board Kconfig
  sunxi: Move SPL_TEXT_BASE to the board Kconfig
  sunxi: Move SYS_LOAD_ADDR to the board Kconfig
  sunxi: Move TEXT_BASE to the board Kconfig
  sunxi: Move most board options to the board Kconfig
  env: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI
  drivers: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI
  disk: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI
  spl: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI

 Kconfig                       |   3 -
 arch/Kconfig                  |   1 +
 arch/arm/Kconfig              |  48 +-------
 arch/arm/mach-sunxi/Kconfig   | 154 -----------------------
 board/sunxi/Kconfig           | 224 ++++++++++++++++++++++++++++++++++
 boot/Kconfig                  |   4 -
 common/Kconfig                |   2 -
 common/spl/Kconfig            |  18 +--
 disk/Kconfig                  |   6 +-
 drivers/clk/sunxi/Kconfig     |   2 +-
 drivers/fastboot/Kconfig      |  13 +-
 drivers/gpio/Kconfig          |   2 +-
 drivers/mmc/Kconfig           |   2 +-
 drivers/net/phy/Kconfig       |   4 +-
 drivers/phy/allwinner/Kconfig |   2 +-
 drivers/pinctrl/sunxi/Kconfig |   2 +-
 drivers/reset/Kconfig         |   2 +-
 drivers/spi/Kconfig           |   2 +-
 drivers/usb/Kconfig           |   2 +-
 drivers/usb/gadget/Kconfig    |   8 +-
 drivers/usb/host/Kconfig      |   2 -
 drivers/usb/musb-new/Kconfig  |   2 +-
 drivers/video/Kconfig         |   2 +-
 drivers/watchdog/Kconfig      |   4 +-
 env/Kconfig                   |  12 +-
 scripts/Makefile.spl          |   2 +-
 26 files changed, 267 insertions(+), 258 deletions(-)

-- 
2.37.3


^ permalink raw reply	[flat|nested] 29+ messages in thread

* [PATCH 01/22] sunxi: Fix default-enablement of USB host drivers
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-11  1:09   ` Andre Przywara
  2022-11-01  5:08 ` [PATCH 02/22] sunxi: Remove unnecessary Kconfig selections Samuel Holland
                   ` (21 subsequent siblings)
  22 siblings, 1 reply; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

We tried to enable USB_EHCI_GENERIC and USB_OHCI_GENERIC by default.
This did not work because those symbols depend on USB_EHCI_HCD and
USB_OHCI_HCD, which were not enabled. Fix this by implying all four.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 arch/arm/Kconfig         | 4 ++++
 drivers/usb/host/Kconfig | 2 --
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 710f171f87..d3a1f03b36 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1185,7 +1185,11 @@ config ARCH_SUNXI
 	imply SYSRESET
 	imply SYSRESET_WATCHDOG
 	imply SYSRESET_WATCHDOG_AUTO
+	imply USB_EHCI_GENERIC
+	imply USB_EHCI_HCD
 	imply USB_GADGET
+	imply USB_OHCI_GENERIC
+	imply USB_OHCI_HCD
 	imply WDT
 
 config ARCH_U8500
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index 1aabe062fb..a4d62bc9e8 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -280,7 +280,6 @@ config USB_EHCI_ZYNQ
 config USB_EHCI_GENERIC
 	bool "Support for generic EHCI USB controller"
 	depends on DM_USB
-	default ARCH_SUNXI
 	---help---
 	  Enables support for generic EHCI controller.
 
@@ -342,7 +341,6 @@ config USB_OHCI_PCI
 
 config USB_OHCI_GENERIC
 	bool "Support for generic OHCI USB controller"
-	default ARCH_SUNXI
 	---help---
 	  Enables support for generic OHCI controller.
 
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 02/22] sunxi: Remove unnecessary Kconfig selections
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
  2022-11-01  5:08 ` [PATCH 01/22] sunxi: Fix default-enablement of USB host drivers Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-11  1:09   ` Andre Przywara
  2022-11-01  5:08 ` [PATCH 03/22] sunxi: Add missing dependencies to " Samuel Holland
                   ` (20 subsequent siblings)
  22 siblings, 1 reply; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

Two of these selections are redundant and have no effect:
 - DM_KEYBOARD is selected by USB_KEYBOARD
 - DM_MMC is selected by MMC

This selection has no effect by default and is unnecessarily strong:
 - USB_STORAGE is implied by DISTRO_DEFAULTS

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 arch/arm/Kconfig | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index d3a1f03b36..939f76867e 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1144,8 +1144,6 @@ config ARCH_SUNXI
 	select DM_I2C if I2C
 	select DM_SPI if SPI
 	select DM_SPI_FLASH if SPI
-	select DM_KEYBOARD
-	select DM_MMC if MMC
 	select DM_SCSI if SCSI
 	select DM_SERIAL
 	select GPIO_EXTRA_HEADER
@@ -1163,7 +1161,6 @@ config ARCH_SUNXI
 	select SYS_THUMB_BUILD if !ARM64
 	select USB if DISTRO_DEFAULTS
 	select USB_KEYBOARD if DISTRO_DEFAULTS && USB_HOST
-	select USB_STORAGE if DISTRO_DEFAULTS && USB_HOST
 	select SPL_USE_TINY_PRINTF
 	select USE_PREBOOT
 	select SYS_RELOC_GD_ENV_ADDR
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 03/22] sunxi: Add missing dependencies to Kconfig selections
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
  2022-11-01  5:08 ` [PATCH 01/22] sunxi: Fix default-enablement of USB host drivers Samuel Holland
  2022-11-01  5:08 ` [PATCH 02/22] sunxi: Remove unnecessary Kconfig selections Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-11  1:11   ` Andre Przywara
  2022-11-01  5:08 ` [PATCH 04/22] sunxi: Hide image type selection if SPL is disabled Samuel Holland
                   ` (19 subsequent siblings)
  22 siblings, 1 reply; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

Some of the selected symbols have a user-visible dependency. Make the
selections conditional on that dependency to avoid creating invalid
configurations.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 arch/arm/Kconfig | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 939f76867e..4e5daa9e7f 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1134,30 +1134,30 @@ config ARCH_SOCFPGA
 config ARCH_SUNXI
 	bool "Support sunxi (Allwinner) SoCs"
 	select BINMAN
-	select CMD_GPIO
+	select CMD_GPIO if GPIO
 	select CMD_MMC if MMC
 	select CMD_USB if DISTRO_DEFAULTS && USB_HOST
 	select CLK
 	select DM
-	select DM_ETH
-	select DM_GPIO
+	select DM_ETH if NET
+	select DM_GPIO if GPIO
 	select DM_I2C if I2C
+	select DM_SCSI if BLK && SCSI
+	select DM_SERIAL if SERIAL
 	select DM_SPI if SPI
 	select DM_SPI_FLASH if SPI
-	select DM_SCSI if SCSI
-	select DM_SERIAL
 	select GPIO_EXTRA_HEADER
 	select OF_BOARD_SETUP
 	select OF_CONTROL
 	select OF_SEPARATE
 	select PINCTRL
-	select SPECIFY_CONSOLE_INDEX
+	select SPECIFY_CONSOLE_INDEX if SERIAL
 	select SPL_SEPARATE_BSS if SPL
 	select SPL_STACK_R if SPL
 	select SPL_SYS_MALLOC_SIMPLE if SPL
 	select SPL_SYS_THUMB_BUILD if !ARM64
-	select SUNXI_GPIO
-	select SYS_NS16550
+	select SUNXI_GPIO if GPIO
+	select SYS_NS16550 if SERIAL
 	select SYS_THUMB_BUILD if !ARM64
 	select USB if DISTRO_DEFAULTS
 	select USB_KEYBOARD if DISTRO_DEFAULTS && USB_HOST
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 04/22] sunxi: Hide image type selection if SPL is disabled
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (2 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 03/22] sunxi: Add missing dependencies to " Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-11  1:12   ` Andre Przywara
  2022-11-01  5:08 ` [PATCH 05/22] sunxi: Share the board Kconfig across architectures Samuel Holland
                   ` (18 subsequent siblings)
  22 siblings, 1 reply; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This choice is meaningless when SPL is disabled. Hide it to avoid any
possible confusion.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 board/sunxi/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index 084a8b0c6c..42f61df5c5 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -1,5 +1,6 @@
 choice
 	prompt "SPL Image Type"
+	depends on SPL
 	default SPL_IMAGE_TYPE_SUNXI_EGON
 
 config SPL_IMAGE_TYPE_SUNXI_EGON
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 05/22] sunxi: Share the board Kconfig across architectures
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (3 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 04/22] sunxi: Hide image type selection if SPL is disabled Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 06/22] sunxi: Move most Kconfig selections to the board Kconfig Samuel Holland
                   ` (17 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

With the introduction of the Allwinner D1, the sunxi board family now
spans multiple architectures (ARM and RISC-V). Since ARCH_SUNXI depends
on ARM, it cannot be used to gate architecture-independent options.
Specifically, this means the board Kconfig file cannot be sourced from
inside the "if ARCH_SUNXI" block.

Introduce a new BOARD_SUNXI symbol that can be selected by both
ARCH_SUNXI now and the new RISC-V SoC symbols when they are added, and
use it to gate the architecture-independent board options.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 arch/Kconfig                |  1 +
 arch/arm/Kconfig            |  1 +
 arch/arm/mach-sunxi/Kconfig |  2 --
 board/sunxi/Kconfig         | 11 +++++++++++
 4 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/arch/Kconfig b/arch/Kconfig
index e3a456a98d..a77192096a 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -458,6 +458,7 @@ source "arch/Kconfig.nxp"
 endif
 
 source "board/keymile/Kconfig"
+source "board/sunxi/Kconfig"
 
 if MIPS || MICROBLAZE
 
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4e5daa9e7f..f2852783d4 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1134,6 +1134,7 @@ config ARCH_SOCFPGA
 config ARCH_SUNXI
 	bool "Support sunxi (Allwinner) SoCs"
 	select BINMAN
+	select BOARD_SUNXI
 	select CMD_GPIO if GPIO
 	select CMD_MMC if MMC
 	select CMD_USB if DISTRO_DEFAULTS && USB_HOST
diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig
index dbe6005daa..a03e700a0b 100644
--- a/arch/arm/mach-sunxi/Kconfig
+++ b/arch/arm/mach-sunxi/Kconfig
@@ -1046,8 +1046,6 @@ config BLUETOOTH_DT_DEVICE_FIXUP
 	  The used address is "bdaddr" if set, and "ethaddr" with the LSB
 	  flipped elsewise.
 
-source "board/sunxi/Kconfig"
-
 endif
 
 config CHIP_DIP_SCAN
diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index 42f61df5c5..9010631b16 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -1,3 +1,10 @@
+config BOARD_SUNXI
+	bool
+
+if BOARD_SUNXI
+
+menu "sunxi board options"
+
 choice
 	prompt "SPL Image Type"
 	depends on SPL
@@ -23,3 +30,7 @@ config SPL_IMAGE_TYPE
 	string
 	default "sunxi_egon" if SPL_IMAGE_TYPE_SUNXI_EGON
 	default "sunxi_toc0" if SPL_IMAGE_TYPE_SUNXI_TOC0
+
+endmenu
+
+endif
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 06/22] sunxi: Move most Kconfig selections to the board Kconfig
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (4 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 05/22] sunxi: Share the board Kconfig across architectures Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 07/22] sunxi: Globally enable SUPPORT_SPL Samuel Holland
                   ` (16 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

To maintain consistent behavior across architectures, most of the
options selected by ARCH_SUNXI should be selected for the D1 SoC as
well. To accomplish this, select them from BOARD_SUNXI instead.

No functional change here. Lines are only moved and alphabetized.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 arch/arm/Kconfig    | 46 ---------------------------------------------
 board/sunxi/Kconfig | 46 +++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 46 insertions(+), 46 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index f2852783d4..2c32b419a8 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1133,62 +1133,16 @@ config ARCH_SOCFPGA
 
 config ARCH_SUNXI
 	bool "Support sunxi (Allwinner) SoCs"
-	select BINMAN
 	select BOARD_SUNXI
-	select CMD_GPIO if GPIO
-	select CMD_MMC if MMC
-	select CMD_USB if DISTRO_DEFAULTS && USB_HOST
-	select CLK
-	select DM
-	select DM_ETH if NET
-	select DM_GPIO if GPIO
-	select DM_I2C if I2C
-	select DM_SCSI if BLK && SCSI
-	select DM_SERIAL if SERIAL
-	select DM_SPI if SPI
-	select DM_SPI_FLASH if SPI
 	select GPIO_EXTRA_HEADER
-	select OF_BOARD_SETUP
 	select OF_CONTROL
 	select OF_SEPARATE
-	select PINCTRL
 	select SPECIFY_CONSOLE_INDEX if SERIAL
-	select SPL_SEPARATE_BSS if SPL
 	select SPL_STACK_R if SPL
 	select SPL_SYS_MALLOC_SIMPLE if SPL
 	select SPL_SYS_THUMB_BUILD if !ARM64
-	select SUNXI_GPIO if GPIO
-	select SYS_NS16550 if SERIAL
 	select SYS_THUMB_BUILD if !ARM64
-	select USB if DISTRO_DEFAULTS
-	select USB_KEYBOARD if DISTRO_DEFAULTS && USB_HOST
 	select SPL_USE_TINY_PRINTF
-	select USE_PREBOOT
-	select SYS_RELOC_GD_ENV_ADDR
-	imply BOARD_LATE_INIT
-	imply CMD_DM
-	imply CMD_GPT
-	imply CMD_UBI if MTD_RAW_NAND
-	imply DISTRO_DEFAULTS
-	imply FAT_WRITE
-	imply FIT
-	imply OF_LIBFDT_OVERLAY
-	imply PRE_CONSOLE_BUFFER
-	imply SPL_GPIO
-	imply SPL_LIBCOMMON_SUPPORT
-	imply SPL_LIBGENERIC_SUPPORT
-	imply SPL_MMC if MMC
-	imply SPL_POWER
-	imply SPL_SERIAL
-	imply SYSRESET
-	imply SYSRESET_WATCHDOG
-	imply SYSRESET_WATCHDOG_AUTO
-	imply USB_EHCI_GENERIC
-	imply USB_EHCI_HCD
-	imply USB_GADGET
-	imply USB_OHCI_GENERIC
-	imply USB_OHCI_HCD
-	imply WDT
 
 config ARCH_U8500
 	bool "ST-Ericsson U8500 Series"
diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index 9010631b16..1d0700fe5f 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -1,5 +1,51 @@
 config BOARD_SUNXI
 	bool
+	select BINMAN
+	select CLK
+	select CMD_GPIO if GPIO
+	select CMD_MMC if MMC
+	select CMD_USB if DISTRO_DEFAULTS && USB_HOST
+	select DM
+	select DM_ETH if NET
+	select DM_GPIO if GPIO
+	select DM_I2C if I2C
+	select DM_SCSI if BLK && SCSI
+	select DM_SERIAL if SERIAL
+	select DM_SPI if SPI
+	select DM_SPI_FLASH if SPI
+	select OF_BOARD_SETUP
+	select PINCTRL
+	select SPL_SEPARATE_BSS if SPL
+	select SUNXI_GPIO if GPIO
+	select SYS_NS16550 if SERIAL
+	select SYS_RELOC_GD_ENV_ADDR
+	select USB if DISTRO_DEFAULTS
+	select USB_KEYBOARD if DISTRO_DEFAULTS && USB_HOST
+	select USE_PREBOOT
+	imply BOARD_LATE_INIT
+	imply CMD_DM
+	imply CMD_GPT
+	imply CMD_UBI if MTD_RAW_NAND
+	imply DISTRO_DEFAULTS
+	imply FAT_WRITE
+	imply FIT
+	imply OF_LIBFDT_OVERLAY
+	imply PRE_CONSOLE_BUFFER
+	imply SPL_GPIO
+	imply SPL_LIBCOMMON_SUPPORT
+	imply SPL_LIBGENERIC_SUPPORT
+	imply SPL_MMC if MMC
+	imply SPL_POWER
+	imply SPL_SERIAL
+	imply SYSRESET
+	imply SYSRESET_WATCHDOG
+	imply SYSRESET_WATCHDOG_AUTO
+	imply USB_EHCI_GENERIC
+	imply USB_EHCI_HCD
+	imply USB_GADGET
+	imply USB_OHCI_GENERIC
+	imply USB_OHCI_HCD
+	imply WDT
 
 if BOARD_SUNXI
 
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 07/22] sunxi: Globally enable SUPPORT_SPL
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (5 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 06/22] sunxi: Move most Kconfig selections to the board Kconfig Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 08/22] sunxi: Downgrade driver selections to implications Samuel Holland
                   ` (15 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This was already supported by every machine type. It is unlikely that
any new SoC support will be added without SPL support.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 arch/arm/mach-sunxi/Kconfig | 14 --------------
 board/sunxi/Kconfig         |  2 ++
 2 files changed, 2 insertions(+), 14 deletions(-)

diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig
index a03e700a0b..73097e5a40 100644
--- a/arch/arm/mach-sunxi/Kconfig
+++ b/arch/arm/mach-sunxi/Kconfig
@@ -133,7 +133,6 @@ config SUN50I_GEN_H6
 	select FIT
 	select SPL_LOAD_FIT
 	select MMC_SUNXI_HAS_NEW_MODE
-	select SUPPORT_SPL
 	---help---
 	Select this for sunxi SoCs which have H6 like peripherals, clocks
 	and memory map.
@@ -167,7 +166,6 @@ config MACH_SUNXI_H3_H5
 	select SUNXI_DRAM_DW
 	select SUNXI_DRAM_DW_32BIT
 	select SUNXI_GEN_SUN6I
-	select SUPPORT_SPL
 
 # TODO: try out A80's 8GiB DRAM space
 config SUNXI_DRAM_MAX_SIZE
@@ -184,7 +182,6 @@ config MACH_SUNIV
 	bool "suniv (Allwinner F1C100s/F1C200s/F1C600/R6)"
 	select CPU_ARM926EJS
 	select SUNXI_GEN_SUN6I
-	select SUPPORT_SPL
 	select SKIP_LOWLEVEL_INIT_ONLY
 	select SPL_SKIP_LOWLEVEL_INIT_ONLY
 
@@ -194,7 +191,6 @@ config MACH_SUN4I
 	select PHY_SUN4I_USB
 	select DRAM_SUN4I
 	select SUNXI_GEN_SUN4I
-	select SUPPORT_SPL
 	imply SPL_SYS_I2C_LEGACY
 	imply SYS_I2C_LEGACY
 
@@ -204,7 +200,6 @@ config MACH_SUN5I
 	select DRAM_SUN4I
 	select PHY_SUN4I_USB
 	select SUNXI_GEN_SUN4I
-	select SUPPORT_SPL
 	imply SPL_SYS_I2C_LEGACY
 	imply SYS_I2C_LEGACY
 
@@ -220,7 +215,6 @@ config MACH_SUN6I
 	select SPL_I2C
 	select SUN6I_PRCM
 	select SUNXI_GEN_SUN6I
-	select SUPPORT_SPL
 	select SYS_I2C_SUN6I_P2WI
 	select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
 
@@ -234,7 +228,6 @@ config MACH_SUN7I
 	select DRAM_SUN4I
 	select PHY_SUN4I_USB
 	select SUNXI_GEN_SUN4I
-	select SUPPORT_SPL
 	select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
 	imply SPL_SYS_I2C_LEGACY
 	imply SYS_I2C_LEGACY
@@ -249,7 +242,6 @@ config MACH_SUN8I_A23
 	select PHY_SUN4I_USB
 	select SPL_I2C
 	select SUNXI_GEN_SUN6I
-	select SUPPORT_SPL
 	select SYS_I2C_SUN8I_RSB
 	select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
 
@@ -263,7 +255,6 @@ config MACH_SUN8I_A33
 	select PHY_SUN4I_USB
 	select SPL_I2C
 	select SUNXI_GEN_SUN6I
-	select SUPPORT_SPL
 	select SYS_I2C_SUN8I_RSB
 	select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
 
@@ -276,7 +267,6 @@ config MACH_SUN8I_A83T
 	select SUNXI_GEN_SUN6I
 	select MMC_SUNXI_HAS_NEW_MODE
 	select MMC_SUNXI_HAS_MODE_SWITCH
-	select SUPPORT_SPL
 	select SYS_I2C_SUN8I_RSB
 
 config MACH_SUN8I_H3
@@ -296,7 +286,6 @@ config MACH_SUN8I_R40
 	select ARCH_SUPPORT_PSCI
 	select SUNXI_GEN_SUN6I
 	select MMC_SUNXI_HAS_NEW_MODE
-	select SUPPORT_SPL
 	select SUNXI_DRAM_DW
 	select SUNXI_DRAM_DW_32BIT
 	select PHY_SUN4I_USB
@@ -311,7 +300,6 @@ config MACH_SUN8I_V3S
 	select SUNXI_GEN_SUN6I
 	select SUNXI_DRAM_DW
 	select SUNXI_DRAM_DW_16BIT
-	select SUPPORT_SPL
 	select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
 
 config MACH_SUN9I
@@ -322,7 +310,6 @@ config MACH_SUN9I
 	select SPL_I2C
 	select SUN6I_PRCM
 	select SUNXI_GEN_SUN6I
-	select SUPPORT_SPL
 
 config MACH_SUN50I
 	bool "sun50i (Allwinner A64)"
@@ -332,7 +319,6 @@ config MACH_SUN50I
 	select SUNXI_DE2
 	select SUNXI_GEN_SUN6I
 	select MMC_SUNXI_HAS_NEW_MODE
-	select SUPPORT_SPL
 	select SUNXI_DRAM_DW
 	select SUNXI_DRAM_DW_32BIT
 	select FIT
diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index 1d0700fe5f..056ccb6f74 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -18,6 +18,7 @@ config BOARD_SUNXI
 	select SPL_SEPARATE_BSS if SPL
 	select SUNXI_GPIO if GPIO
 	select SYS_NS16550 if SERIAL
+	select SUPPORT_SPL
 	select SYS_RELOC_GD_ENV_ADDR
 	select USB if DISTRO_DEFAULTS
 	select USB_KEYBOARD if DISTRO_DEFAULTS && USB_HOST
@@ -31,6 +32,7 @@ config BOARD_SUNXI
 	imply FIT
 	imply OF_LIBFDT_OVERLAY
 	imply PRE_CONSOLE_BUFFER
+	imply SPL
 	imply SPL_GPIO
 	imply SPL_LIBCOMMON_SUPPORT
 	imply SPL_LIBGENERIC_SUPPORT
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 08/22] sunxi: Downgrade driver selections to implications
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (6 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 07/22] sunxi: Globally enable SUPPORT_SPL Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 09/22] sunxi: Enable the I2C driver by default Samuel Holland
                   ` (14 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

While not especially likely, it is plausible that someone wants to build
U-Boot without GPIO or UART support. Don't force building these drivers.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 board/sunxi/Kconfig | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index 056ccb6f74..b301ba998e 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -16,8 +16,6 @@ config BOARD_SUNXI
 	select OF_BOARD_SETUP
 	select PINCTRL
 	select SPL_SEPARATE_BSS if SPL
-	select SUNXI_GPIO if GPIO
-	select SYS_NS16550 if SERIAL
 	select SUPPORT_SPL
 	select SYS_RELOC_GD_ENV_ADDR
 	select USB if DISTRO_DEFAULTS
@@ -39,6 +37,8 @@ config BOARD_SUNXI
 	imply SPL_MMC if MMC
 	imply SPL_POWER
 	imply SPL_SERIAL
+	imply SUNXI_GPIO
+	imply SYS_NS16550
 	imply SYSRESET
 	imply SYSRESET_WATCHDOG
 	imply SYSRESET_WATCHDOG_AUTO
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 09/22] sunxi: Enable the I2C driver by default
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (7 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 08/22] sunxi: Downgrade driver selections to implications Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 10/22] sunxi: Move default values to the board Kconfig Samuel Holland
                   ` (13 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This is used by quite a large number of boards, for PMIC/regulator or
LCD panel control.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 board/sunxi/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index b301ba998e..809cd17f54 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -38,6 +38,7 @@ config BOARD_SUNXI
 	imply SPL_POWER
 	imply SPL_SERIAL
 	imply SUNXI_GPIO
+	imply SYS_I2C_MVTWSI
 	imply SYS_NS16550
 	imply SYSRESET
 	imply SYSRESET_WATCHDOG
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 10/22] sunxi: Move default values to the board Kconfig
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (8 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 09/22] sunxi: Enable the I2C driver by default Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 11/22] sunxi: Hide the SUNXI_MINIMUM_DRAM_MB symbol Samuel Holland
                   ` (12 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This keeps all of the defaults for sunxi platforms in one place. Most of
these only depend on architecture-independent features of the SoC (clock
tree or SRAM layout) anyway.

No functional change; just some minor help text cleanup.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 arch/arm/mach-sunxi/Kconfig | 67 ------------------------------------
 board/sunxi/Kconfig         | 68 +++++++++++++++++++++++++++++++++++++
 2 files changed, 68 insertions(+), 67 deletions(-)

diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig
index 73097e5a40..24840f6d7e 100644
--- a/arch/arm/mach-sunxi/Kconfig
+++ b/arch/arm/mach-sunxi/Kconfig
@@ -1,8 +1,5 @@
 if ARCH_SUNXI
 
-config IDENT_STRING
-	default " Allwinner Technology"
-
 config DRAM_SUN4I
 	bool
 	help
@@ -99,17 +96,6 @@ config AXP_PMIC_BUS
 	  Select this PMIC bus access helpers for Sunxi platform PRCM or other
 	  AXP family PMIC devices.
 
-config SUNXI_SRAM_ADDRESS
-	hex
-	default 0x10000 if MACH_SUN9I || MACH_SUN50I || MACH_SUN50I_H5
-	default 0x20000 if SUN50I_GEN_H6
-	default 0x0
-	---help---
-	Older Allwinner SoCs have their mask boot ROM mapped just below 4GB,
-	with the first SRAM region being located at address 0.
-	Some newer SoCs map the boot ROM at address 0 instead and move the
-	SRAM to a different address.
-
 config SUNXI_A64_TIMER_ERRATUM
 	bool
 
@@ -573,48 +559,6 @@ config DRAM_ODT_CORRECTION
 	then the correction is negative. Usually the value for this is 0.
 endif
 
-config SYS_CLK_FREQ
-	default 408000000 if MACH_SUNIV
-	default 1008000000 if MACH_SUN4I
-	default 1008000000 if MACH_SUN5I
-	default 1008000000 if MACH_SUN6I
-	default 912000000 if MACH_SUN7I
-	default 816000000 if MACH_SUN50I || MACH_SUN50I_H5
-	default 1008000000 if MACH_SUN8I
-	default 1008000000 if MACH_SUN9I
-	default 888000000 if MACH_SUN50I_H6
-	default 1008000000 if MACH_SUN50I_H616
-
-config SYS_CONFIG_NAME
-	default "suniv" if MACH_SUNIV
-	default "sun4i" if MACH_SUN4I
-	default "sun5i" if MACH_SUN5I
-	default "sun6i" if MACH_SUN6I
-	default "sun7i" if MACH_SUN7I
-	default "sun8i" if MACH_SUN8I
-	default "sun9i" if MACH_SUN9I
-	default "sun50i" if MACH_SUN50I
-	default "sun50i" if MACH_SUN50I_H6
-	default "sun50i" if MACH_SUN50I_H616
-
-config SYS_BOARD
-	default "sunxi"
-
-config SYS_SOC
-	default "sunxi"
-
-config SUNXI_MINIMUM_DRAM_MB
-	int "minimum DRAM size"
-	default 32 if MACH_SUNIV
-	default 64 if MACH_SUN8I_V3S
-	default 256
-	---help---
-	Minimum DRAM size expected on the board. Traditionally we assumed
-	256 MB, so that U-Boot would load at 160MB. With co-packaged DRAM
-	we have smaller sizes, though, so that U-Boot's own load address and
-	the default payload addresses must be shifted down.
-	This is expected to be fixed by the SoC selection.
-
 config UART0_PORT_F
 	bool "UART0 on MicroSD breakout board"
 	---help---
@@ -985,17 +929,6 @@ config GMAC_TX_DELAY
 	---help---
 	Set the GMAC Transmit Clock Delay Chain value.
 
-config SPL_STACK_R_ADDR
-	default 0x81e00000 if MACH_SUNIV
-	default 0x4fe00000 if MACH_SUN4I
-	default 0x4fe00000 if MACH_SUN5I
-	default 0x4fe00000 if MACH_SUN6I
-	default 0x4fe00000 if MACH_SUN7I
-	default 0x4fe00000 if MACH_SUN8I
-	default 0x2fe00000 if MACH_SUN9I
-	default 0x4fe00000 if MACH_SUN50I
-	default 0x4fe00000 if SUN50I_GEN_H6
-
 config SPL_SPI_SUNXI
 	bool "Support for SPI Flash on Allwinner SoCs in SPL"
 	depends on MACH_SUN4I || MACH_SUN5I || MACH_SUN7I || MACH_SUNXI_H3_H5 || MACH_SUN50I || MACH_SUN8I_R40 || SUN50I_GEN_H6 || MACH_SUNIV
diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index 809cd17f54..105c902036 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -52,6 +52,74 @@ config BOARD_SUNXI
 
 if BOARD_SUNXI
 
+config IDENT_STRING
+	default " Allwinner Technology"
+
+config SPL_STACK_R_ADDR
+	default 0x81e00000 if MACH_SUNIV
+	default 0x4fe00000 if MACH_SUN4I
+	default 0x4fe00000 if MACH_SUN5I
+	default 0x4fe00000 if MACH_SUN6I
+	default 0x4fe00000 if MACH_SUN7I
+	default 0x4fe00000 if MACH_SUN8I
+	default 0x2fe00000 if MACH_SUN9I
+	default 0x4fe00000 if MACH_SUN50I
+	default 0x4fe00000 if SUN50I_GEN_H6
+
+config SUNXI_MINIMUM_DRAM_MB
+	int "minimum DRAM size"
+	default 32 if MACH_SUNIV
+	default 64 if MACH_SUN8I_V3S
+	default 256
+	help
+	  Minimum DRAM size expected on the board. Traditionally we
+	  assumed 256 MB, so that U-Boot would load at 160MB. With
+	  co-packaged DRAM we have smaller sizes, though, so U-Boot's
+	  own load address and the default payload addresses must be
+	  shifted down. This is expected to be fixed by the SoC
+	  selection.
+
+config SUNXI_SRAM_ADDRESS
+	hex
+	default 0x10000 if MACH_SUN9I || MACH_SUN50I || MACH_SUN50I_H5
+	default 0x20000 if SUN50I_GEN_H6
+	default 0x0
+	help
+	  Older Allwinner SoCs have their boot mask ROM mapped just
+	  below 4GB, with the first SRAM region located at address 0.
+	  Newer SoCs map the boot ROM at address 0 instead and move the
+	  SRAM to a different address.
+
+config SYS_BOARD
+	default "sunxi"
+
+config SYS_CLK_FREQ
+	default  408000000 if MACH_SUNIV
+	default 1008000000 if MACH_SUN4I
+	default 1008000000 if MACH_SUN5I
+	default 1008000000 if MACH_SUN6I
+	default  912000000 if MACH_SUN7I
+	default 1008000000 if MACH_SUN8I
+	default 1008000000 if MACH_SUN9I
+	default  816000000 if MACH_SUN50I || MACH_SUN50I_H5
+	default  888000000 if MACH_SUN50I_H6
+	default 1008000000 if MACH_SUN50I_H616
+
+config SYS_CONFIG_NAME
+	default "suniv"  if MACH_SUNIV
+	default "sun4i"  if MACH_SUN4I
+	default "sun5i"  if MACH_SUN5I
+	default "sun6i"  if MACH_SUN6I
+	default "sun7i"  if MACH_SUN7I
+	default "sun8i"  if MACH_SUN8I
+	default "sun9i"  if MACH_SUN9I
+	default "sun50i" if MACH_SUN50I
+	default "sun50i" if MACH_SUN50I_H6
+	default "sun50i" if MACH_SUN50I_H616
+
+config SYS_SOC
+	default "sunxi"
+
 menu "sunxi board options"
 
 choice
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 11/22] sunxi: Hide the SUNXI_MINIMUM_DRAM_MB symbol
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (9 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 10/22] sunxi: Move default values to the board Kconfig Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 12/22] sunxi: Clean up the SPL_STACK_R_ADDR defaults Samuel Holland
                   ` (11 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This option affects the ABI between SPL/U-Boot and U-Boot/scripts, so it
should not normally be changed by the user.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 board/sunxi/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index 105c902036..d686d84170 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -67,7 +67,7 @@ config SPL_STACK_R_ADDR
 	default 0x4fe00000 if SUN50I_GEN_H6
 
 config SUNXI_MINIMUM_DRAM_MB
-	int "minimum DRAM size"
+	int
 	default 32 if MACH_SUNIV
 	default 64 if MACH_SUN8I_V3S
 	default 256
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 12/22] sunxi: Clean up the SPL_STACK_R_ADDR defaults
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (10 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 11/22] sunxi: Hide the SUNXI_MINIMUM_DRAM_MB symbol Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 13/22] sunxi: Move PRE_CON_BUF_ADDR to the board Kconfig Samuel Holland
                   ` (10 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

Update this option to be based on SUNXI_MINIMUM_DRAM_MB. This corrects
the value used on V3s, which previously was the MACH_SUN8I default, and
so relied on addresses wrapping modulo the DRAM size.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 board/sunxi/Kconfig | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index d686d84170..7d678108a0 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -57,14 +57,9 @@ config IDENT_STRING
 
 config SPL_STACK_R_ADDR
 	default 0x81e00000 if MACH_SUNIV
-	default 0x4fe00000 if MACH_SUN4I
-	default 0x4fe00000 if MACH_SUN5I
-	default 0x4fe00000 if MACH_SUN6I
-	default 0x4fe00000 if MACH_SUN7I
-	default 0x4fe00000 if MACH_SUN8I
 	default 0x2fe00000 if MACH_SUN9I
-	default 0x4fe00000 if MACH_SUN50I
-	default 0x4fe00000 if SUN50I_GEN_H6
+	default 0x4fe00000 if SUNXI_MINIMUM_DRAM_MB >= 256
+	default 0x43e00000 if SUNXI_MINIMUM_DRAM_MB >= 64
 
 config SUNXI_MINIMUM_DRAM_MB
 	int
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 13/22] sunxi: Move PRE_CON_BUF_ADDR to the board Kconfig
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (11 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 12/22] sunxi: Clean up the SPL_STACK_R_ADDR defaults Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 14/22] sunxi: Move SPL_BSS_START_ADDR " Samuel Holland
                   ` (9 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This provides a default value for RISC-V when that is added, and it
makes sense to put this option next to the other DRAM layout options.

While at it, provide sensible values for platforms with less DRAM.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 board/sunxi/Kconfig | 6 ++++++
 common/Kconfig      | 2 --
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index 7d678108a0..704535d467 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -55,6 +55,12 @@ if BOARD_SUNXI
 config IDENT_STRING
 	default " Allwinner Technology"
 
+config PRE_CON_BUF_ADDR
+	default 0x81000000 if MACH_SUNIV
+	default 0x2f000000 if MACH_SUN9I
+	default 0x4f000000 if SUNXI_MINIMUM_DRAM_MB >= 256
+	default 0x43000000 if SUNXI_MINIMUM_DRAM_MB >= 64
+
 config SPL_STACK_R_ADDR
 	default 0x81e00000 if MACH_SUNIV
 	default 0x2fe00000 if MACH_SUN9I
diff --git a/common/Kconfig b/common/Kconfig
index 21434c5cf1..bc2c078d4a 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -195,8 +195,6 @@ config PRE_CON_BUF_SZ
 config PRE_CON_BUF_ADDR
 	hex "Address of the pre-console buffer"
 	depends on PRE_CONSOLE_BUFFER
-	default 0x2f000000 if ARCH_SUNXI && MACH_SUN9I
-	default 0x4f000000 if ARCH_SUNXI && !MACH_SUN9I
 	default 0x0f000000 if ROCKCHIP_RK3288
 	default 0x0f200000 if ROCKCHIP_RK3399
 	help
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 14/22] sunxi: Move SPL_BSS_START_ADDR to the board Kconfig
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (12 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 13/22] sunxi: Move PRE_CON_BUF_ADDR to the board Kconfig Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 15/22] sunxi: Move SPL_TEXT_BASE " Samuel Holland
                   ` (8 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This provides a default value for RISC-V when that is added, and it
makes sense to put this option next to the other DRAM layout options.

While at it, provide sensible values for platforms with less DRAM.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 board/sunxi/Kconfig | 6 ++++++
 common/spl/Kconfig  | 3 ---
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index 704535d467..1abb3e1816 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -61,6 +61,12 @@ config PRE_CON_BUF_ADDR
 	default 0x4f000000 if SUNXI_MINIMUM_DRAM_MB >= 256
 	default 0x43000000 if SUNXI_MINIMUM_DRAM_MB >= 64
 
+config SPL_BSS_START_ADDR
+	default 0x81f80000 if MACH_SUNIV
+	default 0x2ff80000 if MACH_SUN9I
+	default 0x4ff80000 if SUNXI_MINIMUM_DRAM_MB >= 256
+	default 0x43f80000 if SUNXI_MINIMUM_DRAM_MB >= 64
+
 config SPL_STACK_R_ADDR
 	default 0x81e00000 if MACH_SUNIV
 	default 0x2fe00000 if MACH_SUN9I
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index b738c749ff..b1e9926e68 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -118,9 +118,6 @@ config SPL_BSS_START_ADDR
 	default 0x88200000 if (ARCH_MX6 && (MX6SX || MX6SL || MX6UL || MX6ULL)) || ARCH_MX7
 	default 0x18200000 if ARCH_MX6 && !(MX6SX || MX6SL || MX6UL || MX6ULL)
 	default 0x80a00000 if ARCH_OMAP2PLUS
-	default 0x81f80000 if ARCH_SUNXI && MACH_SUNIV
-	default 0x4ff80000 if ARCH_SUNXI && !(MACH_SUN9I || MACH_SUNIV)
-	default 0x2ff80000 if ARCH_SUNXI && MACH_SUN9I
 	default 0x1000 if ARCH_ZYNQMP
 
 choice
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 15/22] sunxi: Move SPL_TEXT_BASE to the board Kconfig
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (13 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 14/22] sunxi: Move SPL_BSS_START_ADDR " Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 16/22] sunxi: Move SYS_LOAD_ADDR " Samuel Holland
                   ` (7 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

It makes sense to put this near the definition of SUNXI_SRAM_ADDRESS.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 board/sunxi/Kconfig | 5 +++++
 common/spl/Kconfig  | 3 ---
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index 1abb3e1816..b561dd467f 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -73,6 +73,11 @@ config SPL_STACK_R_ADDR
 	default 0x4fe00000 if SUNXI_MINIMUM_DRAM_MB >= 256
 	default 0x43e00000 if SUNXI_MINIMUM_DRAM_MB >= 64
 
+config SPL_TEXT_BASE
+	default 0x10060 if MACH_SUN9I || MACH_SUN50I || MACH_SUN50I_H5
+	default 0x20060 if SUN50I_GEN_H6
+	default 0x00060
+
 config SUNXI_MINIMUM_DRAM_MB
 	int
 	default 32 if MACH_SUNIV
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index b1e9926e68..930028b5af 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -260,9 +260,6 @@ config SPL_TEXT_BASE
 	default 0x402F4000 if AM43XX
 	default 0x402F0400 if AM33XX
 	default 0x40301350 if OMAP54XX
-	default 0x10060 if MACH_SUN50I || MACH_SUN50I_H5 || MACH_SUN9I
-	default 0x20060 if SUN50I_GEN_H6
-	default 0x00060 if ARCH_SUNXI
 	default 0xfffc0000 if ARCH_ZYNQMP
 	default 0x0
 	help
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 16/22] sunxi: Move SYS_LOAD_ADDR to the board Kconfig
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (14 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 15/22] sunxi: Move SPL_TEXT_BASE " Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 17/22] sunxi: Move TEXT_BASE " Samuel Holland
                   ` (6 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This will provide a default value for RISC-V when that is added, and it
makes sense to put this option next to the other DRAM layout options.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 Kconfig             | 3 ---
 board/sunxi/Kconfig | 5 +++++
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/Kconfig b/Kconfig
index ef94f88adc..70e159221c 100644
--- a/Kconfig
+++ b/Kconfig
@@ -508,9 +508,6 @@ config SYS_LOAD_ADDR
 	hex "Address in memory to use by default"
 	default 0x01000000 if ARCH_SOCFPGA
 	default 0x02000000 if PPC || X86
-	default 0x81000000 if MACH_SUNIV
-	default 0x22000000 if MACH_SUN9I
-	default 0x42000000 if ARCH_SUNXI
 	default 0x82000000 if ARCH_KEYSTONE || ARCH_OMAP2PLUS || ARCH_K3
 	default 0x82000000 if ARCH_MX6 && (MX6SL || MX6SLL  || MX6SX || MX6UL || MX6ULL)
 	default 0x12000000 if ARCH_MX6 && !(MX6SL || MX6SLL  || MX6SX || MX6UL || MX6ULL)
diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index b561dd467f..d463474535 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -129,6 +129,11 @@ config SYS_CONFIG_NAME
 	default "sun50i" if MACH_SUN50I_H6
 	default "sun50i" if MACH_SUN50I_H616
 
+config SYS_LOAD_ADDR
+	default 0x81000000 if MACH_SUNIV
+	default 0x22000000 if MACH_SUN9I
+	default 0x42000000
+
 config SYS_SOC
 	default "sunxi"
 
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 17/22] sunxi: Move TEXT_BASE to the board Kconfig
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (15 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 16/22] sunxi: Move SYS_LOAD_ADDR " Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 18/22] sunxi: Move most board options " Samuel Holland
                   ` (5 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This is how the vast majority of platforms provided TEXT_BASE.
sunxi was the exception here.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 board/sunxi/Kconfig | 6 ++++++
 boot/Kconfig        | 4 ----
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index d463474535..7ff0275ae4 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -137,6 +137,12 @@ config SYS_LOAD_ADDR
 config SYS_SOC
 	default "sunxi"
 
+config TEXT_BASE
+	default 0x81700000 if MACH_SUNIV
+	default 0x2a000000 if MACH_SUN9I
+	default 0x4a000000 if SUNXI_MINIMUM_DRAM_MB >= 256
+	default 0x42e00000 if SUNXI_MINIMUM_DRAM_MB >= 64
+
 menu "sunxi board options"
 
 choice
diff --git a/boot/Kconfig b/boot/Kconfig
index d5c582ebe8..b650a0b052 100644
--- a/boot/Kconfig
+++ b/boot/Kconfig
@@ -633,10 +633,6 @@ config TEXT_BASE
 	depends on HAVE_TEXT_BASE
 	default 0x0 if POSITION_INDEPENDENT
 	default 0x80800000 if ARCH_OMAP2PLUS || ARCH_K3
-	default 0x81700000 if MACH_SUNIV
-	default 0x2a000000 if MACH_SUN9I
-	default 0x4a000000 if SUNXI_MINIMUM_DRAM_MB >= 256
-	default 0x42e00000 if SUNXI_MINIMUM_DRAM_MB >= 64
 	hex "Text Base"
 	help
 	  The address in memory that U-Boot will be running from, initially.
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 18/22] sunxi: Move most board options to the board Kconfig
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (16 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 17/22] sunxi: Move TEXT_BASE " Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 19/22] env: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI Samuel Holland
                   ` (4 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This excludes options that are inherently ARM-specific or are specific
to legacy non-DM drivers.

Some help text is cleaned up along the way.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 arch/arm/mach-sunxi/Kconfig | 71 ------------------------------------
 board/sunxi/Kconfig         | 72 +++++++++++++++++++++++++++++++++++++
 2 files changed, 72 insertions(+), 71 deletions(-)

diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig
index 24840f6d7e..ff21d94842 100644
--- a/arch/arm/mach-sunxi/Kconfig
+++ b/arch/arm/mach-sunxi/Kconfig
@@ -559,16 +559,6 @@ config DRAM_ODT_CORRECTION
 	then the correction is negative. Usually the value for this is 0.
 endif
 
-config UART0_PORT_F
-	bool "UART0 on MicroSD breakout board"
-	---help---
-	Repurpose the SD card slot for getting access to the UART0 serial
-	console. Primarily useful only for low level u-boot debugging on
-	tablets, where normal UART0 is difficult to access and requires
-	device disassembly and/or soldering. As the SD card can't be used
-	at the same time, the system can be only booted in the FEL mode.
-	Only enable this if you really know what you are doing.
-
 config OLD_SUNXI_KERNEL_COMPAT
 	bool "Enable workarounds for booting old kernels"
 	---help---
@@ -609,20 +599,6 @@ config MMC3_CD_PIN
 	---help---
 	See MMC0_CD_PIN help text.
 
-config MMC1_PINS_PH
-	bool "Pins for mmc1 are on Port H"
-	depends on MACH_SUN4I || MACH_SUN7I || MACH_SUN8I_R40
-	---help---
-	Select this option for boards where mmc1 uses the Port H pinmux.
-
-config MMC_SUNXI_SLOT_EXTRA
-	int "mmc extra slot number"
-	default -1
-	---help---
-	sunxi builds always enable mmc0, some boards also have a second sdcard
-	slot or emmc on mmc1 - mmc3. Setting this to 1, 2 or 3 will enable
-	support for this.
-
 config USB0_VBUS_PIN
 	string "Vbus enable pin for usb0 (otg)"
 	default ""
@@ -699,16 +675,6 @@ config AXP_GPIO
 	---help---
 	Say Y here to enable support for the gpio pins of the axp PMIC ICs.
 
-config AXP_DISABLE_BOOT_ON_POWERON
-	bool "Disable device boot on power plug-in"
-	depends on AXP209_POWER || AXP221_POWER || AXP809_POWER || AXP818_POWER
-	default n
-	---help---
-	  Say Y here to prevent the device from booting up because of a plug-in
-	  event. When set, the device will boot into the SPL briefly to
-	  determine why it was powered on, and if it was determined because of
-	  a plug-in event instead of a button press event it will shut back off.
-
 config VIDEO_SUNXI
 	bool "Enable graphical uboot console on HDMI, LCD or VGA"
 	depends on !MACH_SUN8I_A83T
@@ -937,41 +903,4 @@ config SPL_SPI_SUNXI
 	  sunxi SPI Flash. It uses the same method as the boot ROM, so does
 	  not need any extra configuration.
 
-config PINE64_DT_SELECTION
-	bool "Enable Pine64 device tree selection code"
-	depends on MACH_SUN50I
-	help
-	  The original Pine A64 and Pine A64+ are similar but different
-	  boards and can be differed by the DRAM size. Pine A64 has
-	  512MiB DRAM, and Pine A64+ has 1GiB or 2GiB. By selecting this
-	  option, the device tree selection code specific to Pine64 which
-	  utilizes the DRAM size will be enabled.
-
-config PINEPHONE_DT_SELECTION
-	bool "Enable PinePhone device tree selection code"
-	depends on MACH_SUN50I
-	help
-	  Enable this option to automatically select the device tree for the
-	  correct PinePhone hardware revision during boot.
-
-config BLUETOOTH_DT_DEVICE_FIXUP
-	string "Fixup the Bluetooth controller address"
-	default ""
-	help
-	  This option specifies the DT compatible name of the Bluetooth
-	  controller for which to set the "local-bd-address" property.
-	  Set this option if your device ships with the Bluetooth controller
-	  default address.
-	  The used address is "bdaddr" if set, and "ethaddr" with the LSB
-	  flipped elsewise.
-
 endif
-
-config CHIP_DIP_SCAN
-	bool "Enable DIPs detection for CHIP board"
-	select SUPPORT_EXTENSION_SCAN
-	select W1
-	select W1_GPIO
-	select W1_EEPROM
-	select W1_EEPROM_DS24XXX
-	select CMD_EXTENSION
diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
index 7ff0275ae4..f5e5c3770f 100644
--- a/board/sunxi/Kconfig
+++ b/board/sunxi/Kconfig
@@ -171,6 +171,78 @@ config SPL_IMAGE_TYPE
 	default "sunxi_egon" if SPL_IMAGE_TYPE_SUNXI_EGON
 	default "sunxi_toc0" if SPL_IMAGE_TYPE_SUNXI_TOC0
 
+config MMC_SUNXI_SLOT_EXTRA
+	int "MMC extra slot number"
+	default -1
+	help
+	  sunxi builds always enable mmc0. Some boards also have a
+	  second SD card slot or eMMC on mmc1 - mmc3. Setting this to 1,
+	  2 or 3 will enable support for this.
+
+config MMC1_PINS_PH
+	bool "MMC1 pins are on Port H"
+	depends on MACH_SUN4I || MACH_SUN7I || MACH_SUN8I_R40
+	help
+	  Select this option on boards where mmc1 uses the Port H pinmux.
+
+config UART0_PORT_F
+	bool "UART0 pins are on Port F (MicroSD breakout board)"
+	help
+	  Repurpose the SD card slot for getting access to the UART0
+	  serial console. Primarily useful only for low level u-boot
+	  debugging on tablets, where normal UART0 is difficult to
+	  access and requires device disassembly and/or soldering. As
+	  the SD card can't be used at the same time, the system can be
+	  only booted in FEL mode. Only enable this if you really know
+	  what you are doing.
+
+config AXP_DISABLE_BOOT_ON_POWERON
+	bool "Disable device boot on power plug-in"
+	depends on AXP209_POWER || AXP221_POWER || AXP809_POWER || AXP818_POWER
+	help
+	  Say Y here to prevent the device from booting up because of a
+	  plug-in event. When set, the device will boot into the SPL
+	  briefly to determine why it was powered on, and if the board
+	  was powered on because of a plug-in event instead of a button
+	  press event, it will shut back off.
+
+config CHIP_DIP_SCAN
+	bool "Enable DIPs detection for CHIP board"
+	select SUPPORT_EXTENSION_SCAN
+	select W1
+	select W1_GPIO
+	select W1_EEPROM
+	select W1_EEPROM_DS24XXX
+	select CMD_EXTENSION
+
+config PINE64_DT_SELECTION
+	bool "Enable Pine64 device tree selection code"
+	depends on MACH_SUN50I
+	help
+	  The original Pine A64 and Pine A64+ are similar but different
+	  boards and can be differed by the DRAM size. Pine A64 has
+	  512MiB DRAM, and Pine A64+ has 1GiB or 2GiB. By selecting this
+	  option, the device tree selection code specific to Pine64 which
+	  utilizes the DRAM size will be enabled.
+
+config PINEPHONE_DT_SELECTION
+	bool "Enable PinePhone device tree selection code"
+	depends on MACH_SUN50I
+	help
+	  Enable this option to automatically select the device tree for the
+	  correct PinePhone hardware revision during boot.
+
+config BLUETOOTH_DT_DEVICE_FIXUP
+	string "Fixup the Bluetooth controller address"
+	default ""
+	help
+	  This option specifies the DT compatible name of the Bluetooth
+	  controller for which to set the "local-bd-address" property.
+	  Set this option if your device ships with the Bluetooth controller
+	  default address.
+	  The used address is "bdaddr" if set, and "ethaddr" with the LSB
+	  flipped elsewise.
+
 endmenu
 
 endif
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 19/22] env: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (17 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 18/22] sunxi: Move most board options " Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 20/22] drivers: " Samuel Holland
                   ` (3 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This ensures the same environment layout will be used across all sunxi
boards, regardless of CPU architecture.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 env/Kconfig | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/env/Kconfig b/env/Kconfig
index 24111dfaf4..ae28e4e3e6 100644
--- a/env/Kconfig
+++ b/env/Kconfig
@@ -92,7 +92,7 @@ config ENV_IS_IN_FAT
 	bool "Environment is in a FAT filesystem"
 	depends on !CHAIN_OF_TRUST
 	default y if ARCH_BCM283X
-	default y if ARCH_SUNXI && MMC
+	default y if BOARD_SUNXI && MMC
 	default y if MMC_OMAP_HS && TI_COMMON_CMD_OPTIONS
 	select FS_FAT
 	select FAT_WRITE
@@ -338,7 +338,7 @@ config ENV_IS_IN_SPI_FLASH
 	default y if NORTHBRIDGE_INTEL_IVYBRIDGE
 	default y if INTEL_QUARK
 	default y if INTEL_QUEENSBAY
-	default y if ARCH_SUNXI
+	default y if BOARD_SUNXI
 	help
 	  Define this if you have a SPI Flash memory device which you
 	  want to use for the environment.
@@ -461,7 +461,7 @@ config ENV_FAT_DEVICE_AND_PART
 	depends on ENV_IS_IN_FAT
 	default "0:1" if TI_COMMON_CMD_OPTIONS
 	default "0:auto" if ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL
-	default ":auto" if ARCH_SUNXI
+	default ":auto" if BOARD_SUNXI
 	default "0" if ARCH_AT91
 	help
 	  Define this to a string to specify the partition of the device. It can
@@ -555,7 +555,7 @@ config ENV_OFFSET
 		    ENV_IS_IN_SPI_FLASH
 	default 0x3f8000 if ARCH_ROCKCHIP && ENV_IS_IN_MMC
 	default 0x140000 if ARCH_ROCKCHIP && ENV_IS_IN_SPI_FLASH
-	default 0xF0000 if ARCH_SUNXI
+	default 0xF0000 if BOARD_SUNXI
 	default 0xE0000 if ARCH_ZYNQ
 	default 0x1E00000 if ARCH_ZYNQMP
 	default 0x7F40000 if ARCH_VERSAL || ARCH_VERSAL_NET
@@ -580,7 +580,7 @@ config ENV_SIZE
 	hex "Environment Size"
 	default 0x40000 if ENV_IS_IN_SPI_FLASH && ARCH_ZYNQMP
 	default 0x20000 if ARCH_ZYNQ || ARCH_OMAP2PLUS || ARCH_AT91
-	default 0x10000 if ARCH_SUNXI
+	default 0x10000 if BOARD_SUNXI
 	default 0x8000 if ARCH_ROCKCHIP && ENV_IS_IN_MMC
 	default 0x2000 if ARCH_ROCKCHIP && ENV_IS_IN_SPI_FLASH
 	default 0x8000 if ARCH_ZYNQMP || ARCH_VERSAL || ARCH_VERSAL_NET
@@ -596,7 +596,7 @@ config ENV_SECT_SIZE
 	default 0x40000 if ARCH_ZYNQMP || ARCH_VERSAL || ARCH_VERSAL_NET
 	default 0x20000 if ARCH_ZYNQ || ARCH_OMAP2PLUS || ARCH_AT91
 	default 0x20000 if MICROBLAZE && ENV_IS_IN_SPI_FLASH
-	default 0x10000 if ARCH_SUNXI && ENV_IS_IN_SPI_FLASH
+	default 0x10000 if BOARD_SUNXI && ENV_IS_IN_SPI_FLASH
 	help
 	  Size of the sector containing the environment.
 
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 20/22] drivers: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (18 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 19/22] env: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 21/22] disk: " Samuel Holland
                   ` (2 subsequent siblings)
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This provides a unified configuration across all sunxi boards,
regardless of CPU architecture.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 drivers/clk/sunxi/Kconfig     |  2 +-
 drivers/fastboot/Kconfig      | 13 ++++++-------
 drivers/gpio/Kconfig          |  2 +-
 drivers/mmc/Kconfig           |  2 +-
 drivers/net/phy/Kconfig       |  4 ++--
 drivers/phy/allwinner/Kconfig |  2 +-
 drivers/pinctrl/sunxi/Kconfig |  2 +-
 drivers/reset/Kconfig         |  2 +-
 drivers/spi/Kconfig           |  2 +-
 drivers/usb/Kconfig           |  2 +-
 drivers/usb/gadget/Kconfig    |  8 ++++----
 drivers/usb/musb-new/Kconfig  |  2 +-
 drivers/video/Kconfig         |  2 +-
 drivers/watchdog/Kconfig      |  4 ++--
 14 files changed, 24 insertions(+), 25 deletions(-)

diff --git a/drivers/clk/sunxi/Kconfig b/drivers/clk/sunxi/Kconfig
index bf11fad6ee..72310e231d 100644
--- a/drivers/clk/sunxi/Kconfig
+++ b/drivers/clk/sunxi/Kconfig
@@ -1,6 +1,6 @@
 config CLK_SUNXI
 	bool "Clock support for Allwinner SoCs"
-	depends on CLK && ARCH_SUNXI
+	depends on CLK && BOARD_SUNXI
 	select DM_RESET
 	select SPL_DM_RESET if SPL_CLK
 	default y
diff --git a/drivers/fastboot/Kconfig b/drivers/fastboot/Kconfig
index b97c67bf60..a55fdac370 100644
--- a/drivers/fastboot/Kconfig
+++ b/drivers/fastboot/Kconfig
@@ -8,7 +8,7 @@ config FASTBOOT
 config USB_FUNCTION_FASTBOOT
 	bool "Enable USB fastboot gadget"
 	depends on USB_GADGET
-	default y if ARCH_SUNXI && USB_MUSB_GADGET
+	default y if BOARD_SUNXI && USB_MUSB_GADGET
 	select FASTBOOT
 	select USB_GADGET_DOWNLOAD
 	help
@@ -32,10 +32,9 @@ if FASTBOOT
 
 config FASTBOOT_BUF_ADDR
 	hex "Define FASTBOOT buffer address"
+	default SYS_LOAD_ADDR if BOARD_SUNXI
 	default 0x82000000 if MX6SX || MX6SL || MX6UL || MX6SLL
 	default 0x81000000 if ARCH_OMAP2PLUS
-	default 0x42000000 if ARCH_SUNXI && !MACH_SUN9I
-	default 0x22000000 if ARCH_SUNXI && MACH_SUN9I
 	default 0x60800800 if ROCKCHIP_RK3036 || ROCKCHIP_RK3188 || \
 				ROCKCHIP_RK322X
 	default 0x800800 if ROCKCHIP_RK3288 || ROCKCHIP_RK3329 || \
@@ -52,7 +51,7 @@ config FASTBOOT_BUF_SIZE
 	hex "Define FASTBOOT buffer size"
 	default 0x8000000 if ARCH_ROCKCHIP
 	default 0x6000000 if ARCH_ZYNQMP
-	default 0x2000000 if ARCH_SUNXI
+	default 0x2000000 if BOARD_SUNXI
 	default 0x8192 if SANDBOX
 	default 0x7000000
 	help
@@ -71,7 +70,7 @@ config FASTBOOT_USB_DEV
 
 config FASTBOOT_FLASH
 	bool "Enable FASTBOOT FLASH command"
-	default y if ARCH_SUNXI || ARCH_ROCKCHIP
+	default y if BOARD_SUNXI || ARCH_ROCKCHIP
 	depends on MMC || (MTD_RAW_NAND && CMD_MTDPARTS)
 	select IMAGE_SPARSE
 	help
@@ -105,8 +104,8 @@ config FASTBOOT_FLASH_MMC_DEV
 	int "Define FASTBOOT MMC FLASH default device"
 	depends on FASTBOOT_FLASH_MMC
 	default 0 if ARCH_ROCKCHIP
-	default 0 if ARCH_SUNXI && MMC_SUNXI_SLOT_EXTRA = -1
-	default 1 if ARCH_SUNXI && MMC_SUNXI_SLOT_EXTRA != -1
+	default 0 if BOARD_SUNXI && MMC_SUNXI_SLOT_EXTRA = -1
+	default 1 if BOARD_SUNXI && MMC_SUNXI_SLOT_EXTRA != -1
 	help
 	  The fastboot "flash" command requires additional information
 	  regarding the non-volatile storage device. Define this to
diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index ff87fbfb39..defdb91368 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -363,7 +363,7 @@ config SANDBOX_GPIO_COUNT
 
 config SUNXI_GPIO
 	bool "Allwinner GPIO driver"
-	depends on ARCH_SUNXI
+	depends on BOARD_SUNXI
 	select SPL_STRTO if SPL
 	help
 	  Support the GPIO device in Allwinner SoCs.
diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig
index 56f42820c7..6a7271de75 100644
--- a/drivers/mmc/Kconfig
+++ b/drivers/mmc/Kconfig
@@ -749,7 +749,7 @@ config ZYNQ_HISPD_BROKEN
 
 config MMC_SUNXI
 	bool "Allwinner sunxi SD/MMC Host Controller support"
-	depends on ARCH_SUNXI
+	depends on BOARD_SUNXI
 	default y
 	help
 	  This selects support for the SD/MMC Host Controller on
diff --git a/drivers/net/phy/Kconfig b/drivers/net/phy/Kconfig
index 52ce08b3b3..a68298fa08 100644
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
@@ -19,14 +19,14 @@ if PHYLIB
 
 config PHY_ADDR_ENABLE
 	bool "Limit phy address"
-	default y if ARCH_SUNXI
+	default y if BOARD_SUNXI
 	help
 	  Select this if you want to control which phy address is used
 
 if PHY_ADDR_ENABLE
 config PHY_ADDR
 	int "PHY address"
-	default 1 if ARCH_SUNXI
+	default 1 if BOARD_SUNXI
 	default 0
 	help
 	  The address of PHY on MII bus. Usually in range of 0 to 31.
diff --git a/drivers/phy/allwinner/Kconfig b/drivers/phy/allwinner/Kconfig
index f8f1e99c4f..ab43681f0c 100644
--- a/drivers/phy/allwinner/Kconfig
+++ b/drivers/phy/allwinner/Kconfig
@@ -3,7 +3,7 @@
 #
 config PHY_SUN4I_USB
 	bool "Allwinner Sun4I USB PHY driver"
-	depends on ARCH_SUNXI
+	depends on BOARD_SUNXI
 	select DM_REGULATOR
 	select PHY
 	help
diff --git a/drivers/pinctrl/sunxi/Kconfig b/drivers/pinctrl/sunxi/Kconfig
index 77da90836b..eb574236a3 100644
--- a/drivers/pinctrl/sunxi/Kconfig
+++ b/drivers/pinctrl/sunxi/Kconfig
@@ -1,6 +1,6 @@
 # SPDX-License-Identifier: GPL-2.0
 
-if ARCH_SUNXI
+if BOARD_SUNXI
 
 config PINCTRL_SUNXI
 	select PINCTRL_FULL
diff --git a/drivers/reset/Kconfig b/drivers/reset/Kconfig
index 4cb0ba0850..cb15372306 100644
--- a/drivers/reset/Kconfig
+++ b/drivers/reset/Kconfig
@@ -137,7 +137,7 @@ config RESET_MTMIPS
 
 config RESET_SUNXI
 	bool "RESET support for Allwinner SoCs"
-	depends on DM_RESET && ARCH_SUNXI
+	depends on DM_RESET && BOARD_SUNXI
 	default y
 	help
 	  This enables support for common reset driver for
diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
index 34b92ceaee..20412e1887 100644
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
@@ -442,7 +442,7 @@ config SOFT_SPI
 
 config SPI_SUNXI
 	bool "Allwinner SoC SPI controllers"
-	default ARCH_SUNXI
+	default BOARD_SUNXI
 	help
 	  Enable the Allwinner SoC SPi controller driver.
 
diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig
index 3afb45d5cc..8c0d4da193 100644
--- a/drivers/usb/Kconfig
+++ b/drivers/usb/Kconfig
@@ -116,7 +116,7 @@ config USB_KEYBOARD_FN_KEYS
 
 choice
 	prompt "USB keyboard polling"
-	default SYS_USB_EVENT_POLL_VIA_INT_QUEUE if ARCH_SUNXI
+	default SYS_USB_EVENT_POLL_VIA_INT_QUEUE if BOARD_SUNXI
 	default SYS_USB_EVENT_POLL
 	---help---
 	  Enable a polling mechanism for USB keyboard.
diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
index e8da73c788..19071e003e 100644
--- a/drivers/usb/gadget/Kconfig
+++ b/drivers/usb/gadget/Kconfig
@@ -40,7 +40,7 @@ if USB_GADGET
 
 config USB_GADGET_MANUFACTURER
 	string "Vendor name of the USB device"
-	default "Allwinner Technology" if ARCH_SUNXI
+	default "Allwinner Technology" if BOARD_SUNXI
 	default "Rockchip" if ARCH_ROCKCHIP
 	default "U-Boot"
 	help
@@ -49,7 +49,7 @@ config USB_GADGET_MANUFACTURER
 
 config USB_GADGET_VENDOR_NUM
 	hex "Vendor ID of the USB device"
-	default 0x1f3a if ARCH_SUNXI
+	default 0x1f3a if BOARD_SUNXI
 	default 0x2207 if ARCH_ROCKCHIP
 	default 0x0
 	help
@@ -59,7 +59,7 @@ config USB_GADGET_VENDOR_NUM
 
 config USB_GADGET_PRODUCT_NUM
 	hex "Product ID of the USB device"
-	default 0x1010 if ARCH_SUNXI
+	default 0x1010 if BOARD_SUNXI
 	default 0x310a if ROCKCHIP_RK3036
 	default 0x300a if ROCKCHIP_RK3066
 	default 0x310c if ROCKCHIP_RK3128
@@ -202,7 +202,7 @@ endif # USB_GADGET_DOWNLOAD
 config USB_ETHER
 	bool "USB Ethernet Gadget"
 	depends on NET
-	default y if ARCH_SUNXI && USB_MUSB_GADGET
+	default y if BOARD_SUNXI && USB_MUSB_GADGET
 	help
 	  Creates an Ethernet network device through a USB peripheral
 	  controller. This will create a network interface on both the device
diff --git a/drivers/usb/musb-new/Kconfig b/drivers/usb/musb-new/Kconfig
index 51f876cd71..d2d86a5c0e 100644
--- a/drivers/usb/musb-new/Kconfig
+++ b/drivers/usb/musb-new/Kconfig
@@ -67,7 +67,7 @@ config USB_MUSB_PIC32
 
 config USB_MUSB_SUNXI
 	bool "Enable sunxi OTG / DRC USB controller"
-	depends on ARCH_SUNXI
+	depends on BOARD_SUNXI
 	select USB_MUSB_PIO_ONLY
 	default y
 	---help---
diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index c841b99bb3..4e9e179d12 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -183,7 +183,7 @@ config CONSOLE_TRUETYPE_MAX_METRICS
 
 config SYS_WHITE_ON_BLACK
 	bool "Display console as white on a black background"
-	default y if ARCH_AT91 || ARCH_EXYNOS || ARCH_ROCKCHIP || ARCH_TEGRA || X86 || ARCH_SUNXI
+	default y if ARCH_AT91 || ARCH_EXYNOS || ARCH_ROCKCHIP || ARCH_TEGRA || X86 || BOARD_SUNXI
 	help
 	 Normally the display is black on a white background, Enable this
 	 option to invert this, i.e. white on a black background. This can be
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index f1b1cf63ca..575dea5da5 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -29,7 +29,7 @@ config WATCHDOG_TIMEOUT_MSECS
 	default 128000 if ARCH_MX31 || ARCH_MX5 || ARCH_MX6
 	default 128000 if ARCH_MX7 || ARCH_VF610
 	default 30000 if ARCH_SOCFPGA
-	default 16000 if ARCH_SUNXI
+	default 16000 if BOARD_SUNXI
 	default 60000
 	help
 	  Watchdog timeout in msec
@@ -321,7 +321,7 @@ config WDT_STM32MP
 
 config WDT_SUNXI
 	bool "Allwinner sunxi watchdog timer support"
-	depends on WDT && ARCH_SUNXI
+	depends on WDT && BOARD_SUNXI
 	default y
 	help
 	  Enable support for the watchdog timer in Allwinner sunxi SoCs.
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 21/22] disk: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (19 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 20/22] drivers: " Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-01  5:08 ` [PATCH 22/22] spl: " Samuel Holland
  2022-11-03 16:46 ` [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Andre Przywara
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This provides a unified configuration across all sunxi boards,
regardless of CPU architecture.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 disk/Kconfig | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/disk/Kconfig b/disk/Kconfig
index c9b9dbaf1a..b9d3625dc2 100644
--- a/disk/Kconfig
+++ b/disk/Kconfig
@@ -61,7 +61,7 @@ config SPL_DOS_PARTITION
 	bool "Enable MS Dos partition table for SPL"
 	depends on SPL
 	default n if ARCH_MVEBU
-	default n if ARCH_SUNXI
+	default n if BOARD_SUNXI
 	default y if DOS_PARTITION
 	select SPL_PARTITIONS
 
@@ -104,7 +104,7 @@ config EFI_PARTITION
 config EFI_PARTITION_ENTRIES_NUMBERS
 	int "Number of the EFI partition entries"
 	depends on EFI_PARTITION
-	default 56 if ARCH_SUNXI
+	default 56 if BOARD_SUNXI
 	default 128
 	help
 	  Specify the number of partition entries in the GPT. This is
@@ -132,7 +132,7 @@ config SPL_EFI_PARTITION
 	bool "Enable EFI GPT partition table for SPL"
 	depends on  SPL
 	default n if ARCH_MVEBU
-	default n if ARCH_SUNXI
+	default n if BOARD_SUNXI
 	default y if EFI_PARTITION
 	select SPL_PARTITIONS
 
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* [PATCH 22/22] spl: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (20 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 21/22] disk: " Samuel Holland
@ 2022-11-01  5:08 ` Samuel Holland
  2022-11-03 16:46 ` [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Andre Przywara
  22 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-01  5:08 UTC (permalink / raw)
  To: Andre Przywara, Jagan Teki; +Cc: u-boot, Samuel Holland

This provides a unified configuration across all sunxi boards,
regardless of CPU architecture.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 common/spl/Kconfig   | 12 ++++++------
 scripts/Makefile.spl |  2 +-
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 930028b5af..5ff75aad9f 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -110,7 +110,7 @@ config SPL_PAD_TO
 config SPL_HAS_BSS_LINKER_SECTION
 	depends on SPL_FRAMEWORK
 	bool "Use a specific address for the BSS via the linker script"
-	default y if ARCH_SUNXI || ARCH_MX6 || ARCH_OMAP2PLUS || MIPS || RISCV || ARCH_ZYNQMP
+	default y if ARCH_MX6 || ARCH_OMAP2PLUS || ARCH_ZYNQMP || BOARD_SUNXI || MIPS || RISCV
 
 config SPL_BSS_START_ADDR
 	hex "Link address for the BSS within the SPL binary"
@@ -334,7 +334,7 @@ config SPL_SYS_MALLOC_SIMPLE
 config SPL_SHARES_INIT_SP_ADDR
 	bool "SPL and U-Boot use the same initial stack pointer location"
 	depends on (ARM || ARCH_JZ47XX || MICROBLAZE || RISCV) && SPL_FRAMEWORK
-	default n if ARCH_SUNXI || ARCH_MX6 || ARCH_MX7
+	default n if BOARD_SUNXI || ARCH_MX6 || ARCH_MX7
 	default y
 	help
 	  In many cases, we can use the same initial stack pointer address for
@@ -452,7 +452,7 @@ config SPL_DISPLAY_PRINT
 
 config SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
 	bool "MMC raw mode: by sector"
-	default y if ARCH_SUNXI || ARCH_DAVINCI || ARCH_UNIPHIER || \
+	default y if BOARD_SUNXI || ARCH_DAVINCI || ARCH_UNIPHIER || \
 		     ARCH_MX6 || ARCH_MX7 || \
 		     ARCH_ROCKCHIP || ARCH_MVEBU ||  ARCH_SOCFPGA || \
 		     ARCH_AT91 || ARCH_ZYNQ || ARCH_KEYSTONE || OMAP34XX || \
@@ -465,7 +465,7 @@ config SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
 config SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR
 	hex "Address on the MMC to load U-Boot from"
 	depends on SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
-	default 0x40 if ARCH_SUNXI
+	default 0x40 if BOARD_SUNXI
 	default 0x75 if ARCH_DAVINCI
 	default 0x8a if ARCH_MX6 || ARCH_MX7
 	default 0x100 if ARCH_UNIPHIER
@@ -482,7 +482,7 @@ config SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR
 config SYS_MMCSD_RAW_MODE_U_BOOT_DATA_PART_OFFSET
 	hex "U-Boot main hardware partition image offset"
 	depends on SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
-	default 0x10 if ARCH_SUNXI
+	default 0x10 if BOARD_SUNXI
 	default 0x0
 	help
 	  On some platforms SPL location depends on hardware partition. The ROM
@@ -1308,7 +1308,7 @@ endif # SPL_SPI_FLASH_SUPPORT
 
 config SYS_SPI_U_BOOT_OFFS
 	hex "address of u-boot payload in SPI flash"
-	default 0x8000 if ARCH_SUNXI
+	default 0x8000 if BOARD_SUNXI
 	default 0x0
 	depends on SPL_SPI_LOAD || SPL_SPI_SUNXI
 	help
diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
index 15ac87286d..819050dd4d 100644
--- a/scripts/Makefile.spl
+++ b/scripts/Makefile.spl
@@ -264,7 +264,7 @@ endif
 
 INPUTS-$(CONFIG_TARGET_SOCFPGA_SOC64) += $(obj)/u-boot-spl-dtb.hex
 
-ifdef CONFIG_ARCH_SUNXI
+ifdef CONFIG_BOARD_SUNXI
 INPUTS-y	+= $(obj)/sunxi-spl.bin
 
 ifdef CONFIG_NAND_SUNXI
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 29+ messages in thread

* Re: [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures
  2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
                   ` (21 preceding siblings ...)
  2022-11-01  5:08 ` [PATCH 22/22] spl: " Samuel Holland
@ 2022-11-03 16:46 ` Andre Przywara
  2022-11-06 22:32   ` Samuel Holland
  22 siblings, 1 reply; 29+ messages in thread
From: Andre Przywara @ 2022-11-03 16:46 UTC (permalink / raw)
  To: Samuel Holland; +Cc: Jagan Teki, u-boot

On Tue,  1 Nov 2022 00:08:12 -0500
Samuel Holland <samuel@sholland.org> wrote:

Hi Samuel,

> sunxi is getting a new RISC-V platform, D1. We want to share as much of
> the existing configuration as possible, to provide a familiar
> environment, DRAM layout, partition layout, etc.
> 
> Because U-Boot includes all architecture Kconfig files at once, we must
> use a symbol outside of both CONFIG_ARM and CONFIG_RISCV to contain
> shared Kconfig options. I chose BOARD_SUNXI, corresponding to the file
> location and somewhat following the BOARD_SPECIFIC_OPTIONS pattern.

many thanks for sending this, indeed our Kconfig deserved some cleanups,
plus we need to fix the woes with RISC-V.
I just skimmed over this for now, and it seems to look good.

I have some gripes with the name BOARD_SUNXI though. Bad enough we have
board-agnostic generic code in board/sunxi, but maybe we shouldn't add to
the confusion. Would PLAT_SUNXI be a better name? After all it's all about
the Allwinner platform (and not even "architecture", for that matter).

> I did a buildman run on this series. The only net option changes are the
> expected ones:
>  - Host-side USB gets enabled on several boards by the first patch
>    (emlid_neutis_n5_devboard orangepi_zero2 pinephone pinetab tanix_tx6
>    x96_mate teres_i)
>  - CONFIG_BOARD_SUNXI gets added everywhere
>  - CONFIG_SYS_I2C_MVTWSI gets enabled by the corresponding patch
> 
> Andre, please feel free to take any subset of these; they don't all have
> to go in at once. And I'm open to suggestions about what instances of
> ARCH_SUNXI should (not) be converted. Some of them are open to opinion.

Yeah, I will definitely cherry-pick some patches, especially the more
innocent ones. I will run my before/after defconfig comparisons to test
them.

Cheers,
Andre

> I left alone the options in arch/arm/mach-sunxi/Kconfig that are covered
> by other series (MMC CD/USB PHY/power pins, AXP GPIO).
> 
> After this series, the Kconfig changes needed for D1 support are quite
> small, something like this commit:
> https://github.com/smaeul/u-boot/commit/c12cf6c5d72f5327eff793518229ddbd41dcf729.patch
> 
> Adding SUNXI_MINIMUM_DRAM_MB certainly made things nicer. There are a
> few options that probably still need some adjustment to respect it.
> 
> 
> Samuel Holland (22):
>   sunxi: Fix default-enablement of USB host drivers
>   sunxi: Remove unnecessary Kconfig selections
>   sunxi: Add missing dependencies to Kconfig selections
>   sunxi: Hide image type selection if SPL is disabled
>   sunxi: Share the board Kconfig across architectures
>   sunxi: Move most Kconfig selections to the board Kconfig
>   sunxi: Globally enable SUPPORT_SPL
>   sunxi: Downgrade driver selections to implications
>   sunxi: Enable the I2C driver by default
>   sunxi: Move default values to the board Kconfig
>   sunxi: Hide the SUNXI_MINIMUM_DRAM_MB symbol
>   sunxi: Clean up the SPL_STACK_R_ADDR defaults
>   sunxi: Move PRE_CON_BUF_ADDR to the board Kconfig
>   sunxi: Move SPL_BSS_START_ADDR to the board Kconfig
>   sunxi: Move SPL_TEXT_BASE to the board Kconfig
>   sunxi: Move SYS_LOAD_ADDR to the board Kconfig
>   sunxi: Move TEXT_BASE to the board Kconfig
>   sunxi: Move most board options to the board Kconfig
>   env: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI
>   drivers: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI
>   disk: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI
>   spl: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI
> 
>  Kconfig                       |   3 -
>  arch/Kconfig                  |   1 +
>  arch/arm/Kconfig              |  48 +-------
>  arch/arm/mach-sunxi/Kconfig   | 154 -----------------------
>  board/sunxi/Kconfig           | 224 ++++++++++++++++++++++++++++++++++
>  boot/Kconfig                  |   4 -
>  common/Kconfig                |   2 -
>  common/spl/Kconfig            |  18 +--
>  disk/Kconfig                  |   6 +-
>  drivers/clk/sunxi/Kconfig     |   2 +-
>  drivers/fastboot/Kconfig      |  13 +-
>  drivers/gpio/Kconfig          |   2 +-
>  drivers/mmc/Kconfig           |   2 +-
>  drivers/net/phy/Kconfig       |   4 +-
>  drivers/phy/allwinner/Kconfig |   2 +-
>  drivers/pinctrl/sunxi/Kconfig |   2 +-
>  drivers/reset/Kconfig         |   2 +-
>  drivers/spi/Kconfig           |   2 +-
>  drivers/usb/Kconfig           |   2 +-
>  drivers/usb/gadget/Kconfig    |   8 +-
>  drivers/usb/host/Kconfig      |   2 -
>  drivers/usb/musb-new/Kconfig  |   2 +-
>  drivers/video/Kconfig         |   2 +-
>  drivers/watchdog/Kconfig      |   4 +-
>  env/Kconfig                   |  12 +-
>  scripts/Makefile.spl          |   2 +-
>  26 files changed, 267 insertions(+), 258 deletions(-)
> 


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures
  2022-11-03 16:46 ` [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Andre Przywara
@ 2022-11-06 22:32   ` Samuel Holland
  0 siblings, 0 replies; 29+ messages in thread
From: Samuel Holland @ 2022-11-06 22:32 UTC (permalink / raw)
  To: Andre Przywara; +Cc: Jagan Teki, u-boot

On 11/3/22 11:46, Andre Przywara wrote:
> On Tue,  1 Nov 2022 00:08:12 -0500
> Samuel Holland <samuel@sholland.org> wrote:
> 
> Hi Samuel,
> 
>> sunxi is getting a new RISC-V platform, D1. We want to share as much of
>> the existing configuration as possible, to provide a familiar
>> environment, DRAM layout, partition layout, etc.
>>
>> Because U-Boot includes all architecture Kconfig files at once, we must
>> use a symbol outside of both CONFIG_ARM and CONFIG_RISCV to contain
>> shared Kconfig options. I chose BOARD_SUNXI, corresponding to the file
>> location and somewhat following the BOARD_SPECIFIC_OPTIONS pattern.
> 
> many thanks for sending this, indeed our Kconfig deserved some cleanups,
> plus we need to fix the woes with RISC-V.
> I just skimmed over this for now, and it seems to look good.
> 
> I have some gripes with the name BOARD_SUNXI though. Bad enough we have
> board-agnostic generic code in board/sunxi, but maybe we shouldn't add to
> the confusion. Would PLAT_SUNXI be a better name? After all it's all about
> the Allwinner platform (and not even "architecture", for that matter).

I am fine with either name. "board" is U-Boot's name for the level of
abstraction we are working at. I don't know that it necessarily has to
refer to code for a _single_ board, as opposed to code that glues things
together at the "board level" outside the CPU/SoC. But I can see where
the confusion comes from. Let me know what you want me to do, and I can
adjust/resend the series.

>> I did a buildman run on this series. The only net option changes are the
>> expected ones:
>>  - Host-side USB gets enabled on several boards by the first patch
>>    (emlid_neutis_n5_devboard orangepi_zero2 pinephone pinetab tanix_tx6
>>    x96_mate teres_i)
>>  - CONFIG_BOARD_SUNXI gets added everywhere
>>  - CONFIG_SYS_I2C_MVTWSI gets enabled by the corresponding patch
>>
>> Andre, please feel free to take any subset of these; they don't all have
>> to go in at once. And I'm open to suggestions about what instances of
>> ARCH_SUNXI should (not) be converted. Some of them are open to opinion.
> 
> Yeah, I will definitely cherry-pick some patches, especially the more
> innocent ones. I will run my before/after defconfig comparisons to test
> them.

I used buildman's -K option to get the list above; it outputs the list
of individual boards with option changes per patch.

Regards,
Samuel


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: [PATCH 01/22] sunxi: Fix default-enablement of USB host drivers
  2022-11-01  5:08 ` [PATCH 01/22] sunxi: Fix default-enablement of USB host drivers Samuel Holland
@ 2022-11-11  1:09   ` Andre Przywara
  0 siblings, 0 replies; 29+ messages in thread
From: Andre Przywara @ 2022-11-11  1:09 UTC (permalink / raw)
  To: Samuel Holland; +Cc: Jagan Teki, u-boot

On Tue,  1 Nov 2022 00:08:13 -0500
Samuel Holland <samuel@sholland.org> wrote:

Hi Samuel,

> We tried to enable USB_EHCI_GENERIC and USB_OHCI_GENERIC by default.

Well, I am not really sure that was the real intention, looking at
commit 29d280c88a1ff3, and the fact that those symbols are still
explicitly defined in many board config files.
My main concern is that this change enables USB on many boards which had
it disabled - at least some of them probably on purpose. I believe for
the Pinephone for instance it's off to decrease boot time.

> This did not work because those symbols depend on USB_EHCI_HCD and
> USB_OHCI_HCD, which were not enabled. Fix this by implying all four.

The change itself looks correct, but as mentioned, 47 out of 161 boards
now come with USB newly enabled. 25 of those don't have EHCI or OHCI
nodes in their DT, so enabling USB doesn't make much sense there.
For the others I don't know if USB was disabled on purpose, on some
tablets for instance it seems that the only USB HCI port is connected to
an on-board WiFi chip, which we don't support in U-Boot.

So in a first round I would like to skip this patch. If we want to have
it (I am not against it, since the majority of boards have USB), this
should be paired with:
# USB_EHCI_HCD is not set
# USB_OHCI_HCD is not set
in the defconfigs at least for those boards without HCI DT nodes (I
have a list), to keep it disabled there.
If someone cares, and it has been disabled by mistake, they can fix
that with an extra patch.
For the other boards we should remove the ?HCI symbols from their
defconfigs, since they would be redundant then.

Cheers,
Andre

> Signed-off-by: Samuel Holland <samuel@sholland.org>
> ---
> 
>  arch/arm/Kconfig         | 4 ++++
>  drivers/usb/host/Kconfig | 2 --
>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 710f171f87..d3a1f03b36 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -1185,7 +1185,11 @@ config ARCH_SUNXI
>  	imply SYSRESET
>  	imply SYSRESET_WATCHDOG
>  	imply SYSRESET_WATCHDOG_AUTO
> +	imply USB_EHCI_GENERIC
> +	imply USB_EHCI_HCD
>  	imply USB_GADGET
> +	imply USB_OHCI_GENERIC
> +	imply USB_OHCI_HCD
>  	imply WDT
>  
>  config ARCH_U8500
> diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
> index 1aabe062fb..a4d62bc9e8 100644
> --- a/drivers/usb/host/Kconfig
> +++ b/drivers/usb/host/Kconfig
> @@ -280,7 +280,6 @@ config USB_EHCI_ZYNQ
>  config USB_EHCI_GENERIC
>  	bool "Support for generic EHCI USB controller"
>  	depends on DM_USB
> -	default ARCH_SUNXI
>  	---help---
>  	  Enables support for generic EHCI controller.
>  
> @@ -342,7 +341,6 @@ config USB_OHCI_PCI
>  
>  config USB_OHCI_GENERIC
>  	bool "Support for generic OHCI USB controller"
> -	default ARCH_SUNXI
>  	---help---
>  	  Enables support for generic OHCI controller.
>  


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: [PATCH 02/22] sunxi: Remove unnecessary Kconfig selections
  2022-11-01  5:08 ` [PATCH 02/22] sunxi: Remove unnecessary Kconfig selections Samuel Holland
@ 2022-11-11  1:09   ` Andre Przywara
  0 siblings, 0 replies; 29+ messages in thread
From: Andre Przywara @ 2022-11-11  1:09 UTC (permalink / raw)
  To: Samuel Holland; +Cc: Jagan Teki, u-boot

On Tue,  1 Nov 2022 00:08:14 -0500
Samuel Holland <samuel@sholland.org> wrote:

> Two of these selections are redundant and have no effect:
>  - DM_KEYBOARD is selected by USB_KEYBOARD
>  - DM_MMC is selected by MMC
> 
> This selection has no effect by default and is unnecessarily strong:
>  - USB_STORAGE is implied by DISTRO_DEFAULTS

With patch 01/22 removed (for now), this disables DM_KEYBOARD on 15
boards, it looks like for those without USB. I wouldn't be aware of any
other keyboard type supported on Allwinner boards, so the change is
fine:

> Signed-off-by: Samuel Holland <samuel@sholland.org>

Reviewed-by: Andre Przywara <andre.przywara@arm.com>

Cheers,
Andre

> ---
> 
>  arch/arm/Kconfig | 3 ---
>  1 file changed, 3 deletions(-)
> 
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index d3a1f03b36..939f76867e 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -1144,8 +1144,6 @@ config ARCH_SUNXI
>  	select DM_I2C if I2C
>  	select DM_SPI if SPI
>  	select DM_SPI_FLASH if SPI
> -	select DM_KEYBOARD
> -	select DM_MMC if MMC
>  	select DM_SCSI if SCSI
>  	select DM_SERIAL
>  	select GPIO_EXTRA_HEADER
> @@ -1163,7 +1161,6 @@ config ARCH_SUNXI
>  	select SYS_THUMB_BUILD if !ARM64
>  	select USB if DISTRO_DEFAULTS
>  	select USB_KEYBOARD if DISTRO_DEFAULTS && USB_HOST
> -	select USB_STORAGE if DISTRO_DEFAULTS && USB_HOST
>  	select SPL_USE_TINY_PRINTF
>  	select USE_PREBOOT
>  	select SYS_RELOC_GD_ENV_ADDR


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: [PATCH 03/22] sunxi: Add missing dependencies to Kconfig selections
  2022-11-01  5:08 ` [PATCH 03/22] sunxi: Add missing dependencies to " Samuel Holland
@ 2022-11-11  1:11   ` Andre Przywara
  0 siblings, 0 replies; 29+ messages in thread
From: Andre Przywara @ 2022-11-11  1:11 UTC (permalink / raw)
  To: Samuel Holland; +Cc: Jagan Teki, u-boot

On Tue,  1 Nov 2022 00:08:15 -0500
Samuel Holland <samuel@sholland.org> wrote:

> Some of the selected symbols have a user-visible dependency. Make the
> selections conditional on that dependency to avoid creating invalid
> configurations.

No change in any of the generated configs, so looks fine:

> Signed-off-by: Samuel Holland <samuel@sholland.org>

Reviewed-by: Andre Przywara <andre.przywara@arm.com>

Thanks,
Andre

> ---
> 
>  arch/arm/Kconfig | 16 ++++++++--------
>  1 file changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 939f76867e..4e5daa9e7f 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -1134,30 +1134,30 @@ config ARCH_SOCFPGA
>  config ARCH_SUNXI
>  	bool "Support sunxi (Allwinner) SoCs"
>  	select BINMAN
> -	select CMD_GPIO
> +	select CMD_GPIO if GPIO
>  	select CMD_MMC if MMC
>  	select CMD_USB if DISTRO_DEFAULTS && USB_HOST
>  	select CLK
>  	select DM
> -	select DM_ETH
> -	select DM_GPIO
> +	select DM_ETH if NET
> +	select DM_GPIO if GPIO
>  	select DM_I2C if I2C
> +	select DM_SCSI if BLK && SCSI
> +	select DM_SERIAL if SERIAL
>  	select DM_SPI if SPI
>  	select DM_SPI_FLASH if SPI
> -	select DM_SCSI if SCSI
> -	select DM_SERIAL
>  	select GPIO_EXTRA_HEADER
>  	select OF_BOARD_SETUP
>  	select OF_CONTROL
>  	select OF_SEPARATE
>  	select PINCTRL
> -	select SPECIFY_CONSOLE_INDEX
> +	select SPECIFY_CONSOLE_INDEX if SERIAL
>  	select SPL_SEPARATE_BSS if SPL
>  	select SPL_STACK_R if SPL
>  	select SPL_SYS_MALLOC_SIMPLE if SPL
>  	select SPL_SYS_THUMB_BUILD if !ARM64
> -	select SUNXI_GPIO
> -	select SYS_NS16550
> +	select SUNXI_GPIO if GPIO
> +	select SYS_NS16550 if SERIAL
>  	select SYS_THUMB_BUILD if !ARM64
>  	select USB if DISTRO_DEFAULTS
>  	select USB_KEYBOARD if DISTRO_DEFAULTS && USB_HOST


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: [PATCH 04/22] sunxi: Hide image type selection if SPL is disabled
  2022-11-01  5:08 ` [PATCH 04/22] sunxi: Hide image type selection if SPL is disabled Samuel Holland
@ 2022-11-11  1:12   ` Andre Przywara
  0 siblings, 0 replies; 29+ messages in thread
From: Andre Przywara @ 2022-11-11  1:12 UTC (permalink / raw)
  To: Samuel Holland; +Cc: Jagan Teki, u-boot

On Tue,  1 Nov 2022 00:08:16 -0500
Samuel Holland <samuel@sholland.org> wrote:

> This choice is meaningless when SPL is disabled. Hide it to avoid any
> possible confusion.
> 
> Signed-off-by: Samuel Holland <samuel@sholland.org>

Reviewed-by: Andre Przywara <andre.przywara@arm.com>

Cheers,
Andre

> ---
> 
>  board/sunxi/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
> index 084a8b0c6c..42f61df5c5 100644
> --- a/board/sunxi/Kconfig
> +++ b/board/sunxi/Kconfig
> @@ -1,5 +1,6 @@
>  choice
>  	prompt "SPL Image Type"
> +	depends on SPL
>  	default SPL_IMAGE_TYPE_SUNXI_EGON
>  
>  config SPL_IMAGE_TYPE_SUNXI_EGON


^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2022-11-11  1:14 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-01  5:08 [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Samuel Holland
2022-11-01  5:08 ` [PATCH 01/22] sunxi: Fix default-enablement of USB host drivers Samuel Holland
2022-11-11  1:09   ` Andre Przywara
2022-11-01  5:08 ` [PATCH 02/22] sunxi: Remove unnecessary Kconfig selections Samuel Holland
2022-11-11  1:09   ` Andre Przywara
2022-11-01  5:08 ` [PATCH 03/22] sunxi: Add missing dependencies to " Samuel Holland
2022-11-11  1:11   ` Andre Przywara
2022-11-01  5:08 ` [PATCH 04/22] sunxi: Hide image type selection if SPL is disabled Samuel Holland
2022-11-11  1:12   ` Andre Przywara
2022-11-01  5:08 ` [PATCH 05/22] sunxi: Share the board Kconfig across architectures Samuel Holland
2022-11-01  5:08 ` [PATCH 06/22] sunxi: Move most Kconfig selections to the board Kconfig Samuel Holland
2022-11-01  5:08 ` [PATCH 07/22] sunxi: Globally enable SUPPORT_SPL Samuel Holland
2022-11-01  5:08 ` [PATCH 08/22] sunxi: Downgrade driver selections to implications Samuel Holland
2022-11-01  5:08 ` [PATCH 09/22] sunxi: Enable the I2C driver by default Samuel Holland
2022-11-01  5:08 ` [PATCH 10/22] sunxi: Move default values to the board Kconfig Samuel Holland
2022-11-01  5:08 ` [PATCH 11/22] sunxi: Hide the SUNXI_MINIMUM_DRAM_MB symbol Samuel Holland
2022-11-01  5:08 ` [PATCH 12/22] sunxi: Clean up the SPL_STACK_R_ADDR defaults Samuel Holland
2022-11-01  5:08 ` [PATCH 13/22] sunxi: Move PRE_CON_BUF_ADDR to the board Kconfig Samuel Holland
2022-11-01  5:08 ` [PATCH 14/22] sunxi: Move SPL_BSS_START_ADDR " Samuel Holland
2022-11-01  5:08 ` [PATCH 15/22] sunxi: Move SPL_TEXT_BASE " Samuel Holland
2022-11-01  5:08 ` [PATCH 16/22] sunxi: Move SYS_LOAD_ADDR " Samuel Holland
2022-11-01  5:08 ` [PATCH 17/22] sunxi: Move TEXT_BASE " Samuel Holland
2022-11-01  5:08 ` [PATCH 18/22] sunxi: Move most board options " Samuel Holland
2022-11-01  5:08 ` [PATCH 19/22] env: sunxi: Replace ARCH_SUNXI with BOARD_SUNXI Samuel Holland
2022-11-01  5:08 ` [PATCH 20/22] drivers: " Samuel Holland
2022-11-01  5:08 ` [PATCH 21/22] disk: " Samuel Holland
2022-11-01  5:08 ` [PATCH 22/22] spl: " Samuel Holland
2022-11-03 16:46 ` [PATCH 00/22] sunxi: Prepare platform Kconfig to support multiple architectures Andre Przywara
2022-11-06 22:32   ` Samuel Holland

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.