]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
arm: integrator: Migrate platform-specific options and cleanup armcoremodule.h
authorTom Rini <trini@konsulko.com>
Wed, 30 Mar 2022 22:07:15 +0000 (18:07 -0400)
committerTom Rini <trini@konsulko.com>
Fri, 8 Apr 2022 13:05:19 +0000 (09:05 -0400)
This converts the following to Kconfig:
   CONFIG_CM_INIT
   CONFIG_CM_REMAP
   CONFIG_CM_SPD_DETECT
   CONFIG_CM_MULTIPLE_SSRAM
   CONFIG_CM_TCRAM

We make the first three of these options be always enabled, as that
matches usage.  We select the last two based on how they were defined in
armcoremodule.h.  This also allows us to remove some unused code in
board/armltd/integrator/lowlevel_init.S

Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
arch/arm/mach-integrator/Kconfig
board/armltd/integrator/integrator.c
board/armltd/integrator/lowlevel_init.S
include/armcoremodule.h
include/configs/integrator-common.h
include/configs/integratorap.h

index d506ee5b39cda6eb051c396259b0800df6f986ac..4b5a50717a55c59c12c64264a2aa5096a8fad7f1 100644 (file)
@@ -32,14 +32,18 @@ config CM920T
 config CM926EJ_S
        bool "Core Module for ARM926EJ-STM"
        select CPU_ARM926EJS
+       select CM_TCRAM
 
 config CM946ES
        bool "Core Module for ARM946E-STM"
        select CPU_ARM946ES
+       select CM_MULTIPLE_SSRAM
+       select CM_TCRAM
 
 config CM1136
        bool "Core Module for ARM1136JF-STM"
        select CPU_ARM1136
+       select CM_TCRAM
 
 endchoice
 
@@ -56,4 +60,19 @@ config SYS_CONFIG_NAME
 config SYS_MALLOC_F_LEN
        default 0x2000
 
+config CM_INIT
+       def_bool y
+
+config CM_REMAP
+       def_bool y
+
+config CM_SPD_DETECT
+       def_bool y
+
+config CM_MULTIPLE_SSRAM
+       bool
+
+config CM_TCRAM
+       bool
+
 endmenu
index 388795809dfd8d2904ac861ca3fa99294b1df86d..e734ceae889039811fd5d5ee862341458d3b85f8 100644 (file)
@@ -24,6 +24,7 @@
 #include <init.h>
 #include <net.h>
 #include <netdev.h>
+#include <armcoremodule.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
 #include <dm/platform_data/serial_pl01x.h>
index 1a1cb580be6341aabb385d4838d89eab82478aa4..ea5b654ed527bb80fc0c129d068863c3671c0e46 100644 (file)
@@ -7,6 +7,7 @@
  */
 
 #include <config.h>
+#include <armcoremodule.h>
 
        /* Reset using CM control register */
 .global reset_cpu
@@ -41,10 +42,6 @@ lowlevel_init:
        /* set the desired CM specific value */
        mov     r2,#CMMASK_LOWVEC       /* Vectors at 0x00000000 for all */
 
-#if defined (CONFIG_CM10200E) || defined (CONFIG_CM10220E)
-       orr     r2,r2,#CMMASK_INIT_102
-#else
-
 #if !defined (CONFIG_CM920T) && !defined (CONFIG_CM920T_ETM) && \
      !defined (CONFIG_CM940T)
 
@@ -69,8 +66,6 @@ lowlevel_init:
 
 #endif /* CMxx6 code */
 
