xref: /rk3399_rockchip-uboot/include/configs/tuxx1.h (revision f5a474bd7ac44385ea8e852129ab4f6ae5c6d6d3)
15f2a44d5SHolger Brunck /*
25f2a44d5SHolger Brunck  * Copyright (C) 2006 Freescale Semiconductor, Inc.
35f2a44d5SHolger Brunck  *                    Dave Liu <daveliu@freescale.com>
45f2a44d5SHolger Brunck  *
55f2a44d5SHolger Brunck  * Copyright (C) 2007 Logic Product Development, Inc.
65f2a44d5SHolger Brunck  *                    Peter Barada <peterb@logicpd.com>
75f2a44d5SHolger Brunck  *
85f2a44d5SHolger Brunck  * Copyright (C) 2007 MontaVista Software, Inc.
95f2a44d5SHolger Brunck  *                    Anton Vorontsov <avorontsov@ru.mvista.com>
105f2a44d5SHolger Brunck  *
115f2a44d5SHolger Brunck  * (C) Copyright 2008
125f2a44d5SHolger Brunck  * Heiko Schocher, DENX Software Engineering, hs@denx.de.
135f2a44d5SHolger Brunck  *
145f2a44d5SHolger Brunck  * (C) Copyright 2010-2011
155f2a44d5SHolger Brunck  * Lukas Roggli, KEYMILE Ltd, lukas.roggli@keymile.com
165f2a44d5SHolger Brunck  * Holger Brunck,  Keymile GmbH, holger.bruncl@keymile.com
175f2a44d5SHolger Brunck  *
185f2a44d5SHolger Brunck  * This program is free software; you can redistribute it and/or
195f2a44d5SHolger Brunck  * modify it under the terms of the GNU General Public License as
205f2a44d5SHolger Brunck  * published by the Free Software Foundation; either version 2 of
215f2a44d5SHolger Brunck  * the License, or (at your option) any later version.
225f2a44d5SHolger Brunck  */
235f2a44d5SHolger Brunck 
245f2a44d5SHolger Brunck #ifndef __CONFIG_H
255f2a44d5SHolger Brunck #define __CONFIG_H
265f2a44d5SHolger Brunck 
275f2a44d5SHolger Brunck /*
285f2a44d5SHolger Brunck  * High Level Configuration Options
295f2a44d5SHolger Brunck  */
30*f5a474bdSHolger Brunck #define CONFIG_TUXXX		/* TUXX1 board (tuxa1/tuda1) specific */
315f2a44d5SHolger Brunck #define CONFIG_HOSTNAME		tuxx1
32*f5a474bdSHolger Brunck #ifdef CONFIG_KM_DISABLE_APP2
33*f5a474bdSHolger Brunck #define CONFIG_KM_BOARD_NAME   "tuge1"
34*f5a474bdSHolger Brunck #else
355f2a44d5SHolger Brunck #define CONFIG_KM_BOARD_NAME   "tuxx1"
36*f5a474bdSHolger Brunck #endif
375f2a44d5SHolger Brunck 
385f2a44d5SHolger Brunck #define	CONFIG_SYS_TEXT_BASE	0xF0000000
395f2a44d5SHolger Brunck 
405f2a44d5SHolger Brunck /* include common defines/options for all 8321 Keymile boards */
415f2a44d5SHolger Brunck #include "km/km8321-common.h"
425f2a44d5SHolger Brunck 
435f2a44d5SHolger Brunck #define CONFIG_SYS_APP1_BASE	0xA0000000    /* PAXG */
445f2a44d5SHolger Brunck #define	CONFIG_SYS_APP1_SIZE	256 /* Megabytes */
45*f5a474bdSHolger Brunck #ifndef CONFIG_KM_DISABLE_APP2
465f2a44d5SHolger Brunck #define CONFIG_SYS_APP2_BASE	0xB0000000    /* PINC3 */
475f2a44d5SHolger Brunck #define	CONFIG_SYS_APP2_SIZE	256 /* Megabytes */
48*f5a474bdSHolger Brunck #endif
495f2a44d5SHolger Brunck 
505f2a44d5SHolger Brunck /*
515f2a44d5SHolger Brunck  * Init Local Bus Memory Controller:
525f2a44d5SHolger Brunck  *
53*f5a474bdSHolger Brunck  * Bank Bus     Machine PortSz  Size  Device on TUDA1  TUXA1  TUGE1
54*f5a474bdSHolger Brunck  * ---- ---     ------- ------  -----  ----------------------------
55*f5a474bdSHolger Brunck  *  2   Local   GPCM    8 bit  256MB	         PAXG  LPXF   PAXI
56*f5a474bdSHolger Brunck  *  3   Local   GPCM    8 bit  256MB	         PINC3 PINC2  unused
575f2a44d5SHolger Brunck  *
585f2a44d5SHolger Brunck  */
595f2a44d5SHolger Brunck 
605f2a44d5SHolger Brunck /*
615f2a44d5SHolger Brunck  * Configuration for C2 on the local bus
625f2a44d5SHolger Brunck  */
635f2a44d5SHolger Brunck /* Window base at flash base */
645f2a44d5SHolger Brunck #define CONFIG_SYS_LBLAWBAR2_PRELIM	CONFIG_SYS_APP1_BASE
655f2a44d5SHolger Brunck /* Window size: 256 MB */
665f2a44d5SHolger Brunck #define CONFIG_SYS_LBLAWAR2_PRELIM	(LBLAWAR_EN | LBLAWAR_256MB)
675f2a44d5SHolger Brunck 
685f2a44d5SHolger Brunck #define CONFIG_SYS_BR2_PRELIM	(CONFIG_SYS_APP1_BASE | \
695f2a44d5SHolger Brunck 				 BR_PS_8 | \
705f2a44d5SHolger Brunck 				 BR_MS_GPCM | \
715f2a44d5SHolger Brunck 				 BR_V)
725f2a44d5SHolger Brunck 
735f2a44d5SHolger Brunck #define CONFIG_SYS_OR2_PRELIM	(MEG_TO_AM(CONFIG_SYS_APP1_SIZE) | \
745f2a44d5SHolger Brunck 				 OR_GPCM_CSNT | \
755f2a44d5SHolger Brunck 				 OR_GPCM_ACS_DIV4 | \
765f2a44d5SHolger Brunck 				 OR_GPCM_SCY_2 | \
775f2a44d5SHolger Brunck 				 OR_GPCM_TRLX_SET | \
785f2a44d5SHolger Brunck 				 OR_GPCM_EHTR_CLEAR | \
795f2a44d5SHolger Brunck 				 OR_GPCM_EAD)
80*f5a474bdSHolger Brunck #ifndef CONFIG_KM_DISABLE_APP2
815f2a44d5SHolger Brunck /*
825f2a44d5SHolger Brunck  * Configuration for C3 on the local bus
835f2a44d5SHolger Brunck  */
845f2a44d5SHolger Brunck /* Access window base at PINC3 base */
855f2a44d5SHolger Brunck #define CONFIG_SYS_LBLAWBAR3_PRELIM	CONFIG_SYS_APP2_BASE
865f2a44d5SHolger Brunck /* Window size: 256 MB */
875f2a44d5SHolger Brunck #define CONFIG_SYS_LBLAWAR3_PRELIM	(LBLAWAR_EN | LBLAWAR_256MB)
885f2a44d5SHolger Brunck 
895f2a44d5SHolger Brunck #define CONFIG_SYS_BR3_PRELIM	(CONFIG_SYS_APP2_BASE | \
905f2a44d5SHolger Brunck 				 BR_PS_8 |		\
915f2a44d5SHolger Brunck 				 BR_MS_GPCM |		\
925f2a44d5SHolger Brunck 				 BR_V)
935f2a44d5SHolger Brunck 
945f2a44d5SHolger Brunck #define CONFIG_SYS_OR3_PRELIM	(MEG_TO_AM(CONFIG_SYS_APP2_SIZE) | \
955f2a44d5SHolger Brunck 				 OR_GPCM_CSNT |	\
965f2a44d5SHolger Brunck 				 OR_GPCM_ACS_DIV2 | \
975f2a44d5SHolger Brunck 				 OR_GPCM_SCY_2 | \
985f2a44d5SHolger Brunck 				 OR_GPCM_TRLX_SET | \
995f2a44d5SHolger Brunck 				 OR_GPCM_EHTR_CLEAR)
1005f2a44d5SHolger Brunck 
1015f2a44d5SHolger Brunck #define CONFIG_SYS_MAMR		(MxMR_GPL_x4DIS | \
1025f2a44d5SHolger Brunck 				 0x0000c000 | \
1035f2a44d5SHolger Brunck 				 MxMR_WLFx_2X)
104*f5a474bdSHolger Brunck #endif
1055f2a44d5SHolger Brunck 
1065f2a44d5SHolger Brunck /*
1075f2a44d5SHolger Brunck  * MMU Setup
1085f2a44d5SHolger Brunck  */
1095f2a44d5SHolger Brunck /* APP1: icache cacheable, but dcache-inhibit and guarded */
1105f2a44d5SHolger Brunck #define CONFIG_SYS_IBAT5L	(CONFIG_SYS_APP1_BASE | \
1115f2a44d5SHolger Brunck 				 BATL_PP_RW | \
1125f2a44d5SHolger Brunck 				 BATL_MEMCOHERENCE)
1135f2a44d5SHolger Brunck /* 512M should also include APP2... */
1145f2a44d5SHolger Brunck #define CONFIG_SYS_IBAT5U	(CONFIG_SYS_APP1_BASE | \
1155f2a44d5SHolger Brunck 				 BATU_BL_256M | \
1165f2a44d5SHolger Brunck 				 BATU_VS | \
1175f2a44d5SHolger Brunck 				 BATU_VP)
1185f2a44d5SHolger Brunck #define CONFIG_SYS_DBAT5L	(CONFIG_SYS_APP1_BASE | \
1195f2a44d5SHolger Brunck 				 BATL_PP_RW | \
1205f2a44d5SHolger Brunck 				 BATL_CACHEINHIBIT | \
1215f2a44d5SHolger Brunck 				 BATL_GUARDEDSTORAGE)
1225f2a44d5SHolger Brunck #define CONFIG_SYS_DBAT5U	CONFIG_SYS_IBAT5U
1235f2a44d5SHolger Brunck 
124*f5a474bdSHolger Brunck #ifdef CONFIG_KM_DISABLE_APP2
125*f5a474bdSHolger Brunck #define CONFIG_SYS_IBAT6L	(0)
126*f5a474bdSHolger Brunck #define CONFIG_SYS_IBAT6U	(0)
127*f5a474bdSHolger Brunck #define CONFIG_SYS_DBAT6L	CONFIG_SYS_IBAT6L
128*f5a474bdSHolger Brunck #else
1295f2a44d5SHolger Brunck /* APP2:  icache cacheable, but dcache-inhibit and guarded */
1305f2a44d5SHolger Brunck #define CONFIG_SYS_IBAT6L	(CONFIG_SYS_APP2_BASE | \
1315f2a44d5SHolger Brunck 				 BATL_PP_RW | \
1325f2a44d5SHolger Brunck 				 BATL_MEMCOHERENCE)
1335f2a44d5SHolger Brunck #define CONFIG_SYS_IBAT6U	(CONFIG_SYS_APP2_BASE | \
1345f2a44d5SHolger Brunck 				 BATU_BL_256M | \
1355f2a44d5SHolger Brunck 				 BATU_VS | \
1365f2a44d5SHolger Brunck 				 BATU_VP)
1375f2a44d5SHolger Brunck #define CONFIG_SYS_DBAT6L	(CONFIG_SYS_APP2_BASE | \
1385f2a44d5SHolger Brunck 				 BATL_PP_RW | \
1395f2a44d5SHolger Brunck 				 BATL_CACHEINHIBIT | \
1405f2a44d5SHolger Brunck 				 BATL_GUARDEDSTORAGE)
141*f5a474bdSHolger Brunck #endif
1425f2a44d5SHolger Brunck #define CONFIG_SYS_DBAT6U	CONFIG_SYS_IBAT6U
1435f2a44d5SHolger Brunck 
1445f2a44d5SHolger Brunck #define CONFIG_SYS_IBAT7L	(0)
1455f2a44d5SHolger Brunck #define CONFIG_SYS_IBAT7U	(0)
1465f2a44d5SHolger Brunck #define CONFIG_SYS_DBAT7L	CONFIG_SYS_IBAT7L
1475f2a44d5SHolger Brunck #define CONFIG_SYS_DBAT7U	CONFIG_SYS_IBAT7U
1485f2a44d5SHolger Brunck 
1495f2a44d5SHolger Brunck #endif /* __CONFIG_H */
150