2502a6506c
Rebase patch versatile-nommu.patch on top of v5.15. Signed-off-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
123 lines
4.4 KiB
Diff
123 lines
4.4 KiB
Diff
From 7c245ffc17a9ab6215830d4ecd8b2f9beddb487c Mon Sep 17 00:00:00 2001
|
|
From: Waldemar Brodkorb <wbx@openadk.org>
|
|
Date: Fri, 1 Feb 2019 11:36:20 +0100
|
|
Subject: [PATCH] arm-versatile-nommu: Linux patch
|
|
|
|
Originally made by Waldemar Brodkorb <wbx@openadk.org> from LKML.
|
|
|
|
Rename CLKSRC_OF to TIMER_OF (kernel >= 4.13)
|
|
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=bb0eb050a577a866cb47c2dc37596f1207f4c2d9
|
|
|
|
Remove GENERIC_CLOCKEVENTS since its enabled by default (kernel >= 5.11)
|
|
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=0774a6ed294b963dc76df2d8342ab86d030759ec
|
|
|
|
Select CONFIG_GENERIC_IRQ_MULTI_HANDLER since irqchip doesn't select it anymore (kernel >= 5.12)
|
|
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=a79f7051cccb6f3bcd3d2a0a058c7d5c79bb0371
|
|
|
|
Signed-Off-by: Waldemar Brodkorb <wbx@openadk.org>
|
|
[Gerome: reformated as a Git patch]
|
|
Signed-off-by: Gerome Burlats <gerome.burlats@smile.fr>
|
|
[Romain: fix Waldemar's authorship in Git patch]
|
|
Signed-off-by: Romain Naour <romain.naour@smile.fr>
|
|
---
|
|
arch/arm/Kconfig | 11 +++++++++++
|
|
arch/arm/Kconfig.debug | 3 ++-
|
|
arch/arm/include/asm/mach/map.h | 1 +
|
|
arch/arm/mach-versatile/Kconfig | 5 +++--
|
|
arch/arm/mach-versatile/Makefile.boot | 3 +++
|
|
arch/arm/mach-versatile/versatile_dt.c | 4 ++++
|
|
6 files changed, 24 insertions(+), 3 deletions(-)
|
|
create mode 100644 arch/arm/mach-versatile/Makefile.boot
|
|
|
|
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
|
|
index dcf2df6da98f..c2155c1a2eba 100644
|
|
--- a/arch/arm/Kconfig
|
|
+++ b/arch/arm/Kconfig
|
|
@@ -337,6 +337,17 @@ config ARM_SINGLE_ARMV7M
|
|
select SPARSE_IRQ
|
|
select USE_OF
|
|
|
|
+config ARM_SINGLE_ARCH_VERSATILE
|
|
+ bool "ARM Ltd. Versatile family"
|
|
+ depends on !MMU
|
|
+ select AUTO_ZRELADDR
|
|
+ select TIMER_OF
|
|
+ select COMMON_CLK
|
|
+ select GENERIC_IRQ_MULTI_HANDLER
|
|
+ select GPIOLIB
|
|
+ select SPARSE_IRQ
|
|
+ select USE_OF
|
|
+
|
|
config ARCH_EP93XX
|
|
bool "EP93xx-based"
|
|
select ARCH_SPARSEMEM_ENABLE
|
|
diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
|
|
index 98436702e0c7..7e63299ceb40 100644
|
|
--- a/arch/arm/Kconfig.debug
|
|
+++ b/arch/arm/Kconfig.debug
|
|
@@ -1891,7 +1891,8 @@ config DEBUG_UNCOMPRESS
|
|
config UNCOMPRESS_INCLUDE
|
|
string
|
|
default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
|
|
- PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
|
|
+ PLAT_SAMSUNG || ARM_SINGLE_ARMV7M || \
|
|
+ ARM_SINGLE_ARCH_VERSATILE
|
|
default "mach/uncompress.h"
|
|
|
|
config EARLY_PRINTK
|
|
diff --git a/arch/arm/include/asm/mach/map.h b/arch/arm/include/asm/mach/map.h
|
|
index 92282558caf7..90bd9c069ffc 100644
|
|
--- a/arch/arm/include/asm/mach/map.h
|
|
+++ b/arch/arm/include/asm/mach/map.h
|
|
@@ -59,6 +59,7 @@ extern int ioremap_page(unsigned long virt, unsigned long phys,
|
|
#else
|
|
#define iotable_init(map,num) do { } while (0)
|
|
#define vm_reserve_area_early(a,s,c) do { } while (0)
|
|
+#define debug_ll_io_init() do { } while (0)
|
|
#endif
|
|
|
|
#endif
|
|
diff --git a/arch/arm/mach-versatile/Kconfig b/arch/arm/mach-versatile/Kconfig
|
|
index d88e7725bf99..d38b90157f13 100644
|
|
--- a/arch/arm/mach-versatile/Kconfig
|
|
+++ b/arch/arm/mach-versatile/Kconfig
|
|
@@ -1,7 +1,8 @@
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
config ARCH_VERSATILE
|
|
- bool "ARM Ltd. Versatile family"
|
|
- depends on ARCH_MULTI_V5
|
|
+ bool "ARM Ltd. Versatile family" if ARCH_MULTI_V5
|
|
+ depends on ARCH_MULTI_V5 || ARM_SINGLE_ARCH_VERSATILE
|
|
+ default y if ARM_SINGLE_ARCH_VERSATILE
|
|
select ARM_AMBA
|
|
select ARM_TIMER_SP804
|
|
select ARM_VIC
|
|
diff --git a/arch/arm/mach-versatile/Makefile.boot b/arch/arm/mach-versatile/Makefile.boot
|
|
new file mode 100644
|
|
index 000000000000..eacfc3f5c33e
|
|
--- /dev/null
|
|
+++ b/arch/arm/mach-versatile/Makefile.boot
|
|
@@ -0,0 +1,3 @@
|
|
+# Empty file waiting for deletion once Makefile.boot isn't needed any more.
|
|
+# Patch waits for application at
|
|
+# http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=7889/1 .
|
|
diff --git a/arch/arm/mach-versatile/versatile_dt.c b/arch/arm/mach-versatile/versatile_dt.c
|
|
index 02ba68abe533..835b51bc597b 100644
|
|
--- a/arch/arm/mach-versatile/versatile_dt.c
|
|
+++ b/arch/arm/mach-versatile/versatile_dt.c
|
|
@@ -22,7 +22,11 @@
|
|
#include <asm/mach/map.h>
|
|
|
|
/* macro to get at MMIO space when running virtually */
|
|
+#ifdef CONFIG_MMU
|
|
#define IO_ADDRESS(x) (((x) & 0x0fffffff) + (((x) >> 4) & 0x0f000000) + 0xf0000000)
|
|
+#else
|
|
+#define IO_ADDRESS(x) (x)
|
|
+#endif
|
|
#define __io_address(n) ((void __iomem __force *)IO_ADDRESS(n))
|
|
|
|
/*
|
|
--
|
|
2.31.1
|
|
|