lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20240325172619.113661-3-afd@ti.com>
Date: Mon, 25 Mar 2024 12:26:19 -0500
From: Andrew Davis <afd@...com>
To: Russell King <linux@...linux.org.uk>, Baruch Siach <baruch@...s.co.il>,
        Vladimir Zapolskiy <vz@...ia.com>,
        Masami Hiramatsu <mhiramat@...nel.org>, Arnd Bergmann <arnd@...db.de>,
        Geert Uytterhoeven <geert+renesas@...der.be>
CC: <linux-arm-kernel@...ts.infradead.org>, <linux-kernel@...r.kernel.org>,
        Andrew Davis <afd@...com>
Subject: [PATCH v2 3/3] ARM: mach-ixp4xx: Rework support and directory structure

Having a platform need a mach-* directory should be seen as a negative,
it means the platform needs special non-standard handling. ARM64 support
does not allow mach-* directories at all. While we may not get to that
given all the non-standard architectures we support, we should still try
to get as close as we can and reduce the number of mach directories.

The mach-ixp4xx/ directory and files, provides just one "feature":
having the kernel print the machine name if the DTB does not also contain
a "model" string (which they always do). To reduce the number of mach-*
directories let's do without that feature and remove this directory.

Note the fallback machine has a default l2c_aux_mask value set to ~0,
which is different than the value of 0 used when none is provided. This
is safe here as this platform does not use an l2x0 cache controller.

Signed-off-by: Andrew Davis <afd@...com>
---

Changes from v1:
 - Updated commit desc with l2c_aux_mask info
 - Rebased on v6.9-rc1

 MAINTAINERS                      |  1 -
 arch/arm/Kconfig.platforms       | 19 +++++++++++++++++++
 arch/arm/mach-ixp4xx/Kconfig     | 19 -------------------
 arch/arm/mach-ixp4xx/Makefile    |  2 --
 arch/arm/mach-ixp4xx/ixp4xx-of.c | 22 ----------------------
 5 files changed, 19 insertions(+), 44 deletions(-)
 delete mode 100644 arch/arm/mach-ixp4xx/Kconfig
 delete mode 100644 arch/arm/mach-ixp4xx/Makefile
 delete mode 100644 arch/arm/mach-ixp4xx/ixp4xx-of.c

diff --git a/MAINTAINERS b/MAINTAINERS
index 947186f0b0c64..a0fcb6d27c0e3 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2270,7 +2270,6 @@ F:	Documentation/devicetree/bindings/memory-controllers/intel,ixp4xx-expansion*
 F:	Documentation/devicetree/bindings/rng/intel,ixp46x-rng.yaml
 F:	Documentation/devicetree/bindings/timer/intel,ixp4xx-timer.yaml
 F:	arch/arm/boot/dts/intel/ixp/
-F:	arch/arm/mach-ixp4xx/
 F:	drivers/bus/intel-ixp4xx-eb.c
 F:	drivers/char/hw_random/ixp4xx-rng.c
 F:	drivers/clocksource/timer-ixp4xx.c
diff --git a/arch/arm/Kconfig.platforms b/arch/arm/Kconfig.platforms
index 29fbed968d361..bf2185f87180c 100644
--- a/arch/arm/Kconfig.platforms
+++ b/arch/arm/Kconfig.platforms
@@ -112,6 +112,25 @@ config ARCH_HPE_GXP
 
 endif
 
+config ARCH_IXP4XX
+	bool "IXP4xx-based platforms"
+	depends on ARCH_MULTI_V5
+	depends on CPU_BIG_ENDIAN
+	select ARM_APPENDED_DTB # Old Redboot bootloaders deployed
+	select CPU_XSCALE
+	select GPIO_IXP4XX
+	select GPIOLIB
+	select FORCE_PCI
+	select I2C
+	select I2C_IOP3XX
+	select IXP4XX_IRQ
+	select IXP4XX_TIMER
+	select USB_EHCI_BIG_ENDIAN_DESC
+	select USB_EHCI_BIG_ENDIAN_MMIO
+	select USE_OF
+	help
+	  Support for Intel's IXP4XX (XScale) family of processors.
+
 config ARCH_LPC18XX
 	bool "NXP LPC18xx/LPC43xx"
 	depends on ARM_SINGLE_ARMV7M
diff --git a/arch/arm/mach-ixp4xx/Kconfig b/arch/arm/mach-ixp4xx/Kconfig
deleted file mode 100644
index cb46802f5ce52..0000000000000
--- a/arch/arm/mach-ixp4xx/Kconfig
+++ /dev/null
@@ -1,19 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0-only
-menuconfig ARCH_IXP4XX
-	bool "IXP4xx-based platforms"
-	depends on ARCH_MULTI_V5
-	depends on CPU_BIG_ENDIAN
-	select ARM_APPENDED_DTB # Old Redboot bootloaders deployed
-	select CPU_XSCALE
-	select GPIO_IXP4XX
-	select GPIOLIB
-	select FORCE_PCI
-	select I2C
-	select I2C_IOP3XX
-	select IXP4XX_IRQ
-	select IXP4XX_TIMER
-	select USB_EHCI_BIG_ENDIAN_DESC
-	select USB_EHCI_BIG_ENDIAN_MMIO
-	select USE_OF
-	help
-	  Support for Intel's IXP4XX (XScale) family of processors.
diff --git a/arch/arm/mach-ixp4xx/Makefile b/arch/arm/mach-ixp4xx/Makefile
deleted file mode 100644
index 3d1c9d854c7f3..0000000000000
--- a/arch/arm/mach-ixp4xx/Makefile
+++ /dev/null
@@ -1,2 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0
-obj-y	+= ixp4xx-of.o
diff --git a/arch/arm/mach-ixp4xx/ixp4xx-of.c b/arch/arm/mach-ixp4xx/ixp4xx-of.c
deleted file mode 100644
index 1b4d84a5b02f6..0000000000000
--- a/arch/arm/mach-ixp4xx/ixp4xx-of.c
+++ /dev/null
@@ -1,22 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-/*
- * IXP4xx Device Tree boot support
- */
-#include <asm/mach/arch.h>
-
-/*
- * We handle 4 different SoC families. These compatible strings are enough
- * to provide the core so that different boards can add their more detailed
- * specifics.
- */
-static const char *ixp4xx_of_board_compat[] = {
-	"intel,ixp42x",
-	"intel,ixp43x",
-	"intel,ixp45x",
-	"intel,ixp46x",
-	NULL,
-};
-
-DT_MACHINE_START(IXP4XX_DT, "IXP4xx (Device Tree)")
-	.dt_compat	= ixp4xx_of_board_compat,
-MACHINE_END
-- 
2.39.2


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