xref: /rk3399_rockchip-uboot/include/configs/T4240RDB.h (revision 0b2e13d9ccbe56e32dc674cf896b2fb55684368c)
1*0b2e13d9SChunhe Lan /*
2*0b2e13d9SChunhe Lan  * Copyright 2014 Freescale Semiconductor, Inc.
3*0b2e13d9SChunhe Lan  *
4*0b2e13d9SChunhe Lan  * SPDX-License-Identifier:	GPL-2.0+
5*0b2e13d9SChunhe Lan  */
6*0b2e13d9SChunhe Lan 
7*0b2e13d9SChunhe Lan /*
8*0b2e13d9SChunhe Lan  * T4240 RDB board configuration file
9*0b2e13d9SChunhe Lan  */
10*0b2e13d9SChunhe Lan #ifndef __CONFIG_H
11*0b2e13d9SChunhe Lan #define __CONFIG_H
12*0b2e13d9SChunhe Lan 
13*0b2e13d9SChunhe Lan #define CONFIG_T4240RDB
14*0b2e13d9SChunhe Lan #define CONFIG_PHYS_64BIT
15*0b2e13d9SChunhe Lan 
16*0b2e13d9SChunhe Lan #define CONFIG_FSL_SATA_V2
17*0b2e13d9SChunhe Lan #define CONFIG_PCIE4
18*0b2e13d9SChunhe Lan 
19*0b2e13d9SChunhe Lan #define CONFIG_ICS307_REFCLK_HZ		25000000  /* ICS307 ref clk freq */
20*0b2e13d9SChunhe Lan 
21*0b2e13d9SChunhe Lan #ifdef CONFIG_RAMBOOT_PBL
22*0b2e13d9SChunhe Lan #define CONFIG_RAMBOOT_TEXT_BASE	CONFIG_SYS_TEXT_BASE
23*0b2e13d9SChunhe Lan #define CONFIG_RESET_VECTOR_ADDRESS	0xfffffffc
24*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_PBL_PBI $(SRCTREE)/board/freescale/t4rdb/t4_pbi.cfg
25*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_PBL_RCW $(SRCTREE)/board/freescale/t4rdb/t4_rcw.cfg
26*0b2e13d9SChunhe Lan #endif
27*0b2e13d9SChunhe Lan 
28*0b2e13d9SChunhe Lan #define CONFIG_DDR_ECC
29*0b2e13d9SChunhe Lan 
30*0b2e13d9SChunhe Lan #define CONFIG_CMD_REGINFO
31*0b2e13d9SChunhe Lan 
32*0b2e13d9SChunhe Lan /* High Level Configuration Options */
33*0b2e13d9SChunhe Lan #define CONFIG_BOOKE
34*0b2e13d9SChunhe Lan #define CONFIG_E500			/* BOOKE e500 family */
35*0b2e13d9SChunhe Lan #define CONFIG_E500MC			/* BOOKE e500mc family */
36*0b2e13d9SChunhe Lan #define CONFIG_SYS_BOOK3E_HV		/* Category E.HV supported */
37*0b2e13d9SChunhe Lan #define CONFIG_MP			/* support multiple processors */
38*0b2e13d9SChunhe Lan 
39*0b2e13d9SChunhe Lan #ifndef CONFIG_SYS_TEXT_BASE
40*0b2e13d9SChunhe Lan #define CONFIG_SYS_TEXT_BASE	0xeff40000
41*0b2e13d9SChunhe Lan #endif
42*0b2e13d9SChunhe Lan 
43*0b2e13d9SChunhe Lan #ifndef CONFIG_RESET_VECTOR_ADDRESS
44*0b2e13d9SChunhe Lan #define CONFIG_RESET_VECTOR_ADDRESS	0xeffffffc
45*0b2e13d9SChunhe Lan #endif
46*0b2e13d9SChunhe Lan 
47*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_CPC		/* Corenet Platform Cache */
48*0b2e13d9SChunhe Lan #define CONFIG_SYS_NUM_CPC		CONFIG_NUM_DDR_CONTROLLERS
49*0b2e13d9SChunhe Lan #define CONFIG_FSL_IFC			/* Enable IFC Support */
50*0b2e13d9SChunhe Lan #define CONFIG_PCI			/* Enable PCI/PCIE */
51*0b2e13d9SChunhe Lan #define CONFIG_PCIE1			/* PCIE controler 1 */
52*0b2e13d9SChunhe Lan #define CONFIG_PCIE2			/* PCIE controler 2 */
53*0b2e13d9SChunhe Lan #define CONFIG_PCIE3			/* PCIE controler 3 */
54*0b2e13d9SChunhe Lan #define CONFIG_FSL_PCI_INIT		/* Use common FSL init code */
55*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCI_64BIT		/* enable 64-bit PCI resources */
56*0b2e13d9SChunhe Lan 
57*0b2e13d9SChunhe Lan #define CONFIG_FSL_LAW			/* Use common FSL init code */
58*0b2e13d9SChunhe Lan 
59*0b2e13d9SChunhe Lan #define CONFIG_ENV_OVERWRITE
60*0b2e13d9SChunhe Lan 
61*0b2e13d9SChunhe Lan /*
62*0b2e13d9SChunhe Lan  * These can be toggled for performance analysis, otherwise use default.
63*0b2e13d9SChunhe Lan  */
64*0b2e13d9SChunhe Lan #define CONFIG_SYS_CACHE_STASHING
65*0b2e13d9SChunhe Lan #define CONFIG_BTB			/* toggle branch predition */
66*0b2e13d9SChunhe Lan #ifdef CONFIG_DDR_ECC
67*0b2e13d9SChunhe Lan #define CONFIG_ECC_INIT_VIA_DDRCONTROLLER
68*0b2e13d9SChunhe Lan #define CONFIG_MEM_INIT_VALUE		0xdeadbeef
69*0b2e13d9SChunhe Lan #endif
70*0b2e13d9SChunhe Lan 
71*0b2e13d9SChunhe Lan #define CONFIG_ENABLE_36BIT_PHYS
72*0b2e13d9SChunhe Lan 
73*0b2e13d9SChunhe Lan #define CONFIG_ADDR_MAP
74*0b2e13d9SChunhe Lan #define CONFIG_SYS_NUM_ADDR_MAP		64	/* number of TLB1 entries */
75*0b2e13d9SChunhe Lan 
76*0b2e13d9SChunhe Lan #define CONFIG_SYS_MEMTEST_START	0x00200000	/* memtest works on */
77*0b2e13d9SChunhe Lan #define CONFIG_SYS_MEMTEST_END		0x00400000
78*0b2e13d9SChunhe Lan #define CONFIG_SYS_ALT_MEMTEST
79*0b2e13d9SChunhe Lan #define CONFIG_PANIC_HANG	/* do not reset board on panic */
80*0b2e13d9SChunhe Lan 
81*0b2e13d9SChunhe Lan /*
82*0b2e13d9SChunhe Lan  *  Config the L3 Cache as L3 SRAM
83*0b2e13d9SChunhe Lan  */
84*0b2e13d9SChunhe Lan #define CONFIG_SYS_INIT_L3_ADDR		CONFIG_RAMBOOT_TEXT_BASE
85*0b2e13d9SChunhe Lan 
86*0b2e13d9SChunhe Lan #define CONFIG_SYS_DCSRBAR		0xf0000000
87*0b2e13d9SChunhe Lan #define CONFIG_SYS_DCSRBAR_PHYS		0xf00000000ull
88*0b2e13d9SChunhe Lan 
89*0b2e13d9SChunhe Lan /*
90*0b2e13d9SChunhe Lan  * DDR Setup
91*0b2e13d9SChunhe Lan  */
92*0b2e13d9SChunhe Lan #define CONFIG_VERY_BIG_RAM
93*0b2e13d9SChunhe Lan #define CONFIG_SYS_DDR_SDRAM_BASE	0x00000000
94*0b2e13d9SChunhe Lan #define CONFIG_SYS_SDRAM_BASE		CONFIG_SYS_DDR_SDRAM_BASE
95*0b2e13d9SChunhe Lan 
96*0b2e13d9SChunhe Lan /* CONFIG_NUM_DDR_CONTROLLERS is defined in include/asm/config_mpc85xx.h */
97*0b2e13d9SChunhe Lan #define CONFIG_DIMM_SLOTS_PER_CTLR	1
98*0b2e13d9SChunhe Lan #define CONFIG_CHIP_SELECTS_PER_CTRL	4
99*0b2e13d9SChunhe Lan #define CONFIG_FSL_DDR_FIRST_SLOT_QUAD_CAPABLE
100*0b2e13d9SChunhe Lan 
101*0b2e13d9SChunhe Lan #define CONFIG_DDR_SPD
102*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_DDR3
103*0b2e13d9SChunhe Lan 
104*0b2e13d9SChunhe Lan 
105*0b2e13d9SChunhe Lan /*
106*0b2e13d9SChunhe Lan  * IFC Definitions
107*0b2e13d9SChunhe Lan  */
108*0b2e13d9SChunhe Lan #define CONFIG_SYS_FLASH_BASE	0xe0000000
109*0b2e13d9SChunhe Lan #define CONFIG_SYS_FLASH_BASE_PHYS	(0xf00000000ull | CONFIG_SYS_FLASH_BASE)
110*0b2e13d9SChunhe Lan 
111*0b2e13d9SChunhe Lan 
112*0b2e13d9SChunhe Lan #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_TEXT_BASE
113*0b2e13d9SChunhe Lan 
114*0b2e13d9SChunhe Lan #define CONFIG_BOARD_EARLY_INIT_R	/* call board_early_init_r function */
115*0b2e13d9SChunhe Lan #define CONFIG_MISC_INIT_R
116*0b2e13d9SChunhe Lan 
117*0b2e13d9SChunhe Lan #define CONFIG_HWCONFIG
118*0b2e13d9SChunhe Lan 
119*0b2e13d9SChunhe Lan /* define to use L1 as initial stack */
120*0b2e13d9SChunhe Lan #define CONFIG_L1_INIT_RAM
121*0b2e13d9SChunhe Lan #define CONFIG_SYS_INIT_RAM_LOCK
122*0b2e13d9SChunhe Lan #define CONFIG_SYS_INIT_RAM_ADDR	0xfdd00000	/* Initial L1 address */
123*0b2e13d9SChunhe Lan #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH	0xf
124*0b2e13d9SChunhe Lan #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW	0xfe0ec000
125*0b2e13d9SChunhe Lan /* The assembler doesn't like typecast */
126*0b2e13d9SChunhe Lan #define CONFIG_SYS_INIT_RAM_ADDR_PHYS \
127*0b2e13d9SChunhe Lan 	((CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH * 1ull << 32) | \
128*0b2e13d9SChunhe Lan 	  CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW)
129*0b2e13d9SChunhe Lan #define CONFIG_SYS_INIT_RAM_SIZE		0x00004000
130*0b2e13d9SChunhe Lan 
131*0b2e13d9SChunhe Lan #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - \
132*0b2e13d9SChunhe Lan 					GENERATED_GBL_DATA_SIZE)
133*0b2e13d9SChunhe Lan #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
134*0b2e13d9SChunhe Lan 
135*0b2e13d9SChunhe Lan #define CONFIG_SYS_MONITOR_LEN		(512 * 1024)
136*0b2e13d9SChunhe Lan #define CONFIG_SYS_MALLOC_LEN		(4 * 1024 * 1024)
137*0b2e13d9SChunhe Lan 
138*0b2e13d9SChunhe Lan /* Serial Port - controlled on board with jumper J8
139*0b2e13d9SChunhe Lan  * open - index 2
140*0b2e13d9SChunhe Lan  * shorted - index 1
141*0b2e13d9SChunhe Lan  */
142*0b2e13d9SChunhe Lan #define CONFIG_CONS_INDEX	1
143*0b2e13d9SChunhe Lan #define CONFIG_SYS_NS16550
144*0b2e13d9SChunhe Lan #define CONFIG_SYS_NS16550_SERIAL
145*0b2e13d9SChunhe Lan #define CONFIG_SYS_NS16550_REG_SIZE	1
146*0b2e13d9SChunhe Lan #define CONFIG_SYS_NS16550_CLK		(get_bus_freq(0)/2)
147*0b2e13d9SChunhe Lan 
148*0b2e13d9SChunhe Lan #define CONFIG_SYS_BAUDRATE_TABLE	\
149*0b2e13d9SChunhe Lan 	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200}
150*0b2e13d9SChunhe Lan 
151*0b2e13d9SChunhe Lan #define CONFIG_SYS_NS16550_COM1	(CONFIG_SYS_CCSRBAR+0x11C500)
152*0b2e13d9SChunhe Lan #define CONFIG_SYS_NS16550_COM2	(CONFIG_SYS_CCSRBAR+0x11C600)
153*0b2e13d9SChunhe Lan #define CONFIG_SYS_NS16550_COM3	(CONFIG_SYS_CCSRBAR+0x11D500)
154*0b2e13d9SChunhe Lan #define CONFIG_SYS_NS16550_COM4	(CONFIG_SYS_CCSRBAR+0x11D600)
155*0b2e13d9SChunhe Lan 
156*0b2e13d9SChunhe Lan /* Use the HUSH parser */
157*0b2e13d9SChunhe Lan #define CONFIG_SYS_HUSH_PARSER
158*0b2e13d9SChunhe Lan #define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
159*0b2e13d9SChunhe Lan 
160*0b2e13d9SChunhe Lan /* pass open firmware flat tree */
161*0b2e13d9SChunhe Lan #define CONFIG_OF_LIBFDT
162*0b2e13d9SChunhe Lan #define CONFIG_OF_BOARD_SETUP
163*0b2e13d9SChunhe Lan #define CONFIG_OF_STDOUT_VIA_ALIAS
164*0b2e13d9SChunhe Lan 
165*0b2e13d9SChunhe Lan /* new uImage format support */
166*0b2e13d9SChunhe Lan #define CONFIG_FIT
167*0b2e13d9SChunhe Lan #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
168*0b2e13d9SChunhe Lan 
169*0b2e13d9SChunhe Lan /* I2C */
170*0b2e13d9SChunhe Lan #define CONFIG_SYS_I2C
171*0b2e13d9SChunhe Lan #define CONFIG_SYS_I2C_FSL
172*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_I2C_SLAVE	0x7F
173*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_I2C_OFFSET	0x118000
174*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_I2C2_SLAVE	0x7F
175*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_I2C2_OFFSET	0x118100
176*0b2e13d9SChunhe Lan 
177*0b2e13d9SChunhe Lan /*
178*0b2e13d9SChunhe Lan  * General PCI
179*0b2e13d9SChunhe Lan  * Memory space is mapped 1-1, but I/O space must start from 0.
180*0b2e13d9SChunhe Lan  */
181*0b2e13d9SChunhe Lan 
182*0b2e13d9SChunhe Lan /* controller 1, direct to uli, tgtid 3, Base address 20000 */
183*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE1_MEM_VIRT	0x80000000
184*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE1_MEM_BUS	0xe0000000
185*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE1_MEM_PHYS	0xc00000000ull
186*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE1_MEM_SIZE	0x20000000	/* 512M */
187*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE1_IO_VIRT	0xf8000000
188*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE1_IO_BUS		0x00000000
189*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE1_IO_PHYS	0xff8000000ull
190*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE1_IO_SIZE	0x00010000	/* 64k */
191*0b2e13d9SChunhe Lan 
192*0b2e13d9SChunhe Lan /* controller 2, Slot 2, tgtid 2, Base address 201000 */
193*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE2_MEM_VIRT	0xa0000000
194*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE2_MEM_BUS	0xe0000000
195*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE2_MEM_PHYS	0xc20000000ull
196*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE2_MEM_SIZE	0x20000000	/* 512M */
197*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE2_IO_VIRT	0xf8010000
198*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE2_IO_BUS		0x00000000
199*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE2_IO_PHYS	0xff8010000ull
200*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE2_IO_SIZE	0x00010000	/* 64k */
201*0b2e13d9SChunhe Lan 
202*0b2e13d9SChunhe Lan /* controller 3, Slot 1, tgtid 1, Base address 202000 */
203*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE3_MEM_VIRT	0xc0000000
204*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE3_MEM_BUS	0xe0000000
205*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE3_MEM_PHYS	0xc40000000ull
206*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE3_MEM_SIZE	0x20000000	/* 512M */
207*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE3_IO_VIRT	0xf8020000
208*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE3_IO_BUS		0x00000000
209*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE3_IO_PHYS	0xff8020000ull
210*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE3_IO_SIZE	0x00010000	/* 64k */
211*0b2e13d9SChunhe Lan 
212*0b2e13d9SChunhe Lan /* controller 4, Base address 203000 */
213*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE4_MEM_BUS	0xe0000000
214*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE4_MEM_PHYS	0xc60000000ull
215*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE4_MEM_SIZE	0x20000000	/* 512M */
216*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE4_IO_BUS		0x00000000
217*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE4_IO_PHYS	0xff8030000ull
218*0b2e13d9SChunhe Lan #define CONFIG_SYS_PCIE4_IO_SIZE	0x00010000	/* 64k */
219*0b2e13d9SChunhe Lan 
220*0b2e13d9SChunhe Lan #ifdef CONFIG_PCI
221*0b2e13d9SChunhe Lan #define CONFIG_PCI_INDIRECT_BRIDGE
222*0b2e13d9SChunhe Lan #define CONFIG_NET_MULTI
223*0b2e13d9SChunhe Lan #define CONFIG_PCI_PNP			/* do pci plug-and-play */
224*0b2e13d9SChunhe Lan #define CONFIG_E1000
225*0b2e13d9SChunhe Lan 
226*0b2e13d9SChunhe Lan #define CONFIG_PCI_SCAN_SHOW		/* show pci devices on startup */
227*0b2e13d9SChunhe Lan #define CONFIG_DOS_PARTITION
228*0b2e13d9SChunhe Lan #endif	/* CONFIG_PCI */
229*0b2e13d9SChunhe Lan 
230*0b2e13d9SChunhe Lan /* SATA */
231*0b2e13d9SChunhe Lan #ifdef CONFIG_FSL_SATA_V2
232*0b2e13d9SChunhe Lan #define CONFIG_LIBATA
233*0b2e13d9SChunhe Lan #define CONFIG_FSL_SATA
234*0b2e13d9SChunhe Lan 
235*0b2e13d9SChunhe Lan #define CONFIG_SYS_SATA_MAX_DEVICE	2
236*0b2e13d9SChunhe Lan #define CONFIG_SATA1
237*0b2e13d9SChunhe Lan #define CONFIG_SYS_SATA1		CONFIG_SYS_MPC85xx_SATA1_ADDR
238*0b2e13d9SChunhe Lan #define CONFIG_SYS_SATA1_FLAGS		FLAGS_DMA
239*0b2e13d9SChunhe Lan #define CONFIG_SATA2
240*0b2e13d9SChunhe Lan #define CONFIG_SYS_SATA2		CONFIG_SYS_MPC85xx_SATA2_ADDR
241*0b2e13d9SChunhe Lan #define CONFIG_SYS_SATA2_FLAGS		FLAGS_DMA
242*0b2e13d9SChunhe Lan 
243*0b2e13d9SChunhe Lan #define CONFIG_LBA48
244*0b2e13d9SChunhe Lan #define CONFIG_CMD_SATA
245*0b2e13d9SChunhe Lan #define CONFIG_DOS_PARTITION
246*0b2e13d9SChunhe Lan #define CONFIG_CMD_EXT2
247*0b2e13d9SChunhe Lan #endif
248*0b2e13d9SChunhe Lan 
249*0b2e13d9SChunhe Lan #ifdef CONFIG_FMAN_ENET
250*0b2e13d9SChunhe Lan #define CONFIG_MII		/* MII PHY management */
251*0b2e13d9SChunhe Lan #define CONFIG_ETHPRIME		"FM1@DTSEC1"
252*0b2e13d9SChunhe Lan #define CONFIG_PHY_GIGE		/* Include GbE speed/duplex detection */
253*0b2e13d9SChunhe Lan #endif
254*0b2e13d9SChunhe Lan 
255*0b2e13d9SChunhe Lan /*
256*0b2e13d9SChunhe Lan  * Environment
257*0b2e13d9SChunhe Lan  */
258*0b2e13d9SChunhe Lan #define CONFIG_LOADS_ECHO		/* echo on for serial download */
259*0b2e13d9SChunhe Lan #define CONFIG_SYS_LOADS_BAUD_CHANGE	/* allow baudrate change */
260*0b2e13d9SChunhe Lan 
261*0b2e13d9SChunhe Lan /*
262*0b2e13d9SChunhe Lan  * Command line configuration.
263*0b2e13d9SChunhe Lan  */
264*0b2e13d9SChunhe Lan #include <config_cmd_default.h>
265*0b2e13d9SChunhe Lan 
266*0b2e13d9SChunhe Lan #define CONFIG_CMD_DHCP
267*0b2e13d9SChunhe Lan #define CONFIG_CMD_ELF
268*0b2e13d9SChunhe Lan #define CONFIG_CMD_ERRATA
269*0b2e13d9SChunhe Lan #define CONFIG_CMD_GREPENV
270*0b2e13d9SChunhe Lan #define CONFIG_CMD_IRQ
271*0b2e13d9SChunhe Lan #define CONFIG_CMD_I2C
272*0b2e13d9SChunhe Lan #define CONFIG_CMD_MII
273*0b2e13d9SChunhe Lan #define CONFIG_CMD_PING
274*0b2e13d9SChunhe Lan #define CONFIG_CMD_SETEXPR
275*0b2e13d9SChunhe Lan 
276*0b2e13d9SChunhe Lan #ifdef CONFIG_PCI
277*0b2e13d9SChunhe Lan #define CONFIG_CMD_PCI
278*0b2e13d9SChunhe Lan #define CONFIG_CMD_NET
279*0b2e13d9SChunhe Lan #endif
280*0b2e13d9SChunhe Lan 
281*0b2e13d9SChunhe Lan /*
282*0b2e13d9SChunhe Lan  * Miscellaneous configurable options
283*0b2e13d9SChunhe Lan  */
284*0b2e13d9SChunhe Lan #define CONFIG_SYS_LONGHELP			/* undef to save memory	*/
285*0b2e13d9SChunhe Lan #define CONFIG_CMDLINE_EDITING			/* Command-line editing */
286*0b2e13d9SChunhe Lan #define CONFIG_AUTO_COMPLETE			/* add autocompletion support */
287*0b2e13d9SChunhe Lan #define CONFIG_SYS_LOAD_ADDR	0x2000000	/* default load address */
288*0b2e13d9SChunhe Lan #ifdef CONFIG_CMD_KGDB
289*0b2e13d9SChunhe Lan #define CONFIG_SYS_CBSIZE	1024		/* Console I/O Buffer Size */
290*0b2e13d9SChunhe Lan #else
291*0b2e13d9SChunhe Lan #define CONFIG_SYS_CBSIZE	256		/* Console I/O Buffer Size */
292*0b2e13d9SChunhe Lan #endif
293*0b2e13d9SChunhe Lan #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16)
294*0b2e13d9SChunhe Lan #define CONFIG_SYS_MAXARGS	16		/* max number of command args */
295*0b2e13d9SChunhe Lan #define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE/* Boot Argument Buffer Size */
296*0b2e13d9SChunhe Lan 
297*0b2e13d9SChunhe Lan /*
298*0b2e13d9SChunhe Lan  * For booting Linux, the board info and command line data
299*0b2e13d9SChunhe Lan  * have to be in the first 64 MB of memory, since this is
300*0b2e13d9SChunhe Lan  * the maximum mapped by the Linux kernel during initialization.
301*0b2e13d9SChunhe Lan  */
302*0b2e13d9SChunhe Lan #define CONFIG_SYS_BOOTMAPSZ	(64 << 20)	/* Initial map for Linux*/
303*0b2e13d9SChunhe Lan #define CONFIG_SYS_BOOTM_LEN	(64 << 20)	/* Increase max gunzip size */
304*0b2e13d9SChunhe Lan 
305*0b2e13d9SChunhe Lan #ifdef CONFIG_CMD_KGDB
306*0b2e13d9SChunhe Lan #define CONFIG_KGDB_BAUDRATE	230400	/* speed to run kgdb serial port */
307*0b2e13d9SChunhe Lan #endif
308*0b2e13d9SChunhe Lan 
309*0b2e13d9SChunhe Lan /*
310*0b2e13d9SChunhe Lan  * Environment Configuration
311*0b2e13d9SChunhe Lan  */
312*0b2e13d9SChunhe Lan #define CONFIG_ROOTPATH		"/opt/nfsroot"
313*0b2e13d9SChunhe Lan #define CONFIG_BOOTFILE		"uImage"
314*0b2e13d9SChunhe Lan #define CONFIG_UBOOTPATH	"u-boot.bin"	/* U-Boot image on TFTP server*/
315*0b2e13d9SChunhe Lan 
316*0b2e13d9SChunhe Lan /* default location for tftp and bootm */
317*0b2e13d9SChunhe Lan #define CONFIG_LOADADDR		1000000
318*0b2e13d9SChunhe Lan 
319*0b2e13d9SChunhe Lan 
320*0b2e13d9SChunhe Lan #define CONFIG_BAUDRATE	115200
321*0b2e13d9SChunhe Lan 
322*0b2e13d9SChunhe Lan #define CONFIG_HVBOOT					\
323*0b2e13d9SChunhe Lan 	"setenv bootargs config-addr=0x60000000; "	\
324*0b2e13d9SChunhe Lan 	"bootm 0x01000000 - 0x00f00000"
325*0b2e13d9SChunhe Lan 
326*0b2e13d9SChunhe Lan #ifdef CONFIG_SYS_NO_FLASH
327*0b2e13d9SChunhe Lan #ifndef CONFIG_RAMBOOT_PBL
328*0b2e13d9SChunhe Lan #define CONFIG_ENV_IS_NOWHERE
329*0b2e13d9SChunhe Lan #endif
330*0b2e13d9SChunhe Lan #else
331*0b2e13d9SChunhe Lan #define CONFIG_FLASH_CFI_DRIVER
332*0b2e13d9SChunhe Lan #define CONFIG_SYS_FLASH_CFI
333*0b2e13d9SChunhe Lan #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE
334*0b2e13d9SChunhe Lan #endif
335*0b2e13d9SChunhe Lan 
336*0b2e13d9SChunhe Lan #if defined(CONFIG_SPIFLASH)
337*0b2e13d9SChunhe Lan #define CONFIG_SYS_EXTRA_ENV_RELOC
338*0b2e13d9SChunhe Lan #define CONFIG_ENV_IS_IN_SPI_FLASH
339*0b2e13d9SChunhe Lan #define CONFIG_ENV_SPI_BUS              0
340*0b2e13d9SChunhe Lan #define CONFIG_ENV_SPI_CS               0
341*0b2e13d9SChunhe Lan #define CONFIG_ENV_SPI_MAX_HZ           10000000
342*0b2e13d9SChunhe Lan #define CONFIG_ENV_SPI_MODE             0
343*0b2e13d9SChunhe Lan #define CONFIG_ENV_SIZE                 0x2000          /* 8KB */
344*0b2e13d9SChunhe Lan #define CONFIG_ENV_OFFSET               0x100000        /* 1MB */
345*0b2e13d9SChunhe Lan #define CONFIG_ENV_SECT_SIZE            0x10000
346*0b2e13d9SChunhe Lan #elif defined(CONFIG_SDCARD)
347*0b2e13d9SChunhe Lan #define CONFIG_SYS_EXTRA_ENV_RELOC
348*0b2e13d9SChunhe Lan #define CONFIG_ENV_IS_IN_MMC
349*0b2e13d9SChunhe Lan #define CONFIG_SYS_MMC_ENV_DEV          0
350*0b2e13d9SChunhe Lan #define CONFIG_ENV_SIZE			0x2000
351*0b2e13d9SChunhe Lan #define CONFIG_ENV_OFFSET		(512 * 1658)
352*0b2e13d9SChunhe Lan #elif defined(CONFIG_NAND)
353*0b2e13d9SChunhe Lan #define CONFIG_SYS_EXTRA_ENV_RELOC
354*0b2e13d9SChunhe Lan #define CONFIG_ENV_IS_IN_NAND
355*0b2e13d9SChunhe Lan #define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE
356*0b2e13d9SChunhe Lan #define CONFIG_ENV_OFFSET		(7 * CONFIG_SYS_NAND_BLOCK_SIZE)
357*0b2e13d9SChunhe Lan #elif defined(CONFIG_ENV_IS_NOWHERE)
358*0b2e13d9SChunhe Lan #define CONFIG_ENV_SIZE		0x2000
359*0b2e13d9SChunhe Lan #else
360*0b2e13d9SChunhe Lan #define CONFIG_ENV_IS_IN_FLASH
361*0b2e13d9SChunhe Lan #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
362*0b2e13d9SChunhe Lan #define CONFIG_ENV_SIZE		0x2000
363*0b2e13d9SChunhe Lan #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
364*0b2e13d9SChunhe Lan #endif
365*0b2e13d9SChunhe Lan 
366*0b2e13d9SChunhe Lan #define CONFIG_SYS_CLK_FREQ	66666666
367*0b2e13d9SChunhe Lan #define CONFIG_DDR_CLK_FREQ	133333333
368*0b2e13d9SChunhe Lan 
369*0b2e13d9SChunhe Lan #ifndef __ASSEMBLY__
370*0b2e13d9SChunhe Lan unsigned long get_board_sys_clk(void);
371*0b2e13d9SChunhe Lan unsigned long get_board_ddr_clk(void);
372*0b2e13d9SChunhe Lan #endif
373*0b2e13d9SChunhe Lan 
374*0b2e13d9SChunhe Lan /*
375*0b2e13d9SChunhe Lan  * DDR Setup
376*0b2e13d9SChunhe Lan  */
377*0b2e13d9SChunhe Lan #define CONFIG_SYS_SPD_BUS_NUM	0
378*0b2e13d9SChunhe Lan #define SPD_EEPROM_ADDRESS1	0x52
379*0b2e13d9SChunhe Lan #define SPD_EEPROM_ADDRESS2	0x54
380*0b2e13d9SChunhe Lan #define SPD_EEPROM_ADDRESS3	0x56
381*0b2e13d9SChunhe Lan #define SPD_EEPROM_ADDRESS	SPD_EEPROM_ADDRESS1	/* for p3041/p5010 */
382*0b2e13d9SChunhe Lan #define CONFIG_SYS_SDRAM_SIZE	4096	/* for fixed parameter use */
383*0b2e13d9SChunhe Lan 
384*0b2e13d9SChunhe Lan /*
385*0b2e13d9SChunhe Lan  * IFC Definitions
386*0b2e13d9SChunhe Lan  */
387*0b2e13d9SChunhe Lan #define CONFIG_SYS_NOR0_CSPR_EXT	(0xf)
388*0b2e13d9SChunhe Lan #define CONFIG_SYS_NOR0_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS \
389*0b2e13d9SChunhe Lan 				+ 0x8000000) | \
390*0b2e13d9SChunhe Lan 				CSPR_PORT_SIZE_16 | \
391*0b2e13d9SChunhe Lan 				CSPR_MSEL_NOR | \
392*0b2e13d9SChunhe Lan 				CSPR_V)
393*0b2e13d9SChunhe Lan #define CONFIG_SYS_NOR1_CSPR_EXT	(0xf)
394*0b2e13d9SChunhe Lan #define CONFIG_SYS_NOR1_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \
395*0b2e13d9SChunhe Lan 				CSPR_PORT_SIZE_16 | \
396*0b2e13d9SChunhe Lan 				CSPR_MSEL_NOR | \
397*0b2e13d9SChunhe Lan 				CSPR_V)
398*0b2e13d9SChunhe Lan #define CONFIG_SYS_NOR_AMASK	IFC_AMASK(128*1024*1024)
399*0b2e13d9SChunhe Lan /* NOR Flash Timing Params */
400*0b2e13d9SChunhe Lan #define CONFIG_SYS_NOR_CSOR	CSOR_NAND_TRHZ_80
401*0b2e13d9SChunhe Lan 
402*0b2e13d9SChunhe Lan #define CONFIG_SYS_NOR_FTIM0	(FTIM0_NOR_TACSE(0x4) | \
403*0b2e13d9SChunhe Lan 				FTIM0_NOR_TEADC(0x5) | \
404*0b2e13d9SChunhe Lan 				FTIM0_NOR_TEAHC(0x5))
405*0b2e13d9SChunhe Lan #define CONFIG_SYS_NOR_FTIM1	(FTIM1_NOR_TACO(0x35) | \
406*0b2e13d9SChunhe Lan 				FTIM1_NOR_TRAD_NOR(0x1A) |\
407*0b2e13d9SChunhe Lan 				FTIM1_NOR_TSEQRAD_NOR(0x13))
408*0b2e13d9SChunhe Lan #define CONFIG_SYS_NOR_FTIM2	(FTIM2_NOR_TCS(0x4) | \
409*0b2e13d9SChunhe Lan 				FTIM2_NOR_TCH(0x4) | \
410*0b2e13d9SChunhe Lan 				FTIM2_NOR_TWPH(0x0E) | \
411*0b2e13d9SChunhe Lan 				FTIM2_NOR_TWP(0x1c))
412*0b2e13d9SChunhe Lan #define CONFIG_SYS_NOR_FTIM3	0x0
413*0b2e13d9SChunhe Lan 
414*0b2e13d9SChunhe Lan #define CONFIG_SYS_FLASH_QUIET_TEST
415*0b2e13d9SChunhe Lan #define CONFIG_FLASH_SHOW_PROGRESS	45 /* count down from 45/5: 9..1 */
416*0b2e13d9SChunhe Lan 
417*0b2e13d9SChunhe Lan #define CONFIG_SYS_MAX_FLASH_BANKS	2	/* number of banks */
418*0b2e13d9SChunhe Lan #define CONFIG_SYS_MAX_FLASH_SECT	1024	/* sectors per device */
419*0b2e13d9SChunhe Lan #define CONFIG_SYS_FLASH_ERASE_TOUT	60000	/* Flash Erase Timeout (ms) */
420*0b2e13d9SChunhe Lan #define CONFIG_SYS_FLASH_WRITE_TOUT	500	/* Flash Write Timeout (ms) */
421*0b2e13d9SChunhe Lan 
422*0b2e13d9SChunhe Lan #define CONFIG_SYS_FLASH_EMPTY_INFO
423*0b2e13d9SChunhe Lan #define CONFIG_SYS_FLASH_BANKS_LIST	{CONFIG_SYS_FLASH_BASE_PHYS \
424*0b2e13d9SChunhe Lan 					+ 0x8000000, CONFIG_SYS_FLASH_BASE_PHYS}
425*0b2e13d9SChunhe Lan 
426*0b2e13d9SChunhe Lan /* NAND Flash on IFC */
427*0b2e13d9SChunhe Lan #define CONFIG_NAND_FSL_IFC
428*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_MAX_ECCPOS	256
429*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_MAX_OOBFREE	2
430*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_BASE		0xff800000
431*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_BASE_PHYS	(0xf00000000ull | CONFIG_SYS_NAND_BASE)
432*0b2e13d9SChunhe Lan 
433*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_CSPR_EXT	(0xf)
434*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \
435*0b2e13d9SChunhe Lan 				| CSPR_PORT_SIZE_8 /* Port Size = 8 bit */ \
436*0b2e13d9SChunhe Lan 				| CSPR_MSEL_NAND	/* MSEL = NAND */ \
437*0b2e13d9SChunhe Lan 				| CSPR_V)
438*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_AMASK	IFC_AMASK(64*1024)
439*0b2e13d9SChunhe Lan 
440*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_CSOR    (CSOR_NAND_ECC_ENC_EN   /* ECC on encode */ \
441*0b2e13d9SChunhe Lan 				| CSOR_NAND_ECC_DEC_EN  /* ECC on decode */ \
442*0b2e13d9SChunhe Lan 				| CSOR_NAND_ECC_MODE_4  /* 4-bit ECC */ \
443*0b2e13d9SChunhe Lan 				| CSOR_NAND_RAL_3	/* RAL = 2Byes */ \
444*0b2e13d9SChunhe Lan 				| CSOR_NAND_PGS_4K	/* Page Size = 4K */ \
445*0b2e13d9SChunhe Lan 				| CSOR_NAND_SPRZ_224	/* Spare size = 224 */ \
446*0b2e13d9SChunhe Lan 				| CSOR_NAND_PB(128))	/*Page Per Block = 128*/
447*0b2e13d9SChunhe Lan 
448*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_ONFI_DETECTION
449*0b2e13d9SChunhe Lan 
450*0b2e13d9SChunhe Lan /* ONFI NAND Flash mode0 Timing Params */
451*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_FTIM0		(FTIM0_NAND_TCCST(0x07) | \
452*0b2e13d9SChunhe Lan 					FTIM0_NAND_TWP(0x18)   | \
453*0b2e13d9SChunhe Lan 					FTIM0_NAND_TWCHT(0x07) | \
454*0b2e13d9SChunhe Lan 					FTIM0_NAND_TWH(0x0a))
455*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_FTIM1		(FTIM1_NAND_TADLE(0x32) | \
456*0b2e13d9SChunhe Lan 					FTIM1_NAND_TWBE(0x39)  | \
457*0b2e13d9SChunhe Lan 					FTIM1_NAND_TRR(0x0e)   | \
458*0b2e13d9SChunhe Lan 					FTIM1_NAND_TRP(0x18))
459*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_FTIM2		(FTIM2_NAND_TRAD(0x0f) | \
460*0b2e13d9SChunhe Lan 					FTIM2_NAND_TREH(0x0a) | \
461*0b2e13d9SChunhe Lan 					FTIM2_NAND_TWHRE(0x1e))
462*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_FTIM3		0x0
463*0b2e13d9SChunhe Lan 
464*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_DDR_LAW		11
465*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_BASE_LIST	{ CONFIG_SYS_NAND_BASE }
466*0b2e13d9SChunhe Lan #define CONFIG_SYS_MAX_NAND_DEVICE	1
467*0b2e13d9SChunhe Lan #define CONFIG_MTD_NAND_VERIFY_WRITE
468*0b2e13d9SChunhe Lan #define CONFIG_CMD_NAND
469*0b2e13d9SChunhe Lan 
470*0b2e13d9SChunhe Lan #define CONFIG_SYS_NAND_BLOCK_SIZE	(512 * 1024)
471*0b2e13d9SChunhe Lan 
472*0b2e13d9SChunhe Lan #if defined(CONFIG_NAND)
473*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSPR0_EXT		CONFIG_SYS_NAND_CSPR_EXT
474*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSPR0		CONFIG_SYS_NAND_CSPR
475*0b2e13d9SChunhe Lan #define CONFIG_SYS_AMASK0		CONFIG_SYS_NAND_AMASK
476*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSOR0		CONFIG_SYS_NAND_CSOR
477*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NAND_FTIM0
478*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NAND_FTIM1
479*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NAND_FTIM2
480*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NAND_FTIM3
481*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSPR2_EXT		CONFIG_SYS_NOR0_CSPR_EXT
482*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSPR2		CONFIG_SYS_NOR0_CSPR
483*0b2e13d9SChunhe Lan #define CONFIG_SYS_AMASK2		CONFIG_SYS_NOR_AMASK
484*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSOR2		CONFIG_SYS_NOR_CSOR
485*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS2_FTIM0		CONFIG_SYS_NOR_FTIM0
486*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS2_FTIM1		CONFIG_SYS_NOR_FTIM1
487*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS2_FTIM2		CONFIG_SYS_NOR_FTIM2
488*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NOR_FTIM3
489*0b2e13d9SChunhe Lan #else
490*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSPR0_EXT		CONFIG_SYS_NOR0_CSPR_EXT
491*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSPR0		CONFIG_SYS_NOR0_CSPR
492*0b2e13d9SChunhe Lan #define CONFIG_SYS_AMASK0		CONFIG_SYS_NOR_AMASK
493*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSOR0		CONFIG_SYS_NOR_CSOR
494*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NOR_FTIM0
495*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NOR_FTIM1
496*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NOR_FTIM2
497*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NOR_FTIM3
498*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSPR1_EXT		CONFIG_SYS_NAND_CSPR_EXT
499*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSPR1		CONFIG_SYS_NAND_CSPR
500*0b2e13d9SChunhe Lan #define CONFIG_SYS_AMASK1		CONFIG_SYS_NAND_AMASK
501*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSOR1		CONFIG_SYS_NAND_CSOR
502*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS1_FTIM0		CONFIG_SYS_NAND_FTIM0
503*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS1_FTIM1		CONFIG_SYS_NAND_FTIM1
504*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS1_FTIM2		CONFIG_SYS_NAND_FTIM2
505*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS1_FTIM3		CONFIG_SYS_NAND_FTIM3
506*0b2e13d9SChunhe Lan #endif
507*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSPR2_EXT		CONFIG_SYS_NOR1_CSPR_EXT
508*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSPR2		CONFIG_SYS_NOR1_CSPR
509*0b2e13d9SChunhe Lan #define CONFIG_SYS_AMASK2		CONFIG_SYS_NOR_AMASK
510*0b2e13d9SChunhe Lan #define CONFIG_SYS_CSOR2		CONFIG_SYS_NOR_CSOR
511*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS2_FTIM0		CONFIG_SYS_NOR_FTIM0
512*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS2_FTIM1		CONFIG_SYS_NOR_FTIM1
513*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS2_FTIM2		CONFIG_SYS_NOR_FTIM2
514*0b2e13d9SChunhe Lan #define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NOR_FTIM3
515*0b2e13d9SChunhe Lan 
516*0b2e13d9SChunhe Lan #if defined(CONFIG_RAMBOOT_PBL)
517*0b2e13d9SChunhe Lan #define CONFIG_SYS_RAMBOOT
518*0b2e13d9SChunhe Lan #endif
519*0b2e13d9SChunhe Lan 
520*0b2e13d9SChunhe Lan 
521*0b2e13d9SChunhe Lan /* I2C */
522*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_I2C_SPEED	100000	/* I2C speed */
523*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_I2C2_SPEED	100000	/* I2C2 speed */
524*0b2e13d9SChunhe Lan #define I2C_MUX_PCA_ADDR_PRI		0x77 /* I2C bus multiplexer,primary */
525*0b2e13d9SChunhe Lan #define I2C_MUX_PCA_ADDR_SEC		0x76 /* I2C bus multiplexer,secondary */
526*0b2e13d9SChunhe Lan 
527*0b2e13d9SChunhe Lan #define I2C_MUX_CH_DEFAULT	0x8
528*0b2e13d9SChunhe Lan #define I2C_MUX_CH_VOL_MONITOR	0xa
529*0b2e13d9SChunhe Lan #define I2C_MUX_CH_VSC3316_FS	0xc
530*0b2e13d9SChunhe Lan #define I2C_MUX_CH_VSC3316_BS	0xd
531*0b2e13d9SChunhe Lan 
532*0b2e13d9SChunhe Lan /* Voltage monitor on channel 2*/
533*0b2e13d9SChunhe Lan #define I2C_VOL_MONITOR_ADDR		0x40
534*0b2e13d9SChunhe Lan #define I2C_VOL_MONITOR_BUS_V_OFFSET	0x2
535*0b2e13d9SChunhe Lan #define I2C_VOL_MONITOR_BUS_V_OVF	0x1
536*0b2e13d9SChunhe Lan #define I2C_VOL_MONITOR_BUS_V_SHIFT	3
537*0b2e13d9SChunhe Lan 
538*0b2e13d9SChunhe Lan /*
539*0b2e13d9SChunhe Lan  * eSPI - Enhanced SPI
540*0b2e13d9SChunhe Lan  */
541*0b2e13d9SChunhe Lan #define CONFIG_FSL_ESPI
542*0b2e13d9SChunhe Lan #define CONFIG_SPI_FLASH
543*0b2e13d9SChunhe Lan #define CONFIG_SPI_FLASH_SST
544*0b2e13d9SChunhe Lan #define CONFIG_CMD_SF
545*0b2e13d9SChunhe Lan #define CONFIG_SF_DEFAULT_SPEED         10000000
546*0b2e13d9SChunhe Lan #define CONFIG_SF_DEFAULT_MODE          0
547*0b2e13d9SChunhe Lan 
548*0b2e13d9SChunhe Lan 
549*0b2e13d9SChunhe Lan /* Qman/Bman */
550*0b2e13d9SChunhe Lan #ifndef CONFIG_NOBQFMAN
551*0b2e13d9SChunhe Lan #define CONFIG_SYS_DPAA_QBMAN		/* Support Q/Bman */
552*0b2e13d9SChunhe Lan #define CONFIG_SYS_BMAN_NUM_PORTALS	50
553*0b2e13d9SChunhe Lan #define CONFIG_SYS_BMAN_MEM_BASE	0xf4000000
554*0b2e13d9SChunhe Lan #define CONFIG_SYS_BMAN_MEM_PHYS	0xff4000000ull
555*0b2e13d9SChunhe Lan #define CONFIG_SYS_BMAN_MEM_SIZE	0x02000000
556*0b2e13d9SChunhe Lan #define CONFIG_SYS_QMAN_NUM_PORTALS	50
557*0b2e13d9SChunhe Lan #define CONFIG_SYS_QMAN_MEM_BASE	0xf6000000
558*0b2e13d9SChunhe Lan #define CONFIG_SYS_QMAN_MEM_PHYS	0xff6000000ull
559*0b2e13d9SChunhe Lan #define CONFIG_SYS_QMAN_MEM_SIZE	0x02000000
560*0b2e13d9SChunhe Lan 
561*0b2e13d9SChunhe Lan #define CONFIG_SYS_DPAA_FMAN
562*0b2e13d9SChunhe Lan #define CONFIG_SYS_DPAA_PME
563*0b2e13d9SChunhe Lan #define CONFIG_SYS_PMAN
564*0b2e13d9SChunhe Lan #define CONFIG_SYS_DPAA_DCE
565*0b2e13d9SChunhe Lan #define CONFIG_SYS_DPAA_RMAN
566*0b2e13d9SChunhe Lan #define CONFIG_SYS_INTERLAKEN
567*0b2e13d9SChunhe Lan 
568*0b2e13d9SChunhe Lan /* Default address of microcode for the Linux Fman driver */
569*0b2e13d9SChunhe Lan #if defined(CONFIG_SPIFLASH)
570*0b2e13d9SChunhe Lan /*
571*0b2e13d9SChunhe Lan  * env is stored at 0x100000, sector size is 0x10000, ucode is stored after
572*0b2e13d9SChunhe Lan  * env, so we got 0x110000.
573*0b2e13d9SChunhe Lan  */
574*0b2e13d9SChunhe Lan #define CONFIG_SYS_QE_FW_IN_SPIFLASH
575*0b2e13d9SChunhe Lan #define CONFIG_SYS_FMAN_FW_ADDR	0x110000
576*0b2e13d9SChunhe Lan #elif defined(CONFIG_SDCARD)
577*0b2e13d9SChunhe Lan /*
578*0b2e13d9SChunhe Lan  * PBL SD boot image should stored at 0x1000(8 blocks), the size of the image is
579*0b2e13d9SChunhe Lan  * about 825KB (1650 blocks), Env is stored after the image, and the env size is
580*0b2e13d9SChunhe Lan  * 0x2000 (16 blocks), 8 + 1650 + 16 = 1674, enlarge it to 1680.
581*0b2e13d9SChunhe Lan  */
582*0b2e13d9SChunhe Lan #define CONFIG_SYS_QE_FMAN_FW_IN_MMC
583*0b2e13d9SChunhe Lan #define CONFIG_SYS_FMAN_FW_ADDR	(512 * 1680)
584*0b2e13d9SChunhe Lan #elif defined(CONFIG_NAND)
585*0b2e13d9SChunhe Lan #define CONFIG_SYS_QE_FMAN_FW_IN_NAND
586*0b2e13d9SChunhe Lan #define CONFIG_SYS_FMAN_FW_ADDR	(8 * CONFIG_SYS_NAND_BLOCK_SIZE)
587*0b2e13d9SChunhe Lan #else
588*0b2e13d9SChunhe Lan #define CONFIG_SYS_QE_FMAN_FW_IN_NOR
589*0b2e13d9SChunhe Lan #define CONFIG_SYS_FMAN_FW_ADDR	0xEFF00000
590*0b2e13d9SChunhe Lan #endif
591*0b2e13d9SChunhe Lan #define CONFIG_SYS_QE_FMAN_FW_LENGTH	0x10000
592*0b2e13d9SChunhe Lan #define CONFIG_SYS_FDT_PAD		(0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH)
593*0b2e13d9SChunhe Lan #endif /* CONFIG_NOBQFMAN */
594*0b2e13d9SChunhe Lan 
595*0b2e13d9SChunhe Lan #ifdef CONFIG_SYS_DPAA_FMAN
596*0b2e13d9SChunhe Lan #define CONFIG_FMAN_ENET
597*0b2e13d9SChunhe Lan #define CONFIG_PHYLIB_10G
598*0b2e13d9SChunhe Lan #define CONFIG_PHY_VITESSE
599*0b2e13d9SChunhe Lan #define CONFIG_PHY_CORTINA
600*0b2e13d9SChunhe Lan #define CONFIG_CORTINA_FW_ADDR		0xefe00000
601*0b2e13d9SChunhe Lan #define CONFIG_CORTINA_FW_LENGTH	0x40000
602*0b2e13d9SChunhe Lan #define CONFIG_PHY_TERANETICS
603*0b2e13d9SChunhe Lan #define SGMII_PHY_ADDR1 0x0
604*0b2e13d9SChunhe Lan #define SGMII_PHY_ADDR2 0x1
605*0b2e13d9SChunhe Lan #define SGMII_PHY_ADDR3 0x2
606*0b2e13d9SChunhe Lan #define SGMII_PHY_ADDR4 0x3
607*0b2e13d9SChunhe Lan #define SGMII_PHY_ADDR5 0x4
608*0b2e13d9SChunhe Lan #define SGMII_PHY_ADDR6 0x5
609*0b2e13d9SChunhe Lan #define SGMII_PHY_ADDR7 0x6
610*0b2e13d9SChunhe Lan #define SGMII_PHY_ADDR8 0x7
611*0b2e13d9SChunhe Lan #define FM1_10GEC1_PHY_ADDR	0x10
612*0b2e13d9SChunhe Lan #define FM1_10GEC2_PHY_ADDR	0x11
613*0b2e13d9SChunhe Lan #define FM2_10GEC1_PHY_ADDR	0x12
614*0b2e13d9SChunhe Lan #define FM2_10GEC2_PHY_ADDR	0x13
615*0b2e13d9SChunhe Lan #define CORTINA_PHY_ADDR1	FM1_10GEC1_PHY_ADDR
616*0b2e13d9SChunhe Lan #define CORTINA_PHY_ADDR2	FM1_10GEC2_PHY_ADDR
617*0b2e13d9SChunhe Lan #define CORTINA_PHY_ADDR3	FM2_10GEC1_PHY_ADDR
618*0b2e13d9SChunhe Lan #define CORTINA_PHY_ADDR4	FM2_10GEC2_PHY_ADDR
619*0b2e13d9SChunhe Lan #endif
620*0b2e13d9SChunhe Lan 
621*0b2e13d9SChunhe Lan 
622*0b2e13d9SChunhe Lan /* SATA */
623*0b2e13d9SChunhe Lan #ifdef CONFIG_FSL_SATA_V2
624*0b2e13d9SChunhe Lan #define CONFIG_LIBATA
625*0b2e13d9SChunhe Lan #define CONFIG_FSL_SATA
626*0b2e13d9SChunhe Lan 
627*0b2e13d9SChunhe Lan #define CONFIG_SYS_SATA_MAX_DEVICE	2
628*0b2e13d9SChunhe Lan #define CONFIG_SATA1
629*0b2e13d9SChunhe Lan #define CONFIG_SYS_SATA1		CONFIG_SYS_MPC85xx_SATA1_ADDR
630*0b2e13d9SChunhe Lan #define CONFIG_SYS_SATA1_FLAGS		FLAGS_DMA
631*0b2e13d9SChunhe Lan #define CONFIG_SATA2
632*0b2e13d9SChunhe Lan #define CONFIG_SYS_SATA2		CONFIG_SYS_MPC85xx_SATA2_ADDR
633*0b2e13d9SChunhe Lan #define CONFIG_SYS_SATA2_FLAGS		FLAGS_DMA
634*0b2e13d9SChunhe Lan 
635*0b2e13d9SChunhe Lan #define CONFIG_LBA48
636*0b2e13d9SChunhe Lan #define CONFIG_CMD_SATA
637*0b2e13d9SChunhe Lan #define CONFIG_DOS_PARTITION
638*0b2e13d9SChunhe Lan #define CONFIG_CMD_EXT2
639*0b2e13d9SChunhe Lan #endif
640*0b2e13d9SChunhe Lan 
641*0b2e13d9SChunhe Lan #ifdef CONFIG_FMAN_ENET
642*0b2e13d9SChunhe Lan #define CONFIG_MII		/* MII PHY management */
643*0b2e13d9SChunhe Lan #define CONFIG_ETHPRIME		"FM1@DTSEC1"
644*0b2e13d9SChunhe Lan #define CONFIG_PHY_GIGE		/* Include GbE speed/duplex detection */
645*0b2e13d9SChunhe Lan #endif
646*0b2e13d9SChunhe Lan 
647*0b2e13d9SChunhe Lan /*
648*0b2e13d9SChunhe Lan * USB
649*0b2e13d9SChunhe Lan */
650*0b2e13d9SChunhe Lan #define CONFIG_CMD_USB
651*0b2e13d9SChunhe Lan #define CONFIG_USB_STORAGE
652*0b2e13d9SChunhe Lan #define CONFIG_USB_EHCI
653*0b2e13d9SChunhe Lan #define CONFIG_USB_EHCI_FSL
654*0b2e13d9SChunhe Lan #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
655*0b2e13d9SChunhe Lan #define CONFIG_CMD_EXT2
656*0b2e13d9SChunhe Lan #define CONFIG_HAS_FSL_DR_USB
657*0b2e13d9SChunhe Lan 
658*0b2e13d9SChunhe Lan #define CONFIG_MMC
659*0b2e13d9SChunhe Lan 
660*0b2e13d9SChunhe Lan #ifdef CONFIG_MMC
661*0b2e13d9SChunhe Lan #define CONFIG_FSL_ESDHC
662*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR
663*0b2e13d9SChunhe Lan #define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT
664*0b2e13d9SChunhe Lan #define CONFIG_CMD_MMC
665*0b2e13d9SChunhe Lan #define CONFIG_GENERIC_MMC
666*0b2e13d9SChunhe Lan #define CONFIG_CMD_EXT2
667*0b2e13d9SChunhe Lan #define CONFIG_CMD_FAT
668*0b2e13d9SChunhe Lan #define CONFIG_DOS_PARTITION
669*0b2e13d9SChunhe Lan #endif
670*0b2e13d9SChunhe Lan 
671*0b2e13d9SChunhe Lan #define CONFIG_BOOTDELAY	10	/* -1 disables auto-boot */
672*0b2e13d9SChunhe Lan 
673*0b2e13d9SChunhe Lan #define __USB_PHY_TYPE	utmi
674*0b2e13d9SChunhe Lan 
675*0b2e13d9SChunhe Lan /*
676*0b2e13d9SChunhe Lan  * T4240 has 3 DDR controllers. Default to 3-way interleaving. It can be
677*0b2e13d9SChunhe Lan  * 3way_1KB, 3way_4KB, 3way_8KB. T4160 has 2 DDR controllers. Default to 2-way
678*0b2e13d9SChunhe Lan  * interleaving. It can be cacheline, page, bank, superbank.
679*0b2e13d9SChunhe Lan  * See doc/README.fsl-ddr for details.
680*0b2e13d9SChunhe Lan  */
681*0b2e13d9SChunhe Lan #define CTRL_INTLV_PREFERED 3way_4KB
682*0b2e13d9SChunhe Lan 
683*0b2e13d9SChunhe Lan #define	CONFIG_EXTRA_ENV_SETTINGS				\
684*0b2e13d9SChunhe Lan 	"hwconfig=fsl_ddr:"					\
685*0b2e13d9SChunhe Lan 	"ctlr_intlv=" __stringify(CTRL_INTLV_PREFERED) ","	\
686*0b2e13d9SChunhe Lan 	"bank_intlv=auto;"					\
687*0b2e13d9SChunhe Lan 	"usb1:dr_mode=host,phy_type=" __stringify(__USB_PHY_TYPE) "\0"\
688*0b2e13d9SChunhe Lan 	"netdev=eth0\0"						\
689*0b2e13d9SChunhe Lan 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"		\
690*0b2e13d9SChunhe Lan 	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"	\
691*0b2e13d9SChunhe Lan 	"tftpflash=tftpboot $loadaddr $uboot && "		\
692*0b2e13d9SChunhe Lan 	"protect off $ubootaddr +$filesize && "			\
693*0b2e13d9SChunhe Lan 	"erase $ubootaddr +$filesize && "			\
694*0b2e13d9SChunhe Lan 	"cp.b $loadaddr $ubootaddr $filesize && "		\
695*0b2e13d9SChunhe Lan 	"protect on $ubootaddr +$filesize && "			\
696*0b2e13d9SChunhe Lan 	"cmp.b $loadaddr $ubootaddr $filesize\0"		\
697*0b2e13d9SChunhe Lan 	"consoledev=ttyS0\0"					\
698*0b2e13d9SChunhe Lan 	"ramdiskaddr=2000000\0"					\
699*0b2e13d9SChunhe Lan 	"ramdiskfile=t4240rdb/ramdisk.uboot\0"			\
700*0b2e13d9SChunhe Lan 	"fdtaddr=c00000\0"					\
701*0b2e13d9SChunhe Lan 	"fdtfile=t4240rdb/t4240rdb.dtb\0"			\
702*0b2e13d9SChunhe Lan 	"bdev=sda3\0"
703*0b2e13d9SChunhe Lan 
704*0b2e13d9SChunhe Lan #define CONFIG_HVBOOT					\
705*0b2e13d9SChunhe Lan 	"setenv bootargs config-addr=0x60000000; "	\
706*0b2e13d9SChunhe Lan 	"bootm 0x01000000 - 0x00f00000"
707*0b2e13d9SChunhe Lan 
708*0b2e13d9SChunhe Lan #define CONFIG_LINUX					\
709*0b2e13d9SChunhe Lan 	"setenv bootargs root=/dev/ram rw "		\
710*0b2e13d9SChunhe Lan 	"console=$consoledev,$baudrate $othbootargs;"	\
711*0b2e13d9SChunhe Lan 	"setenv ramdiskaddr 0x02000000;"		\
712*0b2e13d9SChunhe Lan 	"setenv fdtaddr 0x00c00000;"			\
713*0b2e13d9SChunhe Lan 	"setenv loadaddr 0x1000000;"			\
714*0b2e13d9SChunhe Lan 	"bootm $loadaddr $ramdiskaddr $fdtaddr"
715*0b2e13d9SChunhe Lan 
716*0b2e13d9SChunhe Lan #define CONFIG_HDBOOT					\
717*0b2e13d9SChunhe Lan 	"setenv bootargs root=/dev/$bdev rw "		\
718*0b2e13d9SChunhe Lan 	"console=$consoledev,$baudrate $othbootargs;"	\
719*0b2e13d9SChunhe Lan 	"tftp $loadaddr $bootfile;"			\
720*0b2e13d9SChunhe Lan 	"tftp $fdtaddr $fdtfile;"			\
721*0b2e13d9SChunhe Lan 	"bootm $loadaddr - $fdtaddr"
722*0b2e13d9SChunhe Lan 
723*0b2e13d9SChunhe Lan #define CONFIG_NFSBOOTCOMMAND			\
724*0b2e13d9SChunhe Lan 	"setenv bootargs root=/dev/nfs rw "	\
725*0b2e13d9SChunhe Lan 	"nfsroot=$serverip:$rootpath "		\
726*0b2e13d9SChunhe Lan 	"ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \
727*0b2e13d9SChunhe Lan 	"console=$consoledev,$baudrate $othbootargs;"	\
728*0b2e13d9SChunhe Lan 	"tftp $loadaddr $bootfile;"		\
729*0b2e13d9SChunhe Lan 	"tftp $fdtaddr $fdtfile;"		\
730*0b2e13d9SChunhe Lan 	"bootm $loadaddr - $fdtaddr"
731*0b2e13d9SChunhe Lan 
732*0b2e13d9SChunhe Lan #define CONFIG_RAMBOOTCOMMAND				\
733*0b2e13d9SChunhe Lan 	"setenv bootargs root=/dev/ram rw "		\
734*0b2e13d9SChunhe Lan 	"console=$consoledev,$baudrate $othbootargs;"	\
735*0b2e13d9SChunhe Lan 	"tftp $ramdiskaddr $ramdiskfile;"		\
736*0b2e13d9SChunhe Lan 	"tftp $loadaddr $bootfile;"			\
737*0b2e13d9SChunhe Lan 	"tftp $fdtaddr $fdtfile;"			\
738*0b2e13d9SChunhe Lan 	"bootm $loadaddr $ramdiskaddr $fdtaddr"
739*0b2e13d9SChunhe Lan 
740*0b2e13d9SChunhe Lan #define CONFIG_BOOTCOMMAND		CONFIG_LINUX
741*0b2e13d9SChunhe Lan 
742*0b2e13d9SChunhe Lan #include <asm/fsl_secure_boot.h>
743*0b2e13d9SChunhe Lan 
744*0b2e13d9SChunhe Lan #ifdef CONFIG_SECURE_BOOT
745*0b2e13d9SChunhe Lan /* Secure Boot target was not getting build for T4240 because of
746*0b2e13d9SChunhe Lan  * increased binary size. So the size is being reduced by removing USB
747*0b2e13d9SChunhe Lan  * which is anyways not used in Secure Environment.
748*0b2e13d9SChunhe Lan  */
749*0b2e13d9SChunhe Lan #undef CONFIG_CMD_USB
750*0b2e13d9SChunhe Lan #endif
751*0b2e13d9SChunhe Lan 
752*0b2e13d9SChunhe Lan #endif	/* __CONFIG_H */
753