Skip to contentSkip to conversation

arm: sunxi: Use proper and meaningful Kconfig entries

PATCH Superseded Jagan Teki 1 participant 13 messages Mar 16, 2018 – Mar 19, 2018

Subsystems (3)

v4 of 5 Superseded Latest is v5 →

lore
Share & tools
lore

Jagan Teki

author
#0 lore raw

v4 cover arm: sunxi: Use proper and meaningful Kconfig entries

Current arch/arm/mach-sunxi/Makefile has improper build options which relies mostly on MACH_ options. This series get rid of those and added proper Kconfig options.

All Kconfig entry name are re-used from Linux so-that future dm conversion on these can be meaningful.

Changes for v4:
- Rename MFD_SUN6I_PRCM to SUN6I_PRCM
- Rename PMIC_AXP to AXP_PMIC_BUS
- Collect Acked-by from Maxime
Changes for v3:
- Rename SUNXI_RSB to SUN8I_RSB
- Drop or invisible few generic config bool strings
Changes for v2:
- Renamed PMIC_SUNXI to PMIC_AXP, so it PMIC driver implies to have AXP helpers and name start with PMIC_ sothat the notation can compatible with pmic dm-drivers

Jagan Teki (11):
sunxi: Add SUN6I_PRCM kconfig entry
sunxi: Add I2C_SUN6I_P2WI kconfig entry
sunxi: Use SUN6I_PRCM if used
sunxi: Add SUN8I_RSB kconfig entry
sunxi: Add AXP_PMIC_BUS kconfig entry
sunxi: add DRAM_SUN6I kconfig
sunxi: Add DRAM_SUN4I kconfig entry
sunxi: Add DRAM_SUN9I kconfig entry
sunxi: Add DRAM_SUN8I_A23 kconfig entry
sunxi: Add DRAM_SUN8I_A33 kconfig entry
sunxi: Add DRAM_SUN8I_A83T kconfig entry

 arch/arm/mach-sunxi/Kconfig  | 81 ++++++++++++++++++++++++++++++++++++++++++++
 arch/arm/mach-sunxi/Makefile | 30 ++++++----------
 drivers/power/Kconfig        |  5 +++
 3 files changed, 96 insertions(+), 20 deletions(-)
Signature · 1 line
2.14.3
author
#1 lore raw

PATCH v4 1/11 sunxi: Add SUN6I_PRCM kconfig entry

Add simple and meaningful kconfig option for prcm.c instead of using MACH type on Makefile.

PRCM (Power/Reset/Clock Management) is considered as a Multi-Functional Device, so used the same on Kconfig definition.

---
 arch/arm/mach-sunxi/Kconfig  | 7 +++++++
 arch/arm/mach-sunxi/Makefile | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)
arch/arm/mach-sunxi/Kconfig +7 -0
index dc48eefdef..2de35aa602 100644
@@ -6,6 +6,12 @@ config SPL_LDSCRIPT
 config IDENT_STRING
 	default " Allwinner Technology"
 
+config SUN6I_PRCM
+	bool
+	help
+	  Support for the PRCM (Power/Reset/Clock Management) unit available
+	  in A31 SoC.
+
 config SUNXI_HIGH_SRAM
 	bool
 	default n
@@ -87,6 +93,7 @@ config MACH_SUN6I
 	select CPU_V7_HAS_NONSEC
 	select CPU_V7_HAS_VIRT
 	select ARCH_SUPPORT_PSCI
+	select SUN6I_PRCM
 	select SUNXI_GEN_SUN6I
 	select SUPPORT_SPL
 	select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
arch/arm/mach-sunxi/Makefile +1 -1
index 6ddf682764..9713fd5a29 100644
@@ -16,7 +16,7 @@ obj-y	+= pinmux.o
 ifndef CONFIG_MACH_SUN9I
 obj-y	+= usb_phy.o
 endif
-obj-$(CONFIG_MACH_SUN6I)	+= prcm.o
+obj-$(CONFIG_SUN6I_PRCM)	+= prcm.o
 obj-$(CONFIG_MACH_SUN8I)	+= prcm.o
 obj-$(CONFIG_MACH_SUN9I)	+= prcm.o
 obj-$(CONFIG_MACH_SUN6I)	+= p2wi.o
