xref: /rk3399_rockchip-uboot/include/configs/ls1043aqds.h (revision 02b5d2ed867e92b56fa54b94685edb196fde98bf)
1*02b5d2edSShaohui Xie /*
2*02b5d2edSShaohui Xie  * Copyright 2015 Freescale Semiconductor, Inc.
3*02b5d2edSShaohui Xie  *
4*02b5d2edSShaohui Xie  * SPDX-License-Identifier:	GPL-2.0+
5*02b5d2edSShaohui Xie  */
6*02b5d2edSShaohui Xie 
7*02b5d2edSShaohui Xie #ifndef __LS1043AQDS_H__
8*02b5d2edSShaohui Xie #define __LS1043AQDS_H__
9*02b5d2edSShaohui Xie 
10*02b5d2edSShaohui Xie #include "ls1043a_common.h"
11*02b5d2edSShaohui Xie 
12*02b5d2edSShaohui Xie #define CONFIG_DISPLAY_CPUINFO
13*02b5d2edSShaohui Xie #define CONFIG_DISPLAY_BOARDINFO
14*02b5d2edSShaohui Xie 
15*02b5d2edSShaohui Xie #if defined(CONFIG_NAND_BOOT) || defined(CONFIG_SD_BOOT)
16*02b5d2edSShaohui Xie #define CONFIG_SYS_TEXT_BASE		0x82000000
17*02b5d2edSShaohui Xie #else
18*02b5d2edSShaohui Xie #define CONFIG_SYS_TEXT_BASE		0x60100000
19*02b5d2edSShaohui Xie #endif
20*02b5d2edSShaohui Xie 
21*02b5d2edSShaohui Xie #ifndef __ASSEMBLY__
22*02b5d2edSShaohui Xie unsigned long get_board_sys_clk(void);
23*02b5d2edSShaohui Xie unsigned long get_board_ddr_clk(void);
24*02b5d2edSShaohui Xie #endif
25*02b5d2edSShaohui Xie 
26*02b5d2edSShaohui Xie #define CONFIG_SYS_CLK_FREQ		100000000
27*02b5d2edSShaohui Xie #define CONFIG_DDR_CLK_FREQ		100000000
28*02b5d2edSShaohui Xie 
29*02b5d2edSShaohui Xie #define CONFIG_SKIP_LOWLEVEL_INIT
30*02b5d2edSShaohui Xie 
31*02b5d2edSShaohui Xie #define CONFIG_LAYERSCAPE_NS_ACCESS
32*02b5d2edSShaohui Xie 
33*02b5d2edSShaohui Xie #define CONFIG_DIMM_SLOTS_PER_CTLR	1
34*02b5d2edSShaohui Xie /* Physical Memory Map */
35*02b5d2edSShaohui Xie #define CONFIG_CHIP_SELECTS_PER_CTRL	4
36*02b5d2edSShaohui Xie #define CONFIG_NR_DRAM_BANKS		1
37*02b5d2edSShaohui Xie 
38*02b5d2edSShaohui Xie #define CONFIG_DDR_SPD
39*02b5d2edSShaohui Xie #define SPD_EEPROM_ADDRESS		0x51
40*02b5d2edSShaohui Xie #define CONFIG_SYS_SPD_BUS_NUM		0
41*02b5d2edSShaohui Xie 
42*02b5d2edSShaohui Xie #define CONFIG_FSL_DDR_INTERACTIVE	/* Interactive debugging */
43*02b5d2edSShaohui Xie #ifndef CONFIG_SYS_FSL_DDR4
44*02b5d2edSShaohui Xie #define CONFIG_SYS_FSL_DDR3		/* Use DDR3 memory */
45*02b5d2edSShaohui Xie #endif
46*02b5d2edSShaohui Xie 
47*02b5d2edSShaohui Xie #define CONFIG_DDR_ECC
48*02b5d2edSShaohui Xie #ifdef CONFIG_DDR_ECC
49*02b5d2edSShaohui Xie #define CONFIG_ECC_INIT_VIA_DDRCONTROLLER
50*02b5d2edSShaohui Xie #define CONFIG_MEM_INIT_VALUE           0xdeadbeef
51*02b5d2edSShaohui Xie #endif
52*02b5d2edSShaohui Xie 
53*02b5d2edSShaohui Xie #define CONFIG_SYS_HAS_SERDES
54*02b5d2edSShaohui Xie 
55*02b5d2edSShaohui Xie #ifdef CONFIG_SYS_DPAA_FMAN
56*02b5d2edSShaohui Xie #define CONFIG_FMAN_ENET
57*02b5d2edSShaohui Xie #define CONFIG_PHYLIB
58*02b5d2edSShaohui Xie #define CONFIG_PHY_VITESSE
59*02b5d2edSShaohui Xie #define CONFIG_PHY_REALTEK
60*02b5d2edSShaohui Xie #define CONFIG_PHYLIB_10G
61*02b5d2edSShaohui Xie #define RGMII_PHY1_ADDR		0x1
62*02b5d2edSShaohui Xie #define RGMII_PHY2_ADDR		0x2
63*02b5d2edSShaohui Xie #define SGMII_CARD_PORT1_PHY_ADDR 0x1C
64*02b5d2edSShaohui Xie #define SGMII_CARD_PORT2_PHY_ADDR 0x1D
65*02b5d2edSShaohui Xie #define SGMII_CARD_PORT3_PHY_ADDR 0x1E
66*02b5d2edSShaohui Xie #define SGMII_CARD_PORT4_PHY_ADDR 0x1F
67*02b5d2edSShaohui Xie /* PHY address on QSGMII riser card on slot 1 */
68*02b5d2edSShaohui Xie #define QSGMII_CARD_PORT1_PHY_ADDR_S1 0x4
69*02b5d2edSShaohui Xie #define QSGMII_CARD_PORT2_PHY_ADDR_S1 0x5
70*02b5d2edSShaohui Xie #define QSGMII_CARD_PORT3_PHY_ADDR_S1 0x6
71*02b5d2edSShaohui Xie #define QSGMII_CARD_PORT4_PHY_ADDR_S1 0x7
72*02b5d2edSShaohui Xie /* PHY address on QSGMII riser card on slot 2 */
73*02b5d2edSShaohui Xie #define QSGMII_CARD_PORT1_PHY_ADDR_S2 0x8
74*02b5d2edSShaohui Xie #define QSGMII_CARD_PORT2_PHY_ADDR_S2 0x9
75*02b5d2edSShaohui Xie #define QSGMII_CARD_PORT3_PHY_ADDR_S2 0xA
76*02b5d2edSShaohui Xie #define QSGMII_CARD_PORT4_PHY_ADDR_S2 0xB
77*02b5d2edSShaohui Xie #endif
78*02b5d2edSShaohui Xie 
79*02b5d2edSShaohui Xie #ifdef CONFIG_RAMBOOT_PBL
80*02b5d2edSShaohui Xie #define CONFIG_SYS_FSL_PBL_PBI board/freescale/ls1043aqds/ls1043aqds_pbi.cfg
81*02b5d2edSShaohui Xie #endif
82*02b5d2edSShaohui Xie 
83*02b5d2edSShaohui Xie #ifdef CONFIG_NAND_BOOT
84*02b5d2edSShaohui Xie #define CONFIG_SYS_FSL_PBL_RCW board/freescale/ls1043aqds/ls1043aqds_rcw_nand.cfg
85*02b5d2edSShaohui Xie #endif
86*02b5d2edSShaohui Xie 
87*02b5d2edSShaohui Xie #ifdef CONFIG_SD_BOOT
88*02b5d2edSShaohui Xie #define CONFIG_SYS_FSL_PBL_RCW board/freescale/ls1043aqds/ls1043aqds_rcw_sd_ifc.cfg
89*02b5d2edSShaohui Xie #endif
90*02b5d2edSShaohui Xie 
91*02b5d2edSShaohui Xie /*
92*02b5d2edSShaohui Xie  * IFC Definitions
93*02b5d2edSShaohui Xie  */
94*02b5d2edSShaohui Xie #define CONFIG_SYS_NOR0_CSPR_EXT	(0x0)
95*02b5d2edSShaohui Xie #define CONFIG_SYS_NOR0_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \
96*02b5d2edSShaohui Xie 				CSPR_PORT_SIZE_16 | \
97*02b5d2edSShaohui Xie 				CSPR_MSEL_NOR | \
98*02b5d2edSShaohui Xie 				CSPR_V)
99*02b5d2edSShaohui Xie #define CONFIG_SYS_NOR1_CSPR_EXT	(0x0)
100*02b5d2edSShaohui Xie #define CONFIG_SYS_NOR1_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS \
101*02b5d2edSShaohui Xie 				+ 0x8000000) | \
102*02b5d2edSShaohui Xie 				CSPR_PORT_SIZE_16 | \
103*02b5d2edSShaohui Xie 				CSPR_MSEL_NOR | \
104*02b5d2edSShaohui Xie 				CSPR_V)
105*02b5d2edSShaohui Xie #define CONFIG_SYS_NOR_AMASK		IFC_AMASK(128 * 1024 * 1024)
106*02b5d2edSShaohui Xie 
107*02b5d2edSShaohui Xie #define CONFIG_SYS_NOR_CSOR		(CSOR_NOR_ADM_SHIFT(4) | \
108*02b5d2edSShaohui Xie 					CSOR_NOR_TRHZ_80)
109*02b5d2edSShaohui Xie #define CONFIG_SYS_NOR_FTIM0		(FTIM0_NOR_TACSE(0x4) | \
110*02b5d2edSShaohui Xie 					FTIM0_NOR_TEADC(0x5) | \
111*02b5d2edSShaohui Xie 					FTIM0_NOR_TEAHC(0x5))
112*02b5d2edSShaohui Xie #define CONFIG_SYS_NOR_FTIM1		(FTIM1_NOR_TACO(0x35) | \
113*02b5d2edSShaohui Xie 					FTIM1_NOR_TRAD_NOR(0x1a) | \
114*02b5d2edSShaohui Xie 					FTIM1_NOR_TSEQRAD_NOR(0x13))
115*02b5d2edSShaohui Xie #define CONFIG_SYS_NOR_FTIM2		(FTIM2_NOR_TCS(0x4) | \
116*02b5d2edSShaohui Xie 					FTIM2_NOR_TCH(0x4) | \
117*02b5d2edSShaohui Xie 					FTIM2_NOR_TWPH(0xe) | \
118*02b5d2edSShaohui Xie 					FTIM2_NOR_TWP(0x1c))
119*02b5d2edSShaohui Xie #define CONFIG_SYS_NOR_FTIM3		0
120*02b5d2edSShaohui Xie 
121*02b5d2edSShaohui Xie #define CONFIG_SYS_MAX_FLASH_BANKS	2	/* number of banks */
122*02b5d2edSShaohui Xie #define CONFIG_SYS_MAX_FLASH_SECT	1024	/* sectors per device */
123*02b5d2edSShaohui Xie #define CONFIG_SYS_FLASH_ERASE_TOUT	60000	/* Flash Erase Timeout (ms) */
124*02b5d2edSShaohui Xie #define CONFIG_SYS_FLASH_WRITE_TOUT	500	/* Flash Write Timeout (ms) */
125*02b5d2edSShaohui Xie 
126*02b5d2edSShaohui Xie #define CONFIG_SYS_FLASH_EMPTY_INFO
127*02b5d2edSShaohui Xie #define CONFIG_SYS_FLASH_BANKS_LIST	{CONFIG_SYS_FLASH_BASE_PHYS, \
128*02b5d2edSShaohui Xie 					CONFIG_SYS_FLASH_BASE_PHYS + 0x8000000}
129*02b5d2edSShaohui Xie 
130*02b5d2edSShaohui Xie #define CONFIG_CFI_FLASH_USE_WEAK_ACCESSORS
131*02b5d2edSShaohui Xie #define CONFIG_SYS_WRITE_SWAPPED_DATA
132*02b5d2edSShaohui Xie 
133*02b5d2edSShaohui Xie /*
134*02b5d2edSShaohui Xie  * NAND Flash Definitions
135*02b5d2edSShaohui Xie  */
136*02b5d2edSShaohui Xie #define CONFIG_NAND_FSL_IFC
137*02b5d2edSShaohui Xie 
138*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_BASE		0x7e800000
139*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_BASE_PHYS	CONFIG_SYS_NAND_BASE
140*02b5d2edSShaohui Xie 
141*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_CSPR_EXT	(0x0)
142*02b5d2edSShaohui Xie 
143*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \
144*02b5d2edSShaohui Xie 				| CSPR_PORT_SIZE_8	\
145*02b5d2edSShaohui Xie 				| CSPR_MSEL_NAND	\
146*02b5d2edSShaohui Xie 				| CSPR_V)
147*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_AMASK	IFC_AMASK(64*1024)
148*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_CSOR	(CSOR_NAND_ECC_ENC_EN	/* ECC on encode */ \
149*02b5d2edSShaohui Xie 				| CSOR_NAND_ECC_DEC_EN	/* ECC on decode */ \
150*02b5d2edSShaohui Xie 				| CSOR_NAND_ECC_MODE_4	/* 4-bit ECC */ \
151*02b5d2edSShaohui Xie 				| CSOR_NAND_RAL_3	/* RAL = 3 Bytes */ \
152*02b5d2edSShaohui Xie 				| CSOR_NAND_PGS_2K	/* Page Size = 2K */ \
153*02b5d2edSShaohui Xie 				| CSOR_NAND_SPRZ_64	/* Spare size = 64 */ \
154*02b5d2edSShaohui Xie 				| CSOR_NAND_PB(64))	/* 64 Pages Per Block */
155*02b5d2edSShaohui Xie 
156*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_ONFI_DETECTION
157*02b5d2edSShaohui Xie 
158*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_FTIM0		(FTIM0_NAND_TCCST(0x7) | \
159*02b5d2edSShaohui Xie 					FTIM0_NAND_TWP(0x18)   | \
160*02b5d2edSShaohui Xie 					FTIM0_NAND_TWCHT(0x7) | \
161*02b5d2edSShaohui Xie 					FTIM0_NAND_TWH(0xa))
162*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_FTIM1		(FTIM1_NAND_TADLE(0x32) | \
163*02b5d2edSShaohui Xie 					FTIM1_NAND_TWBE(0x39)  | \
164*02b5d2edSShaohui Xie 					FTIM1_NAND_TRR(0xe)   | \
165*02b5d2edSShaohui Xie 					FTIM1_NAND_TRP(0x18))
166*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_FTIM2		(FTIM2_NAND_TRAD(0xf) | \
167*02b5d2edSShaohui Xie 					FTIM2_NAND_TREH(0xa) | \
168*02b5d2edSShaohui Xie 					FTIM2_NAND_TWHRE(0x1e))
169*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_FTIM3           0x0
170*02b5d2edSShaohui Xie 
171*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_BASE_LIST	{ CONFIG_SYS_NAND_BASE }
172*02b5d2edSShaohui Xie #define CONFIG_SYS_MAX_NAND_DEVICE	1
173*02b5d2edSShaohui Xie #define CONFIG_MTD_NAND_VERIFY_WRITE
174*02b5d2edSShaohui Xie #define CONFIG_CMD_NAND
175*02b5d2edSShaohui Xie 
176*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_BLOCK_SIZE	(128 * 1024)
177*02b5d2edSShaohui Xie 
178*02b5d2edSShaohui Xie #ifdef CONFIG_NAND_BOOT
179*02b5d2edSShaohui Xie #define CONFIG_SPL_PAD_TO		0x20000		/* block aligned */
180*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_U_BOOT_OFFS	CONFIG_SPL_PAD_TO
181*02b5d2edSShaohui Xie #define CONFIG_SYS_NAND_U_BOOT_SIZE	(640 << 10)
182*02b5d2edSShaohui Xie #endif
183*02b5d2edSShaohui Xie 
184*02b5d2edSShaohui Xie /*
185*02b5d2edSShaohui Xie  * QIXIS Definitions
186*02b5d2edSShaohui Xie  */
187*02b5d2edSShaohui Xie #define CONFIG_FSL_QIXIS
188*02b5d2edSShaohui Xie 
189*02b5d2edSShaohui Xie #ifdef CONFIG_FSL_QIXIS
190*02b5d2edSShaohui Xie #define QIXIS_BASE			0x7fb00000
191*02b5d2edSShaohui Xie #define QIXIS_BASE_PHYS			QIXIS_BASE
192*02b5d2edSShaohui Xie #define CONFIG_SYS_I2C_FPGA_ADDR	0x66
193*02b5d2edSShaohui Xie #define QIXIS_LBMAP_SWITCH		6
194*02b5d2edSShaohui Xie #define QIXIS_LBMAP_MASK		0x0f
195*02b5d2edSShaohui Xie #define QIXIS_LBMAP_SHIFT		0
196*02b5d2edSShaohui Xie #define QIXIS_LBMAP_DFLTBANK		0x00
197*02b5d2edSShaohui Xie #define QIXIS_LBMAP_ALTBANK		0x04
198*02b5d2edSShaohui Xie #define QIXIS_RST_CTL_RESET		0x44
199*02b5d2edSShaohui Xie #define QIXIS_RCFG_CTL_RECONFIG_IDLE	0x20
200*02b5d2edSShaohui Xie #define QIXIS_RCFG_CTL_RECONFIG_START	0x21
201*02b5d2edSShaohui Xie #define QIXIS_RCFG_CTL_WATCHDOG_ENBLE	0x08
202*02b5d2edSShaohui Xie 
203*02b5d2edSShaohui Xie #define CONFIG_SYS_FPGA_CSPR_EXT	(0x0)
204*02b5d2edSShaohui Xie #define CONFIG_SYS_FPGA_CSPR		(CSPR_PHYS_ADDR(QIXIS_BASE_PHYS) | \
205*02b5d2edSShaohui Xie 					CSPR_PORT_SIZE_8 | \
206*02b5d2edSShaohui Xie 					CSPR_MSEL_GPCM | \
207*02b5d2edSShaohui Xie 					CSPR_V)
208*02b5d2edSShaohui Xie #define CONFIG_SYS_FPGA_AMASK		IFC_AMASK(64 * 1024)
209*02b5d2edSShaohui Xie #define CONFIG_SYS_FPGA_CSOR		(CSOR_NOR_ADM_SHIFT(4) | \
210*02b5d2edSShaohui Xie 					CSOR_NOR_NOR_MODE_AVD_NOR | \
211*02b5d2edSShaohui Xie 					CSOR_NOR_TRHZ_80)
212*02b5d2edSShaohui Xie 
213*02b5d2edSShaohui Xie /*
214*02b5d2edSShaohui Xie  * QIXIS Timing parameters for IFC GPCM
215*02b5d2edSShaohui Xie  */
216*02b5d2edSShaohui Xie #define CONFIG_SYS_FPGA_FTIM0		(FTIM0_GPCM_TACSE(0xc) | \
217*02b5d2edSShaohui Xie 					FTIM0_GPCM_TEADC(0x20) | \
218*02b5d2edSShaohui Xie 					FTIM0_GPCM_TEAHC(0x10))
219*02b5d2edSShaohui Xie #define CONFIG_SYS_FPGA_FTIM1		(FTIM1_GPCM_TACO(0x50) | \
220*02b5d2edSShaohui Xie 					FTIM1_GPCM_TRAD(0x1f))
221*02b5d2edSShaohui Xie #define CONFIG_SYS_FPGA_FTIM2		(FTIM2_GPCM_TCS(0x8) | \
222*02b5d2edSShaohui Xie 					FTIM2_GPCM_TCH(0x8) | \
223*02b5d2edSShaohui Xie 					FTIM2_GPCM_TWP(0xf0))
224*02b5d2edSShaohui Xie #define CONFIG_SYS_FPGA_FTIM3		0x0
225*02b5d2edSShaohui Xie #endif
226*02b5d2edSShaohui Xie 
227*02b5d2edSShaohui Xie #ifdef CONFIG_NAND_BOOT
228*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR0_EXT		CONFIG_SYS_NAND_CSPR_EXT
229*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR0		CONFIG_SYS_NAND_CSPR
230*02b5d2edSShaohui Xie #define CONFIG_SYS_AMASK0		CONFIG_SYS_NAND_AMASK
231*02b5d2edSShaohui Xie #define CONFIG_SYS_CSOR0		CONFIG_SYS_NAND_CSOR
232*02b5d2edSShaohui Xie #define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NAND_FTIM0
233*02b5d2edSShaohui Xie #define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NAND_FTIM1
234*02b5d2edSShaohui Xie #define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NAND_FTIM2
235*02b5d2edSShaohui Xie #define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NAND_FTIM3
236*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR1_EXT		CONFIG_SYS_NOR0_CSPR_EXT
237*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR1		CONFIG_SYS_NOR0_CSPR
238*02b5d2edSShaohui Xie #define CONFIG_SYS_AMASK1		CONFIG_SYS_NOR_AMASK
239*02b5d2edSShaohui Xie #define CONFIG_SYS_CSOR1		CONFIG_SYS_NOR_CSOR
240*02b5d2edSShaohui Xie #define CONFIG_SYS_CS1_FTIM0		CONFIG_SYS_NOR_FTIM0
241*02b5d2edSShaohui Xie #define CONFIG_SYS_CS1_FTIM1		CONFIG_SYS_NOR_FTIM1
242*02b5d2edSShaohui Xie #define CONFIG_SYS_CS1_FTIM2		CONFIG_SYS_NOR_FTIM2
243*02b5d2edSShaohui Xie #define CONFIG_SYS_CS1_FTIM3		CONFIG_SYS_NOR_FTIM3
244*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR2_EXT		CONFIG_SYS_NOR1_CSPR_EXT
245*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR2		CONFIG_SYS_NOR1_CSPR
246*02b5d2edSShaohui Xie #define CONFIG_SYS_AMASK2		CONFIG_SYS_NOR_AMASK
247*02b5d2edSShaohui Xie #define CONFIG_SYS_CSOR2		CONFIG_SYS_NOR_CSOR
248*02b5d2edSShaohui Xie #define CONFIG_SYS_CS2_FTIM0		CONFIG_SYS_NOR_FTIM0
249*02b5d2edSShaohui Xie #define CONFIG_SYS_CS2_FTIM1		CONFIG_SYS_NOR_FTIM1
250*02b5d2edSShaohui Xie #define CONFIG_SYS_CS2_FTIM2		CONFIG_SYS_NOR_FTIM2
251*02b5d2edSShaohui Xie #define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NOR_FTIM3
252*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR3_EXT		CONFIG_SYS_FPGA_CSPR_EXT
253*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR3		CONFIG_SYS_FPGA_CSPR
254*02b5d2edSShaohui Xie #define CONFIG_SYS_AMASK3		CONFIG_SYS_FPGA_AMASK
255*02b5d2edSShaohui Xie #define CONFIG_SYS_CSOR3		CONFIG_SYS_FPGA_CSOR
256*02b5d2edSShaohui Xie #define CONFIG_SYS_CS3_FTIM0		CONFIG_SYS_FPGA_FTIM0
257*02b5d2edSShaohui Xie #define CONFIG_SYS_CS3_FTIM1		CONFIG_SYS_FPGA_FTIM1
258*02b5d2edSShaohui Xie #define CONFIG_SYS_CS3_FTIM2		CONFIG_SYS_FPGA_FTIM2
259*02b5d2edSShaohui Xie #define CONFIG_SYS_CS3_FTIM3		CONFIG_SYS_FPGA_FTIM3
260*02b5d2edSShaohui Xie #else
261*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR0_EXT		CONFIG_SYS_NOR0_CSPR_EXT
262*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR0		CONFIG_SYS_NOR0_CSPR
263*02b5d2edSShaohui Xie #define CONFIG_SYS_AMASK0		CONFIG_SYS_NOR_AMASK
264*02b5d2edSShaohui Xie #define CONFIG_SYS_CSOR0		CONFIG_SYS_NOR_CSOR
265*02b5d2edSShaohui Xie #define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NOR_FTIM0
266*02b5d2edSShaohui Xie #define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NOR_FTIM1
267*02b5d2edSShaohui Xie #define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NOR_FTIM2
268*02b5d2edSShaohui Xie #define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NOR_FTIM3
269*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR1_EXT		CONFIG_SYS_NOR1_CSPR_EXT
270*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR1		CONFIG_SYS_NOR1_CSPR
271*02b5d2edSShaohui Xie #define CONFIG_SYS_AMASK1		CONFIG_SYS_NOR_AMASK
272*02b5d2edSShaohui Xie #define CONFIG_SYS_CSOR1		CONFIG_SYS_NOR_CSOR
273*02b5d2edSShaohui Xie #define CONFIG_SYS_CS1_FTIM0		CONFIG_SYS_NOR_FTIM0
274*02b5d2edSShaohui Xie #define CONFIG_SYS_CS1_FTIM1		CONFIG_SYS_NOR_FTIM1
275*02b5d2edSShaohui Xie #define CONFIG_SYS_CS1_FTIM2		CONFIG_SYS_NOR_FTIM2
276*02b5d2edSShaohui Xie #define CONFIG_SYS_CS1_FTIM3		CONFIG_SYS_NOR_FTIM3
277*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR2_EXT		CONFIG_SYS_NAND_CSPR_EXT
278*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR2		CONFIG_SYS_NAND_CSPR
279*02b5d2edSShaohui Xie #define CONFIG_SYS_AMASK2		CONFIG_SYS_NAND_AMASK
280*02b5d2edSShaohui Xie #define CONFIG_SYS_CSOR2		CONFIG_SYS_NAND_CSOR
281*02b5d2edSShaohui Xie #define CONFIG_SYS_CS2_FTIM0		CONFIG_SYS_NAND_FTIM0
282*02b5d2edSShaohui Xie #define CONFIG_SYS_CS2_FTIM1		CONFIG_SYS_NAND_FTIM1
283*02b5d2edSShaohui Xie #define CONFIG_SYS_CS2_FTIM2		CONFIG_SYS_NAND_FTIM2
284*02b5d2edSShaohui Xie #define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NAND_FTIM3
285*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR3_EXT		CONFIG_SYS_FPGA_CSPR_EXT
286*02b5d2edSShaohui Xie #define CONFIG_SYS_CSPR3		CONFIG_SYS_FPGA_CSPR
287*02b5d2edSShaohui Xie #define CONFIG_SYS_AMASK3		CONFIG_SYS_FPGA_AMASK
288*02b5d2edSShaohui Xie #define CONFIG_SYS_CSOR3		CONFIG_SYS_FPGA_CSOR
289*02b5d2edSShaohui Xie #define CONFIG_SYS_CS3_FTIM0		CONFIG_SYS_FPGA_FTIM0
290*02b5d2edSShaohui Xie #define CONFIG_SYS_CS3_FTIM1		CONFIG_SYS_FPGA_FTIM1
291*02b5d2edSShaohui Xie #define CONFIG_SYS_CS3_FTIM2		CONFIG_SYS_FPGA_FTIM2
292*02b5d2edSShaohui Xie #define CONFIG_SYS_CS3_FTIM3		CONFIG_SYS_FPGA_FTIM3
293*02b5d2edSShaohui Xie #endif
294*02b5d2edSShaohui Xie 
295*02b5d2edSShaohui Xie /*
296*02b5d2edSShaohui Xie  * I2C bus multiplexer
297*02b5d2edSShaohui Xie  */
298*02b5d2edSShaohui Xie #define I2C_MUX_PCA_ADDR_PRI		0x77
299*02b5d2edSShaohui Xie #define I2C_MUX_PCA_ADDR_SEC		0x76 /* Secondary multiplexer */
300*02b5d2edSShaohui Xie #define I2C_RETIMER_ADDR		0x18
301*02b5d2edSShaohui Xie #define I2C_MUX_CH_DEFAULT		0x8
302*02b5d2edSShaohui Xie #define I2C_MUX_CH_CH7301		0xC
303*02b5d2edSShaohui Xie #define I2C_MUX_CH5			0xD
304*02b5d2edSShaohui Xie #define I2C_MUX_CH7			0xF
305*02b5d2edSShaohui Xie 
306*02b5d2edSShaohui Xie #define I2C_MUX_CH_VOL_MONITOR 0xa
307*02b5d2edSShaohui Xie 
308*02b5d2edSShaohui Xie /* Voltage monitor on channel 2*/
309*02b5d2edSShaohui Xie #define I2C_VOL_MONITOR_ADDR           0x40
310*02b5d2edSShaohui Xie #define I2C_VOL_MONITOR_BUS_V_OFFSET   0x2
311*02b5d2edSShaohui Xie #define I2C_VOL_MONITOR_BUS_V_OVF      0x1
312*02b5d2edSShaohui Xie #define I2C_VOL_MONITOR_BUS_V_SHIFT    3
313*02b5d2edSShaohui Xie 
314*02b5d2edSShaohui Xie #define CONFIG_VID_FLS_ENV		"ls1043aqds_vdd_mv"
315*02b5d2edSShaohui Xie #ifndef CONFIG_SPL_BUILD
316*02b5d2edSShaohui Xie #define CONFIG_VID
317*02b5d2edSShaohui Xie #endif
318*02b5d2edSShaohui Xie #define CONFIG_VOL_MONITOR_IR36021_SET
319*02b5d2edSShaohui Xie #define CONFIG_VOL_MONITOR_INA220
320*02b5d2edSShaohui Xie /* The lowest and highest voltage allowed for LS1043AQDS */
321*02b5d2edSShaohui Xie #define VDD_MV_MIN			819
322*02b5d2edSShaohui Xie #define VDD_MV_MAX			1212
323*02b5d2edSShaohui Xie 
324*02b5d2edSShaohui Xie /*
325*02b5d2edSShaohui Xie  * Miscellaneous configurable options
326*02b5d2edSShaohui Xie  */
327*02b5d2edSShaohui Xie #define CONFIG_MISC_INIT_R
328*02b5d2edSShaohui Xie #define CONFIG_SYS_LONGHELP		/* undef to save memory */
329*02b5d2edSShaohui Xie #define CONFIG_SYS_HUSH_PARSER		/* use "hush" command parser */
330*02b5d2edSShaohui Xie #define CONFIG_SYS_PROMPT_HUSH_PS2	"> "
331*02b5d2edSShaohui Xie #define CONFIG_SYS_PROMPT		"=> "
332*02b5d2edSShaohui Xie #define CONFIG_AUTO_COMPLETE
333*02b5d2edSShaohui Xie #define CONFIG_SYS_PBSIZE		\
334*02b5d2edSShaohui Xie 		(CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
335*02b5d2edSShaohui Xie #define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE
336*02b5d2edSShaohui Xie 
337*02b5d2edSShaohui Xie #define CONFIG_CMD_GREPENV
338*02b5d2edSShaohui Xie #define CONFIG_CMD_MEMINFO
339*02b5d2edSShaohui Xie #define CONFIG_CMD_MEMTEST
340*02b5d2edSShaohui Xie #define CONFIG_SYS_MEMTEST_START	0x80000000
341*02b5d2edSShaohui Xie #define CONFIG_SYS_MEMTEST_END		0x9fffffff
342*02b5d2edSShaohui Xie 
343*02b5d2edSShaohui Xie #define CONFIG_SYS_HZ			1000
344*02b5d2edSShaohui Xie 
345*02b5d2edSShaohui Xie /*
346*02b5d2edSShaohui Xie  * Stack sizes
347*02b5d2edSShaohui Xie  * The stack sizes are set up in start.S using the settings below
348*02b5d2edSShaohui Xie  */
349*02b5d2edSShaohui Xie #define CONFIG_STACKSIZE		(30 * 1024)
350*02b5d2edSShaohui Xie 
351*02b5d2edSShaohui Xie #define CONFIG_SYS_INIT_SP_OFFSET \
352*02b5d2edSShaohui Xie 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
353*02b5d2edSShaohui Xie 
354*02b5d2edSShaohui Xie #ifdef CONFIG_SPL_BUILD
355*02b5d2edSShaohui Xie #define CONFIG_SYS_MONITOR_BASE CONFIG_SPL_TEXT_BASE
356*02b5d2edSShaohui Xie #else
357*02b5d2edSShaohui Xie #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE    /* start of monitor */
358*02b5d2edSShaohui Xie #endif
359*02b5d2edSShaohui Xie 
360*02b5d2edSShaohui Xie /*
361*02b5d2edSShaohui Xie  * Environment
362*02b5d2edSShaohui Xie  */
363*02b5d2edSShaohui Xie #define CONFIG_ENV_OVERWRITE
364*02b5d2edSShaohui Xie 
365*02b5d2edSShaohui Xie #ifdef CONFIG_NAND_BOOT
366*02b5d2edSShaohui Xie #define CONFIG_ENV_IS_IN_NAND
367*02b5d2edSShaohui Xie #define CONFIG_ENV_SIZE			0x2000
368*02b5d2edSShaohui Xie #define CONFIG_ENV_OFFSET		(10 * CONFIG_SYS_NAND_BLOCK_SIZE)
369*02b5d2edSShaohui Xie #elif defined(CONFIG_SD_BOOT)
370*02b5d2edSShaohui Xie #define CONFIG_ENV_OFFSET		(1024 * 1024)
371*02b5d2edSShaohui Xie #define CONFIG_ENV_IS_IN_MMC
372*02b5d2edSShaohui Xie #define CONFIG_SYS_MMC_ENV_DEV		0
373*02b5d2edSShaohui Xie #define CONFIG_ENV_SIZE			0x2000
374*02b5d2edSShaohui Xie #else
375*02b5d2edSShaohui Xie #define CONFIG_ENV_IS_IN_FLASH
376*02b5d2edSShaohui Xie #define CONFIG_ENV_ADDR			(CONFIG_SYS_FLASH_BASE + 0x200000)
377*02b5d2edSShaohui Xie #define CONFIG_ENV_SECT_SIZE		0x20000
378*02b5d2edSShaohui Xie #define CONFIG_ENV_SIZE			0x20000
379*02b5d2edSShaohui Xie #endif
380*02b5d2edSShaohui Xie 
381*02b5d2edSShaohui Xie #define CONFIG_OF_LIBFDT
382*02b5d2edSShaohui Xie #define CONFIG_OF_BOARD_SETUP
383*02b5d2edSShaohui Xie #define CONFIG_CMD_BOOTZ
384*02b5d2edSShaohui Xie #define CONFIG_CMD_MII
385*02b5d2edSShaohui Xie #define CONFIG_CMDLINE_TAG
386*02b5d2edSShaohui Xie 
387*02b5d2edSShaohui Xie #endif /* __LS1043AQDS_H__ */
388