]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - arch/arm/include/asm/arch-omap3/mem.h
omap3: Configure RAM bank 0 if in SPL
[karo-tx-uboot.git] / arch / arm / include / asm / arch-omap3 / mem.h
index f165949f872bb6a25063d1fa8fd592dc6e8f6e53..8e28f775df9ab5a3beb9e888b34682039b952052 100644 (file)
@@ -128,6 +128,33 @@ enum {
                (MICRON_XSR_165 << 0) | (MICRON_TXP_165 << 8) | \
                (MICRON_TWTR_165 << 16))
 
+#define MICRON_RAMTYPE                 0x1
+#define MICRON_DDRTYPE                 0x0
+#define MICRON_DEEPPD                  0x1
+#define MICRON_B32NOT16                        0x1
+#define MICRON_BANKALLOCATION  0x2
+#define MICRON_RAMSIZE                 ((PHYS_SDRAM_1_SIZE/(1024*1024))/2)
+#define MICRON_ADDRMUXLEGACY   0x1
+#define MICRON_CASWIDTH                        0x5
+#define MICRON_RASWIDTH                        0x2
+#define MICRON_LOCKSTATUS              0x0
+#define MICRON_V_MCFG ((MICRON_LOCKSTATUS << 30) | (MICRON_RASWIDTH << 24) | \
+       (MICRON_CASWIDTH << 20) | (MICRON_ADDRMUXLEGACY << 19) | \
+       (MICRON_RAMSIZE << 8) | (MICRON_BANKALLOCATION << 6) | \
+       (MICRON_B32NOT16 << 4) | (MICRON_DEEPPD << 3) | \
+       (MICRON_DDRTYPE << 2) | (MICRON_RAMTYPE))
+
+#define MICRON_ARCV                            2030
+#define MICRON_ARE                             0x1
+#define MICRON_V_RFR_CTRL ((MICRON_ARCV << 8) | (MICRON_ARE))
+
+#define MICRON_BL                              0x2
+#define MICRON_SIL                             0x0
+#define MICRON_CASL                            0x3
+#define MICRON_WBST                            0x0
+#define MICRON_V_MR ((MICRON_WBST << 9) | (MICRON_CASL << 4) | \
+       (MICRON_SIL << 3) | (MICRON_BL))
+
 /*
  * NUMONYX part of IGEP v2 (165MHz optimized) 6.06ns
  *   ACTIMA
@@ -171,10 +198,15 @@ enum {
 #define V_ACTIMA_165 INFINEON_V_ACTIMA_165
 #define V_ACTIMB_165 INFINEON_V_ACTIMB_165
 #endif
+
 #ifdef CONFIG_OMAP3_MICRON_DDR
 #define V_ACTIMA_165 MICRON_V_ACTIMA_165
 #define V_ACTIMB_165 MICRON_V_ACTIMB_165
+#define V_MCFG                 MICRON_V_MCFG
+#define V_RFR_CTRL             MICRON_V_RFR_CTRL
+#define V_MR                   MICRON_V_MR
 #endif
+
 #ifdef CONFIG_OMAP3_NUMONYX_DDR
 #define V_ACTIMA_165 NUMONYX_V_ACTIMA_165
 #define V_ACTIMB_165 NUMONYX_V_ACTIMB_165
@@ -184,6 +216,10 @@ enum {
 #error "Please choose the right DDR type in config header"
 #endif
 
+#if defined(CONFIG_SPL_BUILD) && (!defined(V_MCFG) || !defined(V_RFR_CTRL))
+#error "Please choose the right DDR type in config header"
+#endif
+
 /*
  * GPMC settings -
  * Definitions is as per the following format