Signature · 1 line
2.14.3
author
#2 lore raw

PATCH v4 2/11 sunxi: Add I2C_SUN6I_P2WI kconfig entry

In reply to Jagan Teki

Add simple and meaningful kconfig option for p2wi.c instead of using MACH type on Makefile.

p2wi is an I2C controller, so used the same on kconfig definition.

---
 arch/arm/mach-sunxi/Kconfig  | 12 ++++++++++++
 arch/arm/mach-sunxi/Makefile |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)
arch/arm/mach-sunxi/Kconfig +12 -0
index 2de35aa602..6022d581e4 100644
@@ -6,6 +6,17 @@ config SPL_LDSCRIPT
 config IDENT_STRING
 	default " Allwinner Technology"
 
+config I2C_SUN6I_P2WI
+	bool "Allwinner sun6i internal P2WI controller"
+	help
+	  If you say yes to this option, support will be included for the
+	  P2WI (Push/Pull 2 Wire Interface) controller embedded in some sunxi
+	  SOCs.
+	  The P2WI looks like an SMBus controller (which supports only byte
+	  accesses), except that it only supports one slave device.
+	  This interface is used to connect to specific PMIC devices (like the
+	  AXP221).
+
 config SUN6I_PRCM
 	bool
 	help
@@ -93,6 +104,7 @@ config MACH_SUN6I
 	select CPU_V7_HAS_NONSEC
 	select CPU_V7_HAS_VIRT
 	select ARCH_SUPPORT_PSCI
+	select I2C_SUN6I_P2WI
 	select SUN6I_PRCM
 	select SUNXI_GEN_SUN6I
 	select SUPPORT_SPL
arch/arm/mach-sunxi/Makefile +1 -1
index 9713fd5a29..2317b76393 100644
@@ -16,10 +16,10 @@ obj-y	+= pinmux.o
 ifndef CONFIG_MACH_SUN9I
 obj-y	+= usb_phy.o
 endif
+obj-$(CONFIG_I2C_SUN6I_P2WI)	+= p2wi.o
 obj-$(CONFIG_SUN6I_PRCM)	+= prcm.o
 obj-$(CONFIG_MACH_SUN8I)	+= prcm.o
 obj-$(CONFIG_MACH_SUN9I)	+= prcm.o
-obj-$(CONFIG_MACH_SUN6I)	+= p2wi.o
 obj-$(CONFIG_MACH_SUN8I)	+= rsb.o
 obj-$(CONFIG_MACH_SUN9I)	+= rsb.o
 obj-$(CONFIG_MACH_SUN4I)	+= clock_sun4i.o
Signature · 1 line
2.14.3
author
#3 lore raw

PATCH v4 3/11 sunxi: Use SUN6I_PRCM if used

In reply to Jagan Teki

SUN6I_PRCM is also used for SUN8I and SUN9I, so
select the same on respective MACH types.

---
 arch/arm/mach-sunxi/Kconfig  | 2 ++
 arch/arm/mach-sunxi/Makefile | 2 --
 2 files changed, 2 insertions(+), 2 deletions(-)
arch/arm/mach-sunxi/Kconfig +2 -0
index 6022d581e4..a4455a6f22 100644
@@ -182,6 +182,7 @@ config MACH_SUN8I_V3S
 config MACH_SUN9I
 	bool "sun9i (Allwinner A80)"
 	select CPU_V7
+	select SUN6I_PRCM
 	select SUNXI_HIGH_SRAM
 	select SUNXI_GEN_SUN6I
 	select SUPPORT_SPL
@@ -212,6 +213,7 @@ endchoice
 # The sun8i SoCs share a lot, this helps to avoid a lot of "if A23 || A33"
 config MACH_SUN8I
 	bool
+	select SUN6I_PRCM
 	default y if MACH_SUN8I_A23
 	default y if MACH_SUN8I_A33
 	default y if MACH_SUN8I_A83T
arch/arm/mach-sunxi/Makefile +0 -2
index 2317b76393..342300e1d7 100644
@@ -18,8 +18,6 @@ obj-y	+= usb_phy.o
 endif
 obj-$(CONFIG_I2C_SUN6I_P2WI)	+= p2wi.o
 obj-$(CONFIG_SUN6I_PRCM)	+= prcm.o
