ARM: ep93xx: DT for the Cirrus ep93xx SoC platforms
authorNikita Shubin <nikita.shubin@maquefel.me>
Mon, 9 Sep 2024 08:10:57 +0000 (11:10 +0300)
committerArnd Bergmann <arnd@arndb.de>
Thu, 12 Sep 2024 14:33:11 +0000 (14:33 +0000)
Add compulsory device tree support to the Cirrus ep93xx ARMv4 platform.

- select PINCTRL_EP93xx
- select COMMON_CLK_EP93XX, as clock driver moved out of platform code
- select ARCH_HAS_RESET_CONTROLLER

Select ARM_ATAG_DTB_COMPAT to update device tree with information
about memory passed from bootloader.

We have to leave all MACH options as they are used for board checking
before decomp, to turn off watchdog and ethernet DMA.

Tested-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
Tested-by: Michael Peters <mpeters@embeddedTS.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Reviewed-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Andy Shevchenko <andy@kernel.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Kris Bahnsen <kris@embeddedTS.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Sergey Shtylyov <s.shtylyov@omp.ru>
Acked-by: Miquel Raynal <miquel.raynal@bootlin.com>
Acked-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Damien Le Moal <dlemoal@kernel.org>
Acked-by: Sebastian Reichel <sre@kernel.org>
Acked-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
arch/arm/Makefile
arch/arm/mach-ep93xx/Kconfig
arch/arm/mach-ep93xx/Makefile [deleted file]

index 71afdd98ddf27fe5e5e202416a93438e3bae9427..aafebf145738ab1a443c116a1bf648953f7afed4 100644 (file)
@@ -183,7 +183,6 @@ machine-$(CONFIG_ARCH_CLPS711X)             += clps711x
 machine-$(CONFIG_ARCH_DAVINCI)         += davinci
 machine-$(CONFIG_ARCH_DIGICOLOR)       += digicolor
 machine-$(CONFIG_ARCH_DOVE)            += dove
-machine-$(CONFIG_ARCH_EP93XX)          += ep93xx
 machine-$(CONFIG_ARCH_EXYNOS)          += exynos
 machine-$(CONFIG_ARCH_FOOTBRIDGE)      += footbridge
 machine-$(CONFIG_ARCH_GEMINI)          += gemini
index 703f3d232a60dbba00c8d125682adc049803ce5f..812b71dcf60e015825824592652b75204ed6aac4 100644 (file)
@@ -3,27 +3,27 @@ menuconfig ARCH_EP93XX
        bool "EP93xx-based"
        depends on ATAGS
        depends on ARCH_MULTI_V4T
+       # CONFIG_ARCH_MULTI_V7 is not set
        depends on CPU_LITTLE_ENDIAN
+       select ARCH_HAS_RESET_CONTROLLER
        select ARCH_SPARSEMEM_ENABLE
        select ARM_AMBA
        select ARM_VIC
+       select ARM_APPENDED_DTB # Old Redboot bootloaders deployed
+       select ARM_ATAG_DTB_COMPAT # we need this to update dt memory node
+       select COMMON_CLK_EP93XX
+       select EP93XX_TIMER
        select CLKSRC_MMIO
        select CPU_ARM920T
        select GPIOLIB
+       select PINCTRL
+       select PINCTRL_EP93XX
        help
          This enables support for the Cirrus EP93xx series of CPUs.
 
 if ARCH_EP93XX
 
-menu "Cirrus EP93xx Implementation Options"
-
-config EP93XX_SOC_COMMON
-       bool
-       default y
-       select SOC_BUS
-       select LEDS_GPIO_REGISTER
-
-comment "EP93xx Platforms"
+# menu "EP93xx Platforms"
 
 config MACH_BK3
        bool "Support Liebherr BK3.1"
@@ -103,6 +103,6 @@ config MACH_VISION_EP9307
          Say 'Y' here if you want your kernel to support the
          Vision Engraving Systems EP9307 SoM.
 
-endmenu
+endmenu
 
 endif
diff --git a/arch/arm/mach-ep93xx/Makefile b/arch/arm/mach-ep93xx/Makefile
deleted file mode 100644 (file)
index 62e3740..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0
-#
-# Makefile for the linux kernel.
-#
-obj-y                  := core.o clock.o timer-ep93xx.o
-
-obj-$(CONFIG_EP93XX_DMA)       += dma.o
-
-obj-$(CONFIG_MACH_EDB93XX)     += edb93xx.o
-obj-$(CONFIG_MACH_TS72XX)      += ts72xx.o
-obj-$(CONFIG_MACH_VISION_EP9307)+= vision_ep9307.o