xtensa: move XCHAL_KIO_* definitions to kmem_layout.h
authorMax Filippov <jcmvbkbc@gmail.com>
Sat, 28 Sep 2019 04:28:47 +0000 (21:28 -0700)
committerMax Filippov <jcmvbkbc@gmail.com>
Mon, 21 Oct 2019 06:48:28 +0000 (23:48 -0700)
These address and size definitions define xtensa kernel memory layout,
move them from vectors.h to the kmem_layout.h

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
arch/xtensa/include/asm/kmem_layout.h
arch/xtensa/include/asm/vectors.h

index 9c12babc016cd996b1b9f27ff9ee0fb88b43b941..7cbf68ca71060dec42583ac60cd2e5f47b68ed09 100644 (file)
@@ -11,6 +11,7 @@
 #ifndef _XTENSA_KMEM_LAYOUT_H
 #define _XTENSA_KMEM_LAYOUT_H
 
+#include <asm/core.h>
 #include <asm/types.h>
 
 #ifdef CONFIG_MMU
 
 #endif
 
+/* KIO definition */
+
+#if XCHAL_HAVE_PTP_MMU
+#define XCHAL_KIO_CACHED_VADDR         0xe0000000
+#define XCHAL_KIO_BYPASS_VADDR         0xf0000000
+#define XCHAL_KIO_DEFAULT_PADDR                0xf0000000
+#else
+#define XCHAL_KIO_BYPASS_VADDR         XCHAL_KIO_PADDR
+#define XCHAL_KIO_DEFAULT_PADDR                0x90000000
+#endif
+#define XCHAL_KIO_SIZE                 0x10000000
+
+#if (!XCHAL_HAVE_PTP_MMU || XCHAL_HAVE_SPANNING_WAY) && defined(CONFIG_OF)
+#define XCHAL_KIO_PADDR                        xtensa_get_kio_paddr()
+#ifndef __ASSEMBLY__
+extern unsigned long xtensa_kio_paddr;
+
+static inline unsigned long xtensa_get_kio_paddr(void)
+{
+       return xtensa_kio_paddr;
+}
+#endif
+#else
+#define XCHAL_KIO_PADDR                        XCHAL_KIO_DEFAULT_PADDR
+#endif
+
+/* KERNEL_STACK definition */
+
 #ifndef CONFIG_KASAN
 #define KERNEL_STACK_SHIFT     13
 #else
index 79fe3007919eb2f9039548807306444e5a923c37..4220c6dac44f4f28395c41ac9a5593f330849748 100644 (file)
 #include <asm/core.h>
 #include <asm/kmem_layout.h>
 
-#if XCHAL_HAVE_PTP_MMU
-#define XCHAL_KIO_CACHED_VADDR         0xe0000000
-#define XCHAL_KIO_BYPASS_VADDR         0xf0000000
-#define XCHAL_KIO_DEFAULT_PADDR                0xf0000000
-#else
-#define XCHAL_KIO_BYPASS_VADDR         XCHAL_KIO_PADDR
-#define XCHAL_KIO_DEFAULT_PADDR                0x90000000
-#endif
-#define XCHAL_KIO_SIZE                 0x10000000
-
-#if (!XCHAL_HAVE_PTP_MMU || XCHAL_HAVE_SPANNING_WAY) && defined(CONFIG_OF)
-#define XCHAL_KIO_PADDR                        xtensa_get_kio_paddr()
-#ifndef __ASSEMBLY__
-extern unsigned long xtensa_kio_paddr;
-
-static inline unsigned long xtensa_get_kio_paddr(void)
-{
-       return xtensa_kio_paddr;
-}
-#endif
-#else
-#define XCHAL_KIO_PADDR                        XCHAL_KIO_DEFAULT_PADDR
-#endif
-
-#if defined(CONFIG_MMU)
-
-#if XCHAL_HAVE_PTP_MMU && XCHAL_HAVE_SPANNING_WAY
-/* Image Virtual Start Address */
-#define KERNELOFFSET                   (XCHAL_KSEG_CACHED_VADDR + \
-                                        CONFIG_KERNEL_LOAD_ADDRESS - \
+#if defined(CONFIG_MMU) && XCHAL_HAVE_PTP_MMU && XCHAL_HAVE_SPANNING_WAY
+#define KERNELOFFSET                   (CONFIG_KERNEL_LOAD_ADDRESS + \
+                                        XCHAL_KSEG_CACHED_VADDR - \
                                         XCHAL_KSEG_PADDR)
 #else
 #define KERNELOFFSET                   CONFIG_KERNEL_LOAD_ADDRESS
 #endif
 
-#else /* !defined(CONFIG_MMU) */
-  /* MMU Not being used - Virtual == Physical */
-
-/* Location of the start of the kernel text, _start */
-#define KERNELOFFSET                   CONFIG_KERNEL_LOAD_ADDRESS
-
-
-#endif /* CONFIG_MMU */
-
 #define RESET_VECTOR1_VADDR            (XCHAL_RESET_VECTOR1_VADDR)
 #ifdef CONFIG_VECTORS_OFFSET
 #define VECBASE_VADDR                  (KERNELOFFSET - CONFIG_VECTORS_OFFSET)