-obj-$(CONFIG_MACH_SUN8I)	+= prcm.o
-obj-$(CONFIG_MACH_SUN9I)	+= prcm.o
 obj-$(CONFIG_MACH_SUN8I)	+= rsb.o
 obj-$(CONFIG_MACH_SUN9I)	+= rsb.o
 obj-$(CONFIG_MACH_SUN4I)	+= clock_sun4i.o
Signature · 1 line
2.14.3
author
#4 lore raw

PATCH v4 4/11 sunxi: Add SUN8I_RSB kconfig entry

In reply to Jagan Teki

Add simple and meaningful kconfig option for rsb.c instead of using MACH type on Makefile.

---
 arch/arm/mach-sunxi/Kconfig  | 10 ++++++++++
 arch/arm/mach-sunxi/Makefile |  3 +--
 2 files changed, 11 insertions(+), 2 deletions(-)
arch/arm/mach-sunxi/Kconfig +10 -0
index a4455a6f22..5acdb53c63 100644
@@ -23,6 +23,14 @@ config SUN6I_PRCM
 	  Support for the PRCM (Power/Reset/Clock Management) unit available
 	  in A31 SoC.
 
+config SUN8I_RSB
+	bool "Allwinner sunXi Reduced Serial Bus Driver"
+	help
+	  Say y here to enable support for Allwinner's Reduced Serial Bus
+	  (RSB) support. This controller is responsible for communicating
+	  with various RSB based devices, such as AXP223, AXP8XX PMICs,
+	  and AC100/AC200 ICs.
+
 config SUNXI_HIGH_SRAM
 	bool
 	default n
@@ -185,6 +193,7 @@ config MACH_SUN9I
 	select SUN6I_PRCM
 	select SUNXI_HIGH_SRAM
 	select SUNXI_GEN_SUN6I
+	select SUN8I_RSB
 	select SUPPORT_SPL
 
 config MACH_SUN50I
@@ -213,6 +222,7 @@ endchoice
 # The sun8i SoCs share a lot, this helps to avoid a lot of "if A23 || A33"
 config MACH_SUN8I
 	bool
+	select SUN8I_RSB
 	select SUN6I_PRCM
 	default y if MACH_SUN8I_A23
 	default y if MACH_SUN8I_A33
arch/arm/mach-sunxi/Makefile +1 -2
index 342300e1d7..f56bb8cc0f 100644
@@ -18,8 +18,7 @@ obj-y	+= usb_phy.o
 endif
 obj-$(CONFIG_I2C_SUN6I_P2WI)	+= p2wi.o
 obj-$(CONFIG_SUN6I_PRCM)	+= prcm.o
-obj-$(CONFIG_MACH_SUN8I)	+= rsb.o
-obj-$(CONFIG_MACH_SUN9I)	+= rsb.o
+obj-$(CONFIG_SUN8I_RSB)		+= rsb.o
 obj-$(CONFIG_MACH_SUN4I)	+= clock_sun4i.o
 obj-$(CONFIG_MACH_SUN5I)	+= clock_sun4i.o
 obj-$(CONFIG_MACH_SUN6I)	+= clock_sun6i.o
Signature · 1 line
2.14.3
author
#5 lore raw

PATCH v4 5/11 sunxi: Add AXP_PMIC_BUS kconfig entry

In reply to Jagan Teki

Add simple and meaningful kconfig option for pmic_bus.c instead of using MACH type on Makefile.

---
 arch/arm/mach-sunxi/Kconfig  | 6 ++++++
 arch/arm/mach-sunxi/Makefile | 7 +------
 drivers/power/Kconfig        | 5 +++++
 3 files changed, 12 insertions(+), 6 deletions(-)
arch/arm/mach-sunxi/Kconfig +6 -0
index 5acdb53c63..b5a461d9ea 100644
@@ -23,6 +23,12 @@ config SUN6I_PRCM
 	  Support for the PRCM (Power/Reset/Clock Management) unit available
 	  in A31 SoC.
 