-#endif /* ARM102xxE value */
-
        /* read CM_INIT          */
        mov     r0, #CM_BASE
        ldr     r1, [r0, #OS_INIT]
index 613b884270269b6500f567bbaf50e24368149a12..ee839c886da15f405b5f841fd283e3b884b244d2 100644 (file)
                                                /*   CM926EJ-S */
                                                /*   CM1136-EJ-S */
 
-#if defined (CONFIG_CM10200E) || defined (CONFIG_CM10220E)
-#define CMMASK_INIT_102        0x00000300              /* see CM102xx ref manual */
-                                               /* - PLL test clock bypassed */
-                                               /* - bus clock ratio 2 */
-                                               /* - little endian */
-                                               /* - vectors at zero */
-#endif /* CM1022xx */
-
-/* Determine CM characteristics */
-
-#undef CONFIG_CM_MULTIPLE_SSRAM
-#undef CONFIG_CM_SPD_DETECT
-#undef CONFIG_CM_REMAP
-#undef CONFIG_CM_INIT
-#undef CONFIG_CM_TCRAM
-
-#if defined (CONFIG_CM946E_S) || defined (CONFIG_CM966E_S)
-#define        CONFIG_CM_MULTIPLE_SSRAM        /* CM has multiple SSRAM mapping */
-#endif
-
-/* Excalibur core module has reduced functionality */
-#ifndef        CONFIG_CM922T_XA10
-#define CONFIG_CM_SPD_DETECT                   /* CM supports SPD query      */
-#define OS_SPD                 0x00000100      /* Address of SPD data        */
-#define CONFIG_CM_REMAP                                /* CM supports remapping      */
-#define CONFIG_CM_INIT                         /* CM has initialization reg  */
-#endif /* NOT EXCALIBUR */
-
-#if defined(CONFIG_CM926EJ_S)   || defined (CONFIG_CM946E_S)   || \
-    defined(CONFIG_CM966E_S)    || defined (CONFIG_CM1026EJ_S) || \
-    defined(CONFIG_CM1136JF_S)
-#define CONFIG_CM_TCRAM                                /* CM has TCRAM  */
-#endif
-
-#ifdef CONFIG_CM_SPD_DETECT
 #define OS_SPD         0x00000100      /* The SDRAM SPD data is copied here */
-#endif
 
 #endif /* __ARMCOREMODULE_H */
index 48d522550ed34feae1fb1add939d464e9e097a85..d578b02460518b24b84e454a152f07788242b538 100644 (file)
@@ -8,33 +8,6 @@
 
 #define CONFIG_SYS_TIMERBASE           0x13000100      /* Timer1 */
 
-/*
- * There are various dependencies on the core module (CM) fitted
- * Users should refer to their CM user guide
- */
-#include "armcoremodule.h"
-
-/*
- * Initialize and remap the core module, use SPD to detect memory size
- * If CONFIG_SKIP_LOWLEVEL_INIT is not defined &
- * the core module has a CM_INIT register
- * then the U-Boot initialisation code will
- * e.g. ARM Boot Monitor or pre-loader is repeated once
- * (to re-initialise any existing CM_INIT settings to safe values).
- *
- * This is usually not the desired behaviour since the platform
- * will either reboot into the ARM monitor (or pre-loader)
- * or continuously cycle thru it without U-Boot running,
- * depending upon the setting of Integrator/CP switch S2-4.
- *
- * However it may be needed if Integrator/CP switch S2-1
- * is set OFF to boot direct into U-Boot.
- * In that case comment out the line below.
- */
-#define CONFIG_CM_INIT
-#define CONFIG_CM_REMAP
-#define CONFIG_CM_SPD_DETECT
-
 /*
  * The ARM boot monitor initializes the board.
  * However, the default U-Boot code also performs the initialization.
index f15a4d572587e7aa247a37ef54406e817148c13f..49f07e997d837c546b62154d0311a2432f853c0f 100644 (file)
  * PCI definitions
  */
 
-/*-----------------------------------------------------------------------
- * There are various dependencies on the core module (CM) fitted
- * Users should refer to their CM user guide
- * - when porting adjust u-boot/Makefile accordingly
- *   to define the necessary CONFIG_ s for the CM involved
- * see e.g. integratorcp_CM926EJ-S_config
- */
-#include "armcoremodule.h"
-
 #endif /* __CONFIG_H */