2 * Copyright (C) 2006 Freescale Semiconductor, Inc.
3 * Dave Liu <daveliu@freescale.com>
5 * Copyright (C) 2007 Logic Product Development, Inc.
6 * Peter Barada <peterb@logicpd.com>
8 * Copyright (C) 2007 MontaVista Software, Inc.
9 * Anton Vorontsov <avorontsov@ru.mvista.com>
12 * Heiko Schocher, DENX Software Engineering, hs@denx.de.
14 * (C) Copyright 2010-2013
15 * Lukas Roggli, KEYMILE Ltd, lukas.roggli@keymile.com
16 * Holger Brunck, Keymile GmbH, holger.bruncl@keymile.com
18 * SPDX-License-Identifier: GPL-2.0+
25 * High Level Configuration Options
27 #if defined(CONFIG_KMSUPX5)
28 #define CONFIG_KM_BOARD_NAME "kmsupx5"
29 #define CONFIG_HOSTNAME kmsupx5
30 #elif defined(CONFIG_TUGE1)
31 #define CONFIG_KM_BOARD_NAME "tuge1"
32 #define CONFIG_HOSTNAME tuge1
33 #elif defined(CONFIG_TUXX1) /* TUXX1 board (tuxa1/tuda1) specific */
34 #define CONFIG_KM_BOARD_NAME "tuxx1"
35 #define CONFIG_HOSTNAME tuxx1
36 #elif defined(CONFIG_KMOPTI2)
37 #define CONFIG_KM_BOARD_NAME "kmopti2"
38 #define CONFIG_HOSTNAME kmopti2
40 #error ("Board not supported")
43 #define CONFIG_SYS_TEXT_BASE 0xF0000000
45 /* include common defines/options for all 8321 Keymile boards */
46 #include "km/km8321-common.h"
48 #define CONFIG_SYS_APP1_BASE 0xA0000000 /* PAXG */
49 #define CONFIG_SYS_APP1_SIZE 256 /* Megabytes */
50 #if defined(CONFIG_TUXX1) || defined(CONFIG_KMOPTI2)
51 #define CONFIG_SYS_APP2_BASE 0xB0000000 /* PINC3 */
52 #define CONFIG_SYS_APP2_SIZE 256 /* Megabytes */
56 * Init Local Bus Memory Controller:
58 * Bank Bus Machine PortSz Size TUDA1 TUXA1 TUGE1 KMSUPX4 KMOPTI2
59 * ---- --- ------- ------ ----- ---------------------------------------
60 * 2 Local GPCM 8 bit 256MB PAXG LPXF PAXI LPXF PAXE
61 * 3 Local GPCM 8 bit 256MB PINC3 PINC2 unused unused OPI2(16 bit)
66 * Configuration for C2 on the local bus
68 /* Window base at flash base */
69 #define CONFIG_SYS_LBLAWBAR2_PRELIM CONFIG_SYS_APP1_BASE
70 /* Window size: 256 MB */
71 #define CONFIG_SYS_LBLAWAR2_PRELIM (LBLAWAR_EN | LBLAWAR_256MB)
73 #define CONFIG_SYS_BR2_PRELIM (CONFIG_SYS_APP1_BASE | \
78 #define CONFIG_SYS_OR2_PRELIM (MEG_TO_AM(CONFIG_SYS_APP1_SIZE) | \
83 OR_GPCM_EHTR_CLEAR | \
85 #if defined(CONFIG_TUXX1)
87 * Configuration for C3 on the local bus
89 /* Access window base at PINC3 base */
90 #define CONFIG_SYS_LBLAWBAR3_PRELIM CONFIG_SYS_APP2_BASE
91 /* Window size: 256 MB */
92 #define CONFIG_SYS_LBLAWAR3_PRELIM (LBLAWAR_EN | LBLAWAR_256MB)
94 #define CONFIG_SYS_BR3_PRELIM (CONFIG_SYS_APP2_BASE | \
99 #define CONFIG_SYS_OR3_PRELIM (MEG_TO_AM(CONFIG_SYS_APP2_SIZE) | \
106 #define CONFIG_SYS_MAMR (MxMR_GPL_x4DIS | \
111 #if defined(CONFIG_KMOPTI2)
113 * Configuration for C3 on the local bus
115 #define CONFIG_SYS_LBLAWBAR3_PRELIM CONFIG_SYS_APP2_BASE
116 #define CONFIG_SYS_LBLAWAR3_PRELIM (LBLAWAR_EN | LBLAWAR_256MB)
117 #define CONFIG_SYS_BR3_PRELIM (CONFIG_SYS_APP2_BASE | \
121 #define CONFIG_SYS_OR3_PRELIM (MEG_TO_AM(CONFIG_SYS_APP2_SIZE) | \
123 OR_GPCM_TRLX_CLEAR | \
130 /* APP1: icache cacheable, but dcache-inhibit and guarded */
131 #define CONFIG_SYS_IBAT5L (CONFIG_SYS_APP1_BASE | \
134 /* 512M should also include APP2... */
135 #define CONFIG_SYS_IBAT5U (CONFIG_SYS_APP1_BASE | \
139 #define CONFIG_SYS_DBAT5L (CONFIG_SYS_APP1_BASE | \
141 BATL_CACHEINHIBIT | \
143 #define CONFIG_SYS_DBAT5U CONFIG_SYS_IBAT5U
145 #if defined(CONFIG_TUGE1) || defined(CONFIG_KMSUPX5)
146 #define CONFIG_SYS_IBAT6L (0)
147 #define CONFIG_SYS_IBAT6U (0)
148 #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L
150 /* APP2: icache cacheable, but dcache-inhibit and guarded */
151 #define CONFIG_SYS_IBAT6L (CONFIG_SYS_APP2_BASE | \
154 #define CONFIG_SYS_IBAT6U (CONFIG_SYS_APP2_BASE | \
158 #define CONFIG_SYS_DBAT6L (CONFIG_SYS_APP2_BASE | \
160 BATL_CACHEINHIBIT | \
163 #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U
165 #define CONFIG_SYS_IBAT7L (0)
166 #define CONFIG_SYS_IBAT7U (0)
167 #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L
168 #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U
170 #endif /* __CONFIG_H */