+config AXP_PMIC_BUS
+	bool "Sunxi AXP PMIC bus access helpers"
+	help
+	  Select this PMIC bus access helpers for Sunxi platform PRCM or other
+	  AXP family PMIC devices.
+
 config SUN8I_RSB
 	bool "Allwinner sunXi Reduced Serial Bus Driver"
 	help
arch/arm/mach-sunxi/Makefile +1 -6
index f56bb8cc0f..94b42ccbd6 100644
@@ -18,6 +18,7 @@ obj-y	+= usb_phy.o
 endif
 obj-$(CONFIG_I2C_SUN6I_P2WI)	+= p2wi.o
 obj-$(CONFIG_SUN6I_PRCM)	+= prcm.o
+obj-$(CONFIG_AXP_PMIC_BUS)	+= pmic_bus.o
 obj-$(CONFIG_SUN8I_RSB)		+= rsb.o
 obj-$(CONFIG_MACH_SUN4I)	+= clock_sun4i.o
 obj-$(CONFIG_MACH_SUN5I)	+= clock_sun4i.o
@@ -31,12 +32,6 @@ obj-$(CONFIG_MACH_SUN8I)	+= clock_sun6i.o
 endif
 obj-$(CONFIG_MACH_SUN9I)	+= clock_sun9i.o gtbus_sun9i.o
 
-obj-$(CONFIG_AXP152_POWER)	+= pmic_bus.o
-obj-$(CONFIG_AXP209_POWER)	+= pmic_bus.o
-obj-$(CONFIG_AXP221_POWER)	+= pmic_bus.o
-obj-$(CONFIG_AXP809_POWER)	+= pmic_bus.o
-obj-$(CONFIG_AXP818_POWER)	+= pmic_bus.o
-
 ifdef CONFIG_SPL_BUILD
 obj-$(CONFIG_MACH_SUN4I)	+= dram_sun4i.o
 obj-$(CONFIG_MACH_SUN5I)	+= dram_sun4i.o
drivers/power/Kconfig +5 -0
index d8c107e206..1a3852442a 100644
@@ -22,6 +22,7 @@ config SUNXI_NO_PMIC
 config AXP152_POWER
 	bool "axp152 pmic support"
 	depends on MACH_SUN5I
+	select AXP_PMIC_BUS
 	select CMD_POWEROFF
 	---help---
 	Select this to enable support for the axp152 pmic found on most
@@ -30,6 +31,7 @@ config AXP152_POWER
 config AXP209_POWER
 	bool "axp209 pmic support"
 	depends on MACH_SUN4I || MACH_SUN5I || MACH_SUN7I
+	select AXP_PMIC_BUS
 	select CMD_POWEROFF
 	---help---
 	Select this to enable support for the axp209 pmic found on most
@@ -38,6 +40,7 @@ config AXP209_POWER
 config AXP221_POWER
 	bool "axp221 / axp223 pmic support"
 	depends on MACH_SUN6I || MACH_SUN8I_A23 || MACH_SUN8I_A33 || MACH_SUN8I_R40
+	select AXP_PMIC_BUS
 	select CMD_POWEROFF
 	---help---
 	Select this to enable support for the axp221/axp223 pmic found on most
@@ -46,6 +49,7 @@ config AXP221_POWER
 config AXP809_POWER
 	bool "axp809 pmic support"
 	depends on MACH_SUN9I
+	select AXP_PMIC_BUS
 	select CMD_POWEROFF
 	---help---
 	Say y here to enable support for the axp809 pmic found on A80 boards.
@@ -53,6 +57,7 @@ config AXP809_POWER
 config AXP818_POWER
 	bool "axp818 pmic support"
 	depends on MACH_SUN8I_A83T
+	select AXP_PMIC_BUS
 	select CMD_POWEROFF
 	---help---
 	Say y here to enable support for the axp818 pmic found on
Signature · 1 line
2.14.3
author
#6 lore raw

PATCH v4 6/11 sunxi: add DRAM_SUN6I kconfig

In reply to Jagan Teki

Add proper and simple kconfig option for dram_sun6i.c instead of using MACH type on Makefile.

---
 arch/arm/mach-sunxi/Kconfig  | 7 +++++++
 arch/arm/mach-sunxi/Makefile | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)
