global: Migrate CONFIG_STACKBASE to CFG
[platform/kernel/u-boot.git] / include / configs / ls1021aqds.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright 2014 Freescale Semiconductor, Inc.
4  * Copyright 2019 NXP
5  */
6
7 #ifndef __CONFIG_H
8 #define __CONFIG_H
9
10 #define CFG_SYS_INIT_RAM_ADDR   OCRAM_BASE_ADDR
11 #define CFG_SYS_INIT_RAM_SIZE   OCRAM_SIZE
12
13 #ifdef CONFIG_NAND_BOOT
14 #define CFG_SYS_NAND_U_BOOT_SIZE        (400 << 10)
15 #define CFG_SYS_NAND_U_BOOT_DST CONFIG_TEXT_BASE
16 #define CFG_SYS_NAND_U_BOOT_START       CONFIG_TEXT_BASE
17
18 #endif
19
20 #define SPD_EEPROM_ADDRESS              0x51
21
22 #define CFG_SYS_DDR_SDRAM_BASE  0x80000000UL
23 #define CFG_SYS_SDRAM_BASE              CFG_SYS_DDR_SDRAM_BASE
24
25 /*
26  * IFC Definitions
27  */
28 #if !defined(CONFIG_QSPI_BOOT) && !defined(CONFIG_SD_BOOT_QSPI)
29 #define CFG_SYS_FLASH_BASE              0x60000000
30 #define CFG_SYS_FLASH_BASE_PHYS CFG_SYS_FLASH_BASE
31
32 #define CFG_SYS_NOR0_CSPR_EXT   (0x0)
33 #define CFG_SYS_NOR0_CSPR       (CSPR_PHYS_ADDR(CFG_SYS_FLASH_BASE_PHYS) | \
34                                 CSPR_PORT_SIZE_16 | \
35                                 CSPR_MSEL_NOR | \
36                                 CSPR_V)
37 #define CFG_SYS_NOR1_CSPR_EXT   (0x0)
38 #define CFG_SYS_NOR1_CSPR       (CSPR_PHYS_ADDR(CFG_SYS_FLASH_BASE_PHYS \
39                                 + 0x8000000) | \
40                                 CSPR_PORT_SIZE_16 | \
41                                 CSPR_MSEL_NOR | \
42                                 CSPR_V)
43 #define CFG_SYS_NOR_AMASK               IFC_AMASK(128 * 1024 * 1024)
44
45 #define CFG_SYS_NOR_CSOR                (CSOR_NOR_ADM_SHIFT(4) | \
46                                         CSOR_NOR_TRHZ_80)
47 #define CFG_SYS_NOR_FTIM0               (FTIM0_NOR_TACSE(0x4) | \
48                                         FTIM0_NOR_TEADC(0x5) | \
49                                         FTIM0_NOR_TEAHC(0x5))
50 #define CFG_SYS_NOR_FTIM1               (FTIM1_NOR_TACO(0x35) | \
51                                         FTIM1_NOR_TRAD_NOR(0x1a) | \
52                                         FTIM1_NOR_TSEQRAD_NOR(0x13))
53 #define CFG_SYS_NOR_FTIM2               (FTIM2_NOR_TCS(0x4) | \
54                                         FTIM2_NOR_TCH(0x4) | \
55                                         FTIM2_NOR_TWPH(0xe) | \
56                                         FTIM2_NOR_TWP(0x1c))
57 #define CFG_SYS_NOR_FTIM3               0
58
59 #define CFG_SYS_WRITE_SWAPPED_DATA
60
61 #define CFG_SYS_FLASH_BANKS_LIST        {CFG_SYS_FLASH_BASE_PHYS, \
62                                         CFG_SYS_FLASH_BASE_PHYS + 0x8000000}
63
64 /*
65  * NAND Flash Definitions
66  */
67
68 #define CFG_SYS_NAND_BASE               0x7e800000
69 #define CFG_SYS_NAND_BASE_PHYS  CFG_SYS_NAND_BASE
70
71 #define CFG_SYS_NAND_CSPR_EXT   (0x0)
72
73 #define CFG_SYS_NAND_CSPR       (CSPR_PHYS_ADDR(CFG_SYS_NAND_BASE_PHYS) \
74                                 | CSPR_PORT_SIZE_8      \
75                                 | CSPR_MSEL_NAND        \
76                                 | CSPR_V)
77 #define CFG_SYS_NAND_AMASK      IFC_AMASK(64*1024)
78 #define CFG_SYS_NAND_CSOR       (CSOR_NAND_ECC_ENC_EN   /* ECC on encode */ \
79                                 | CSOR_NAND_ECC_DEC_EN  /* ECC on decode */ \
80                                 | CSOR_NAND_ECC_MODE_4  /* 4-bit ECC */ \
81                                 | CSOR_NAND_RAL_3       /* RAL = 3 Bytes */ \
82                                 | CSOR_NAND_PGS_2K      /* Page Size = 2K */ \
83                                 | CSOR_NAND_SPRZ_64     /* Spare size = 64 */ \
84                                 | CSOR_NAND_PB(64))     /* 64 Pages Per Block */
85
86 #define CFG_SYS_NAND_FTIM0              (FTIM0_NAND_TCCST(0x7) | \
87                                         FTIM0_NAND_TWP(0x18)   | \
88                                         FTIM0_NAND_TWCHT(0x7) | \
89                                         FTIM0_NAND_TWH(0xa))
90 #define CFG_SYS_NAND_FTIM1              (FTIM1_NAND_TADLE(0x32) | \
91                                         FTIM1_NAND_TWBE(0x39)  | \
92                                         FTIM1_NAND_TRR(0xe)   | \
93                                         FTIM1_NAND_TRP(0x18))
94 #define CFG_SYS_NAND_FTIM2              (FTIM2_NAND_TRAD(0xf) | \
95                                         FTIM2_NAND_TREH(0xa) | \
96                                         FTIM2_NAND_TWHRE(0x1e))
97 #define CFG_SYS_NAND_FTIM3           0x0
98
99 #define CFG_SYS_NAND_BASE_LIST  { CFG_SYS_NAND_BASE }
100 #endif
101
102 /*
103  * QIXIS Definitions
104  */
105
106 #ifdef CONFIG_FSL_QIXIS
107 #define QIXIS_BASE                      0x7fb00000
108 #define QIXIS_BASE_PHYS                 QIXIS_BASE
109 #define CFG_SYS_I2C_FPGA_ADDR   0x66
110 #define QIXIS_LBMAP_SWITCH              6
111 #define QIXIS_LBMAP_MASK                0x0f
112 #define QIXIS_LBMAP_SHIFT               0
113 #define QIXIS_LBMAP_DFLTBANK            0x00
114 #define QIXIS_LBMAP_ALTBANK             0x04
115 #define QIXIS_PWR_CTL                   0x21
116 #define QIXIS_PWR_CTL_POWEROFF          0x80
117 #define QIXIS_RST_CTL_RESET             0x44
118 #define QIXIS_RCFG_CTL_RECONFIG_IDLE    0x20
119 #define QIXIS_RCFG_CTL_RECONFIG_START   0x21
120 #define QIXIS_RCFG_CTL_WATCHDOG_ENBLE   0x08
121 #define QIXIS_CTL_SYS                   0x5
122 #define QIXIS_CTL_SYS_EVTSW_MASK        0x0c
123 #define QIXIS_CTL_SYS_EVTSW_IRQ         0x04
124 #define QIXIS_RST_FORCE_3               0x45
125 #define QIXIS_RST_FORCE_3_PCIESLOT1     0x80
126 #define QIXIS_PWR_CTL2                  0x21
127 #define QIXIS_PWR_CTL2_PCTL             0x2
128
129 #define CFG_SYS_FPGA_CSPR_EXT   (0x0)
130 #define CFG_SYS_FPGA_CSPR               (CSPR_PHYS_ADDR(QIXIS_BASE_PHYS) | \
131                                         CSPR_PORT_SIZE_8 | \
132                                         CSPR_MSEL_GPCM | \
133                                         CSPR_V)
134 #define CFG_SYS_FPGA_AMASK              IFC_AMASK(64 * 1024)
135 #define CFG_SYS_FPGA_CSOR               (CSOR_NOR_ADM_SHIFT(4) | \
136                                         CSOR_NOR_NOR_MODE_AVD_NOR | \
137                                         CSOR_NOR_TRHZ_80)
138
139 /*
140  * QIXIS Timing parameters for IFC GPCM
141  */
142 #define CFG_SYS_FPGA_FTIM0              (FTIM0_GPCM_TACSE(0xe) | \
143                                         FTIM0_GPCM_TEADC(0xe) | \
144                                         FTIM0_GPCM_TEAHC(0xe))
145 #define CFG_SYS_FPGA_FTIM1              (FTIM1_GPCM_TACO(0xe) | \
146                                         FTIM1_GPCM_TRAD(0x1f))
147 #define CFG_SYS_FPGA_FTIM2              (FTIM2_GPCM_TCS(0xe) | \
148                                         FTIM2_GPCM_TCH(0xe) | \
149                                         FTIM2_GPCM_TWP(0xf0))
150 #define CFG_SYS_FPGA_FTIM3              0x0
151 #endif
152
153 #if defined(CONFIG_NAND_BOOT)
154 #define CFG_SYS_CSPR0_EXT               CFG_SYS_NAND_CSPR_EXT
155 #define CFG_SYS_CSPR0           CFG_SYS_NAND_CSPR
156 #define CFG_SYS_AMASK0          CFG_SYS_NAND_AMASK
157 #define CFG_SYS_CSOR0           CFG_SYS_NAND_CSOR
158 #define CFG_SYS_CS0_FTIM0               CFG_SYS_NAND_FTIM0
159 #define CFG_SYS_CS0_FTIM1               CFG_SYS_NAND_FTIM1
160 #define CFG_SYS_CS0_FTIM2               CFG_SYS_NAND_FTIM2
161 #define CFG_SYS_CS0_FTIM3               CFG_SYS_NAND_FTIM3
162 #define CFG_SYS_CSPR1_EXT               CFG_SYS_NOR0_CSPR_EXT
163 #define CFG_SYS_CSPR1           CFG_SYS_NOR0_CSPR
164 #define CFG_SYS_AMASK1          CFG_SYS_NOR_AMASK
165 #define CFG_SYS_CSOR1           CFG_SYS_NOR_CSOR
166 #define CFG_SYS_CS1_FTIM0               CFG_SYS_NOR_FTIM0
167 #define CFG_SYS_CS1_FTIM1               CFG_SYS_NOR_FTIM1
168 #define CFG_SYS_CS1_FTIM2               CFG_SYS_NOR_FTIM2
169 #define CFG_SYS_CS1_FTIM3               CFG_SYS_NOR_FTIM3
170 #define CFG_SYS_CSPR2_EXT               CFG_SYS_NOR1_CSPR_EXT
171 #define CFG_SYS_CSPR2           CFG_SYS_NOR1_CSPR
172 #define CFG_SYS_AMASK2          CFG_SYS_NOR_AMASK
173 #define CFG_SYS_CSOR2           CFG_SYS_NOR_CSOR
174 #define CFG_SYS_CS2_FTIM0               CFG_SYS_NOR_FTIM0
175 #define CFG_SYS_CS2_FTIM1               CFG_SYS_NOR_FTIM1
176 #define CFG_SYS_CS2_FTIM2               CFG_SYS_NOR_FTIM2
177 #define CFG_SYS_CS2_FTIM3               CFG_SYS_NOR_FTIM3
178 #define CFG_SYS_CSPR3_EXT               CFG_SYS_FPGA_CSPR_EXT
179 #define CFG_SYS_CSPR3           CFG_SYS_FPGA_CSPR
180 #define CFG_SYS_AMASK3          CFG_SYS_FPGA_AMASK
181 #define CFG_SYS_CSOR3           CFG_SYS_FPGA_CSOR
182 #define CFG_SYS_CS3_FTIM0               CFG_SYS_FPGA_FTIM0
183 #define CFG_SYS_CS3_FTIM1               CFG_SYS_FPGA_FTIM1
184 #define CFG_SYS_CS3_FTIM2               CFG_SYS_FPGA_FTIM2
185 #define CFG_SYS_CS3_FTIM3               CFG_SYS_FPGA_FTIM3
186 #else
187 #define CFG_SYS_CSPR0_EXT               CFG_SYS_NOR0_CSPR_EXT
188 #define CFG_SYS_CSPR0           CFG_SYS_NOR0_CSPR
189 #define CFG_SYS_AMASK0          CFG_SYS_NOR_AMASK
190 #define CFG_SYS_CSOR0           CFG_SYS_NOR_CSOR
191 #define CFG_SYS_CS0_FTIM0               CFG_SYS_NOR_FTIM0
192 #define CFG_SYS_CS0_FTIM1               CFG_SYS_NOR_FTIM1
193 #define CFG_SYS_CS0_FTIM2               CFG_SYS_NOR_FTIM2
194 #define CFG_SYS_CS0_FTIM3               CFG_SYS_NOR_FTIM3
195 #define CFG_SYS_CSPR1_EXT               CFG_SYS_NOR1_CSPR_EXT
196 #define CFG_SYS_CSPR1           CFG_SYS_NOR1_CSPR
197 #define CFG_SYS_AMASK1          CFG_SYS_NOR_AMASK
198 #define CFG_SYS_CSOR1           CFG_SYS_NOR_CSOR
199 #define CFG_SYS_CS1_FTIM0               CFG_SYS_NOR_FTIM0
200 #define CFG_SYS_CS1_FTIM1               CFG_SYS_NOR_FTIM1
201 #define CFG_SYS_CS1_FTIM2               CFG_SYS_NOR_FTIM2
202 #define CFG_SYS_CS1_FTIM3               CFG_SYS_NOR_FTIM3
203 #define CFG_SYS_CSPR2_EXT               CFG_SYS_NAND_CSPR_EXT
204 #define CFG_SYS_CSPR2           CFG_SYS_NAND_CSPR
205 #define CFG_SYS_AMASK2          CFG_SYS_NAND_AMASK
206 #define CFG_SYS_CSOR2           CFG_SYS_NAND_CSOR
207 #define CFG_SYS_CS2_FTIM0               CFG_SYS_NAND_FTIM0
208 #define CFG_SYS_CS2_FTIM1               CFG_SYS_NAND_FTIM1
209 #define CFG_SYS_CS2_FTIM2               CFG_SYS_NAND_FTIM2
210 #define CFG_SYS_CS2_FTIM3               CFG_SYS_NAND_FTIM3
211 #define CFG_SYS_CSPR3_EXT               CFG_SYS_FPGA_CSPR_EXT
212 #define CFG_SYS_CSPR3           CFG_SYS_FPGA_CSPR
213 #define CFG_SYS_AMASK3          CFG_SYS_FPGA_AMASK
214 #define CFG_SYS_CSOR3           CFG_SYS_FPGA_CSOR
215 #define CFG_SYS_CS3_FTIM0               CFG_SYS_FPGA_FTIM0
216 #define CFG_SYS_CS3_FTIM1               CFG_SYS_FPGA_FTIM1
217 #define CFG_SYS_CS3_FTIM2               CFG_SYS_FPGA_FTIM2
218 #define CFG_SYS_CS3_FTIM3               CFG_SYS_FPGA_FTIM3
219 #endif
220
221 /*
222  * Serial Port
223  */
224 #ifndef CONFIG_LPUART
225 #define CFG_SYS_NS16550_CLK             get_serial_clock()
226 #endif
227
228 /*
229  * I2C
230  */
231
232 /* GPIO */
233
234 /*
235  * I2C bus multiplexer
236  */
237 #define I2C_MUX_PCA_ADDR_PRI            0x77
238 #define I2C_MUX_CH_DEFAULT              0x8
239 #define I2C_MUX_CH_CH7301               0xC
240
241 /*
242  * MMC
243  */
244
245 #define CFG_SMP_PEN_ADDR                0x01ee0200
246
247 #define HWCONFIG_BUFFER_SIZE            256
248
249 #ifdef CONFIG_LPUART
250 #define CFG_EXTRA_ENV_SETTINGS       \
251         "bootargs=root=/dev/ram0 rw console=ttyLP0,115200\0" \
252         "initrd_high=0xffffffff\0"      \
253         "hwconfig=fsl_ddr:ctlr_intlv=null,bank_intlv=null\0"
254 #else
255 #define CFG_EXTRA_ENV_SETTINGS  \
256         "bootargs=root=/dev/ram0 rw console=ttyS0,115200\0" \
257         "initrd_high=0xffffffff\0"      \
258         "hwconfig=fsl_ddr:ctlr_intlv=null,bank_intlv=null\0"
259 #endif
260
261 /*
262  * Miscellaneous configurable options
263  */
264 #define CFG_SYS_BOOTMAPSZ               (256 << 20)
265
266 /*
267  * Environment
268  */
269
270 #include <asm/fsl_secure_boot.h>
271
272 #endif