arch/arm/mach-sunxi/Kconfig +7 -0
index b5a461d9ea..27af4279f5 100644
@@ -6,6 +6,12 @@ config SPL_LDSCRIPT
 config IDENT_STRING
 	default " Allwinner Technology"
 
+config DRAM_SUN6I
+	bool
+	help
+	  Select this dram controller driver for Sun6i platforms,
+	  like A31/A31s.
+
 config I2C_SUN6I_P2WI
 	bool "Allwinner sun6i internal P2WI controller"
 	help
@@ -118,6 +124,7 @@ config MACH_SUN6I
 	select CPU_V7_HAS_NONSEC
 	select CPU_V7_HAS_VIRT
 	select ARCH_SUPPORT_PSCI
+	select DRAM_SUN6I
 	select I2C_SUN6I_P2WI
 	select SUN6I_PRCM
 	select SUNXI_GEN_SUN6I
arch/arm/mach-sunxi/Makefile +1 -1
index 94b42ccbd6..149859bcf3 100644
@@ -33,9 +33,9 @@ endif
 obj-$(CONFIG_MACH_SUN9I)	+= clock_sun9i.o gtbus_sun9i.o
 
 ifdef CONFIG_SPL_BUILD
+obj-$(CONFIG_DRAM_SUN6I)	+= dram_sun6i.o
 obj-$(CONFIG_MACH_SUN4I)	+= dram_sun4i.o
 obj-$(CONFIG_MACH_SUN5I)	+= dram_sun4i.o
-obj-$(CONFIG_MACH_SUN6I)	+= dram_sun6i.o
 obj-$(CONFIG_MACH_SUN7I)	+= dram_sun4i.o
 obj-$(CONFIG_MACH_SUN8I_A23)	+= dram_sun8i_a23.o
 obj-$(CONFIG_MACH_SUN8I_A33)	+= dram_sun8i_a33.o
Signature · 1 line
2.14.3
author
#7 lore raw

PATCH v4 7/11 sunxi: Add DRAM_SUN4I kconfig entry

In reply to Jagan Teki

Add proper and simple kconfig option for dram_sun4i.c instead of using MACH type on Makefile.

---
 arch/arm/mach-sunxi/Kconfig  | 9 +++++++++
 arch/arm/mach-sunxi/Makefile | 4 +---
 2 files changed, 10 insertions(+), 3 deletions(-)
arch/arm/mach-sunxi/Kconfig +9 -0
index 27af4279f5..1d8540869d 100644
@@ -6,6 +6,12 @@ config SPL_LDSCRIPT
 config IDENT_STRING
 	default " Allwinner Technology"
 
+config DRAM_SUN4I
+	bool
+	help
+	  Select this dram controller driver for Sun4/5/7i platforms,
+	  like A10/A13/A20.
+
 config DRAM_SUN6I
 	bool
 	help
@@ -108,6 +114,7 @@ config MACH_SUN4I
 	bool "sun4i (Allwinner A10)"
 	select CPU_V7
 	select ARM_CORTEX_CPU_IS_UP
+	select DRAM_SUN4I
 	select SUNXI_GEN_SUN4I
 	select SUPPORT_SPL
 
@@ -115,6 +122,7 @@ config MACH_SUN5I
 	bool "sun5i (Allwinner A13)"
 	select CPU_V7
 	select ARM_CORTEX_CPU_IS_UP
+	select DRAM_SUN4I
 	select SUNXI_GEN_SUN4I
 	select SUPPORT_SPL
 
@@ -137,6 +145,7 @@ config MACH_SUN7I
 	select CPU_V7_HAS_NONSEC
 	select CPU_V7_HAS_VIRT
 	select ARCH_SUPPORT_PSCI
+	select DRAM_SUN4I
 	select SUNXI_GEN_SUN4I
 	select SUPPORT_SPL
 	select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
arch/arm/mach-sunxi/Makefile +1 -3
index 149859bcf3..47c4227693 100644
@@ -33,10 +33,8 @@ endif
 obj-$(CONFIG_MACH_SUN9I)	+= clock_sun9i.o gtbus_sun9i.o
 
 ifdef CONFIG_SPL_BUILD
+obj-$(CONFIG_DRAM_SUN4I)	+= dram_sun4i.o
 obj-$(CONFIG_DRAM_SUN6I)	+= dram_sun6i.o
-obj-$(CONFIG_MACH_SUN4I)	+= dram_sun4i.o
-obj-$(CONFIG_MACH_SUN5I)	+= dram_sun4i.o
-obj-$(CONFIG_MACH_SUN7I)	+= dram_sun4i.o
 obj-$(CONFIG_MACH_SUN8I_A23)	+= dram_sun8i_a23.o
 obj-$(CONFIG_MACH_SUN8I_A33)	+= dram_sun8i_a33.o
 obj-$(CONFIG_MACH_SUN8I_A83T)	+= dram_sun8i_a83t.o
Signature · 1 line
2.14.3
author
#8 lore raw

PATCH v4 8/11 sunxi: Add DRAM_SUN9I kconfig entry

In reply to Jagan Teki

Add proper and simple kconfig option for dram_sun9i.c instead of using MACH type on Makefile.

---
 arch/arm/mach-sunxi/Kconfig  | 7 +++++++
 arch/arm/mach-sunxi/Makefile | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)
arch/arm/mach-sunxi/Kconfig +7 -0
index 1d8540869d..878cc56c39 100644
@@ -18,6 +18,12 @@ config DRAM_SUN6I
 	  Select this dram controller driver for Sun6i platforms,
 	  like A31/A31s.
 
+config DRAM_SUN9I
+	bool
+	help
+	  Select this dram controller driver for Sun9i platforms,
+	  like A80.
+
 config I2C_SUN6I_P2WI
 	bool "Allwinner sun6i internal P2WI controller"
 	help
@@ -212,6 +218,7 @@ config MACH_SUN8I_V3S
 config MACH_SUN9I
 	bool "sun9i (Allwinner A80)"
 	select CPU_V7
+	select DRAM_SUN9I
 	select SUN6I_PRCM
 	select SUNXI_HIGH_SRAM
 	select SUNXI_GEN_SUN6I
arch/arm/mach-sunxi/Makefile +1 -1
index 47c4227693..b515419f76 100644
@@ -35,11 +35,11 @@ obj-$(CONFIG_MACH_SUN9I)	+= clock_sun9i.o gtbus_sun9i.o
 ifdef CONFIG_SPL_BUILD
 obj-$(CONFIG_DRAM_SUN4I)	+= dram_sun4i.o
 obj-$(CONFIG_DRAM_SUN6I)	+= dram_sun6i.o
+obj-$(CONFIG_DRAM_SUN9I)	+= dram_sun9i.o
 obj-$(CONFIG_MACH_SUN8I_A23)	+= dram_sun8i_a23.o
 obj-$(CONFIG_MACH_SUN8I_A33)	+= dram_sun8i_a33.o
 obj-$(CONFIG_MACH_SUN8I_A83T)	+= dram_sun8i_a83t.o
 obj-$(CONFIG_SPL_SPI_SUNXI)	+= spl_spi_sunxi.o
 obj-$(CONFIG_SUNXI_DRAM_DW)	+= dram_sunxi_dw.o
 obj-$(CONFIG_SUNXI_DRAM_DW)	+= dram_timings/
-obj-$(CONFIG_MACH_SUN9I)	+= dram_sun9i.o
 endif
Signature · 1 line
2.14.3
author
#9 lore raw

PATCH v4 9/11 sunxi: Add DRAM_SUN8I_A23 kconfig entry

In reply to Jagan Teki

Add proper and simple kconfig option for dram_sun8i_a23.c instead of using MACH type on Makefile.

---
 arch/arm/mach-sunxi/Kconfig  | 7 +++++++
 arch/arm/mach-sunxi/Makefile | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)
arch/arm/mach-sunxi/Kconfig +7 -0
index 878cc56c39..1c9596fb89 100644
@@ -18,6 +18,12 @@ config DRAM_SUN6I
 	  Select this dram controller driver for Sun6i platforms,
 	  like A31/A31s.
 
+config DRAM_SUN8I_A23
+	bool
+	help
+	  Select this dram controller driver for Sun8i platforms,
+	  for A23 SOC.
+
 config DRAM_SUN9I
 	bool
 	help
@@ -162,6 +168,7 @@ config MACH_SUN8I_A23
 	select CPU_V7_HAS_NONSEC
 	select CPU_V7_HAS_VIRT
 	select ARCH_SUPPORT_PSCI
+	select DRAM_SUN8I_A23
 	select SUNXI_GEN_SUN6I
 	select SUPPORT_SPL
 	select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
arch/arm/mach-sunxi/Makefile +1 -1
index b515419f76..d487e5f187 100644
@@ -35,8 +35,8 @@ obj-$(CONFIG_MACH_SUN9I)	+= clock_sun9i.o gtbus_sun9i.o
 ifdef CONFIG_SPL_BUILD
 obj-$(CONFIG_DRAM_SUN4I)	+= dram_sun4i.o
 obj-$(CONFIG_DRAM_SUN6I)	+= dram_sun6i.o
+obj-$(CONFIG_DRAM_SUN8I_A23)	+= dram_sun8i_a23.o
 obj-$(CONFIG_DRAM_SUN9I)	+= dram_sun9i.o
-obj-$(CONFIG_MACH_SUN8I_A23)	+= dram_sun8i_a23.o
 obj-$(CONFIG_MACH_SUN8I_A33)	+= dram_sun8i_a33.o
 obj-$(CONFIG_MACH_SUN8I_A83T)	+= dram_sun8i_a83t.o
 obj-$(CONFIG_SPL_SPI_SUNXI)	+= spl_spi_sunxi.o
Signature · 1 line
2.14.3
author
#10 lore raw

PATCH v4 10/11 sunxi: Add DRAM_SUN8I_A33 kconfig entry

In reply to Jagan Teki

Add proper and simple kconfig option for dram_sun8i_a33.c instead of using MACH type on Makefile.

---
 arch/arm/mach-sunxi/Kconfig  | 7 +++++++
 arch/arm/mach-sunxi/Makefile | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)
arch/arm/mach-sunxi/Kconfig +7 -0
index 1c9596fb89..877a4dcc46 100644
@@ -24,6 +24,12 @@ config DRAM_SUN8I_A23
 	  Select this dram controller driver for Sun8i platforms,
 	  for A23 SOC.
 
+config DRAM_SUN8I_A33
+	bool
+	help
+	  Select this dram controller driver for Sun8i platforms,
+	  for A33 SOC.
+
 config DRAM_SUN9I
 	bool
 	help
@@ -179,6 +185,7 @@ config MACH_SUN8I_A33
 	select CPU_V7_HAS_NONSEC
 	select CPU_V7_HAS_VIRT
 	select ARCH_SUPPORT_PSCI
+	select DRAM_SUN8I_A33
 	select SUNXI_GEN_SUN6I
 	select SUPPORT_SPL
 	select ARMV7_BOOT_SEC_DEFAULT if OLD_SUNXI_KERNEL_COMPAT
arch/arm/mach-sunxi/Makefile +1 -1
index d487e5f187..09564027bb 100644
@@ -36,8 +36,8 @@ ifdef CONFIG_SPL_BUILD
 obj-$(CONFIG_DRAM_SUN4I)	+= dram_sun4i.o
 obj-$(CONFIG_DRAM_SUN6I)	+= dram_sun6i.o
 obj-$(CONFIG_DRAM_SUN8I_A23)	+= dram_sun8i_a23.o
+obj-$(CONFIG_DRAM_SUN8I_A33)	+= dram_sun8i_a33.o
 obj-$(CONFIG_DRAM_SUN9I)	+= dram_sun9i.o
-obj-$(CONFIG_MACH_SUN8I_A33)	+= dram_sun8i_a33.o
 obj-$(CONFIG_MACH_SUN8I_A83T)	+= dram_sun8i_a83t.o
 obj-$(CONFIG_SPL_SPI_SUNXI)	+= spl_spi_sunxi.o
 obj-$(CONFIG_SUNXI_DRAM_DW)	+= dram_sunxi_dw.o
Signature · 1 line
2.14.3
author
#11 lore raw

PATCH v4 11/11 sunxi: Add DRAM_SUN8I_A83T kconfig entry

In reply to Jagan Teki

Add proper and simple kconfig option for dram_sun8i_a83t.c instead of using MACH type on Makefile.

---
 arch/arm/mach-sunxi/Kconfig  | 7 +++++++
 arch/arm/mach-sunxi/Makefile | 2 +-
 2 files changed, 8 insertions(+), 1 deletion(-)
arch/arm/mach-sunxi/Kconfig +7 -0
index 877a4dcc46..a0a633f224 100644
@@ -30,6 +30,12 @@ config DRAM_SUN8I_A33
 	  Select this dram controller driver for Sun8i platforms,
 	  for A33 SOC.
 
+config DRAM_SUN8I_A83T
+	bool
+	help
+	  Select this dram controller driver for Sun8i platforms,
+	  for A83T SOC.
+
 config DRAM_SUN9I
 	bool
 	help
@@ -193,6 +199,7 @@ config MACH_SUN8I_A33
 config MACH_SUN8I_A83T
 	bool "sun8i (Allwinner A83T)"
 	select CPU_V7
+	select DRAM_SUN8I_A83T
 	select SUNXI_GEN_SUN6I
 	select MMC_SUNXI_HAS_NEW_MODE
 	select SUPPORT_SPL
arch/arm/mach-sunxi/Makefile +1 -1
index 09564027bb..b0e5ed0096 100644
@@ -37,8 +37,8 @@ obj-$(CONFIG_DRAM_SUN4I)	+= dram_sun4i.o
 obj-$(CONFIG_DRAM_SUN6I)	+= dram_sun6i.o
 obj-$(CONFIG_DRAM_SUN8I_A23)	+= dram_sun8i_a23.o
 obj-$(CONFIG_DRAM_SUN8I_A33)	+= dram_sun8i_a33.o
+obj-$(CONFIG_DRAM_SUN8I_A83T)	+= dram_sun8i_a83t.o
 obj-$(CONFIG_DRAM_SUN9I)	+= dram_sun9i.o
-obj-$(CONFIG_MACH_SUN8I_A83T)	+= dram_sun8i_a83t.o
 obj-$(CONFIG_SPL_SPI_SUNXI)	+= spl_spi_sunxi.o
 obj-$(CONFIG_SUNXI_DRAM_DW)	+= dram_sunxi_dw.o
 obj-$(CONFIG_SUNXI_DRAM_DW)	+= dram_timings/
Signature · 1 line
2.14.3
author
#12 lore raw

v4 cover arm: sunxi: Use proper and meaningful Kconfig entries

In reply to Jagan Teki
Quoted 18 lines · Jagan Teki

Current arch/arm/mach-sunxi/Makefile has improper build options which relies mostly on MACH_ options. This series get rid of those and added proper Kconfig options.

All Kconfig entry name are re-used from Linux so-that future dm conversion on these can be meaningful.

Changes for v4:
- Rename MFD_SUN6I_PRCM to SUN6I_PRCM
- Rename PMIC_AXP to AXP_PMIC_BUS
- Collect Acked-by from Maxime
Changes for v3:
- Rename SUNXI_RSB to SUN8I_RSB
- Drop or invisible few generic config bool strings
Changes for v2:
- Renamed PMIC_SUNXI to PMIC_AXP, so it PMIC driver implies to have AXP helpers and name start with PMIC_ sothat the notation can compatible with pmic dm-drivers

Quoted 12 lines

Jagan Teki (11):
sunxi: Add SUN6I_PRCM kconfig entry
sunxi: Add I2C_SUN6I_P2WI kconfig entry
sunxi: Use SUN6I_PRCM if used
sunxi: Add SUN8I_RSB kconfig entry
sunxi: Add AXP_PMIC_BUS kconfig entry
sunxi: add DRAM_SUN6I kconfig
sunxi: Add DRAM_SUN4I kconfig entry
sunxi: Add DRAM_SUN9I kconfig entry
sunxi: Add DRAM_SUN8I_A23 kconfig entry
sunxi: Add DRAM_SUN8I_A33 kconfig entry
sunxi: Add DRAM_SUN8I_A83T kconfig entry

Applied to u-boot-sunxi/master