xref: /rk3399_rockchip-uboot/include/configs/P2041RDB.h (revision b24a4f6247d867f1301edc1c6390aca79ecbe16b)
14f1d1b7dSMingkai Hu /*
23d7506faSramneek mehresh  * Copyright 2011-2012 Freescale Semiconductor, Inc.
34f1d1b7dSMingkai Hu  *
41a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
54f1d1b7dSMingkai Hu  */
64f1d1b7dSMingkai Hu 
74f1d1b7dSMingkai Hu /*
84f1d1b7dSMingkai Hu  * P2041 RDB board configuration file
93e978f5dSScott Wood  * Also supports P2040 RDB
104f1d1b7dSMingkai Hu  */
114f1d1b7dSMingkai Hu #ifndef __CONFIG_H
124f1d1b7dSMingkai Hu #define __CONFIG_H
134f1d1b7dSMingkai Hu 
144f1d1b7dSMingkai Hu #define CONFIG_P2041RDB
154f1d1b7dSMingkai Hu #define CONFIG_PHYS_64BIT
1684d13c58SShaohui Xie #define CONFIG_DISPLAY_BOARDINFO
174f1d1b7dSMingkai Hu #define CONFIG_PPC_P2041
184f1d1b7dSMingkai Hu 
194f1d1b7dSMingkai Hu #ifdef CONFIG_RAMBOOT_PBL
204f1d1b7dSMingkai Hu #define CONFIG_RAMBOOT_TEXT_BASE	CONFIG_SYS_TEXT_BASE
214f1d1b7dSMingkai Hu #define CONFIG_RESET_VECTOR_ADDRESS	0xfffffffc
22e4536f8eSMasahiro Yamada #define CONFIG_SYS_FSL_PBL_PBI board/freescale/corenet_ds/pbi.cfg
23e4536f8eSMasahiro Yamada #define CONFIG_SYS_FSL_PBL_RCW board/freescale/corenet_ds/rcw_p2041rdb.cfg
244f1d1b7dSMingkai Hu #endif
254f1d1b7dSMingkai Hu 
26461632bdSLiu Gang #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE
27ff65f126SLiu Gang /* Set 1M boot space */
28461632bdSLiu Gang #define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_SYS_TEXT_BASE & 0xfff00000)
29461632bdSLiu Gang #define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS \
30461632bdSLiu Gang 		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR)
31ff65f126SLiu Gang #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc
32ff65f126SLiu Gang #define CONFIG_SYS_NO_FLASH
33ff65f126SLiu Gang #endif
34ff65f126SLiu Gang 
354f1d1b7dSMingkai Hu /* High Level Configuration Options */
364f1d1b7dSMingkai Hu #define CONFIG_BOOKE
374f1d1b7dSMingkai Hu #define CONFIG_E500			/* BOOKE e500 family */
384f1d1b7dSMingkai Hu #define CONFIG_E500MC			/* BOOKE e500mc family */
394f1d1b7dSMingkai Hu #define CONFIG_SYS_BOOK3E_HV		/* Category E.HV supported */
404f1d1b7dSMingkai Hu #define CONFIG_MP			/* support multiple processors */
414f1d1b7dSMingkai Hu 
424f1d1b7dSMingkai Hu #ifndef CONFIG_SYS_TEXT_BASE
43e222b1f3SPrabhakar Kushwaha #define CONFIG_SYS_TEXT_BASE	0xeff40000
444f1d1b7dSMingkai Hu #endif
454f1d1b7dSMingkai Hu 
464f1d1b7dSMingkai Hu #ifndef CONFIG_RESET_VECTOR_ADDRESS
474f1d1b7dSMingkai Hu #define CONFIG_RESET_VECTOR_ADDRESS	0xeffffffc
484f1d1b7dSMingkai Hu #endif
494f1d1b7dSMingkai Hu 
504f1d1b7dSMingkai Hu #define CONFIG_SYS_FSL_CPC		/* Corenet Platform Cache */
514f1d1b7dSMingkai Hu #define CONFIG_SYS_NUM_CPC		CONFIG_NUM_DDR_CONTROLLERS
524f1d1b7dSMingkai Hu #define CONFIG_FSL_ELBC			/* Has Enhanced localbus controller */
53737537efSRuchika Gupta #define CONFIG_FSL_CAAM			/* Enable SEC/CAAM */
544f1d1b7dSMingkai Hu #define CONFIG_PCI			/* Enable PCI/PCIE */
55b38eaec5SRobert P. J. Day #define CONFIG_PCIE1			/* PCIE controller 1 */
56b38eaec5SRobert P. J. Day #define CONFIG_PCIE2			/* PCIE controller 2 */
57b38eaec5SRobert P. J. Day #define CONFIG_PCIE3			/* PCIE controller 3 */
584f1d1b7dSMingkai Hu #define CONFIG_FSL_PCI_INIT		/* Use common FSL init code */
594f1d1b7dSMingkai Hu #define CONFIG_SYS_PCI_64BIT		/* enable 64-bit PCI resources */
604f1d1b7dSMingkai Hu 
614f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO
624f1d1b7dSMingkai Hu #define CONFIG_SRIO1			/* SRIO port 1 */
634f1d1b7dSMingkai Hu #define CONFIG_SRIO2			/* SRIO port 2 */
64c8b28152SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_MASTER
654d28db8aSKumar Gala #define CONFIG_SYS_DPAA_RMAN		/* RMan */
664f1d1b7dSMingkai Hu 
674f1d1b7dSMingkai Hu #define CONFIG_FSL_LAW			/* Use common FSL init code */
684f1d1b7dSMingkai Hu 
694f1d1b7dSMingkai Hu #define CONFIG_ENV_OVERWRITE
704f1d1b7dSMingkai Hu 
714f1d1b7dSMingkai Hu #ifdef CONFIG_SYS_NO_FLASH
72461632bdSLiu Gang #if !defined(CONFIG_RAMBOOT_PBL) && !defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
734f1d1b7dSMingkai Hu #define CONFIG_ENV_IS_NOWHERE
740f57f6a3SShaohui Xie #endif
754f1d1b7dSMingkai Hu #else
764f1d1b7dSMingkai Hu #define CONFIG_FLASH_CFI_DRIVER
774f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_CFI
780f57f6a3SShaohui Xie #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE
794f1d1b7dSMingkai Hu #endif
804f1d1b7dSMingkai Hu 
814f1d1b7dSMingkai Hu #if defined(CONFIG_SPIFLASH)
824f1d1b7dSMingkai Hu 	#define CONFIG_SYS_EXTRA_ENV_RELOC
834f1d1b7dSMingkai Hu 	#define CONFIG_ENV_IS_IN_SPI_FLASH
844f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SPI_BUS              0
854f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SPI_CS               0
864f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SPI_MAX_HZ           10000000
874f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SPI_MODE             0
884f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SIZE                 0x2000          /* 8KB */
894f1d1b7dSMingkai Hu 	#define CONFIG_ENV_OFFSET               0x100000        /* 1MB */
904f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SECT_SIZE            0x10000
914f1d1b7dSMingkai Hu #elif defined(CONFIG_SDCARD)
924f1d1b7dSMingkai Hu 	#define CONFIG_SYS_EXTRA_ENV_RELOC
934f1d1b7dSMingkai Hu 	#define CONFIG_ENV_IS_IN_MMC
944394d0c2SFabio Estevam 	#define CONFIG_FSL_FIXED_MMC_LOCATION
954f1d1b7dSMingkai Hu 	#define CONFIG_SYS_MMC_ENV_DEV          0
964f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SIZE			0x2000
97e222b1f3SPrabhakar Kushwaha 	#define CONFIG_ENV_OFFSET		(512 * 1658)
9815c8c6c2SShaohui Xie #elif defined(CONFIG_NAND)
9915c8c6c2SShaohui Xie #define CONFIG_SYS_EXTRA_ENV_RELOC
10015c8c6c2SShaohui Xie #define CONFIG_ENV_IS_IN_NAND
10115c8c6c2SShaohui Xie #define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE
102e222b1f3SPrabhakar Kushwaha #define CONFIG_ENV_OFFSET		(7 * CONFIG_SYS_NAND_BLOCK_SIZE)
103461632bdSLiu Gang #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
104ff65f126SLiu Gang #define CONFIG_ENV_IS_IN_REMOTE
105ff65f126SLiu Gang #define CONFIG_ENV_ADDR		0xffe20000
106ff65f126SLiu Gang #define CONFIG_ENV_SIZE		0x2000
1070f57f6a3SShaohui Xie #elif defined(CONFIG_ENV_IS_NOWHERE)
1080f57f6a3SShaohui Xie #define CONFIG_ENV_SIZE		0x2000
1094f1d1b7dSMingkai Hu #else
1104f1d1b7dSMingkai Hu 	#define CONFIG_ENV_IS_IN_FLASH
1114f1d1b7dSMingkai Hu 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE \
1124f1d1b7dSMingkai Hu 			- CONFIG_ENV_SECT_SIZE)
1134f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SIZE		0x2000
1144f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
1154f1d1b7dSMingkai Hu #endif
1164f1d1b7dSMingkai Hu 
11744d50f0bSShaohui Xie #ifndef __ASSEMBLY__
11844d50f0bSShaohui Xie unsigned long get_board_sys_clk(unsigned long dummy);
11944d50f0bSShaohui Xie #endif
12044d50f0bSShaohui Xie #define CONFIG_SYS_CLK_FREQ	get_board_sys_clk(0)
1214f1d1b7dSMingkai Hu 
1224f1d1b7dSMingkai Hu /*
1234f1d1b7dSMingkai Hu  * These can be toggled for performance analysis, otherwise use default.
1244f1d1b7dSMingkai Hu  */
1254f1d1b7dSMingkai Hu #define CONFIG_SYS_CACHE_STASHING
126cd420e0bSMingkai Hu #define CONFIG_BACKSIDE_L2_CACHE
127cd420e0bSMingkai Hu #define CONFIG_SYS_INIT_L2CSR0		L2CSR0_L2E
1284f1d1b7dSMingkai Hu #define CONFIG_BTB			/* toggle branch predition */
1294f1d1b7dSMingkai Hu 
1304f1d1b7dSMingkai Hu #define CONFIG_ENABLE_36BIT_PHYS
1314f1d1b7dSMingkai Hu 
1324f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
1334f1d1b7dSMingkai Hu #define CONFIG_ADDR_MAP
1344f1d1b7dSMingkai Hu #define CONFIG_SYS_NUM_ADDR_MAP		64	/* number of TLB1 entries */
1354f1d1b7dSMingkai Hu #endif
1364f1d1b7dSMingkai Hu 
1374f1d1b7dSMingkai Hu #define CONFIG_POST CONFIG_SYS_POST_MEMORY	/* test POST memory test */
1384f1d1b7dSMingkai Hu #define CONFIG_SYS_MEMTEST_START	0x00200000	/* memtest works on */
1394f1d1b7dSMingkai Hu #define CONFIG_SYS_MEMTEST_END		0x00400000
1404f1d1b7dSMingkai Hu #define CONFIG_SYS_ALT_MEMTEST
1414f1d1b7dSMingkai Hu #define CONFIG_PANIC_HANG	/* do not reset board on panic */
1424f1d1b7dSMingkai Hu 
1434f1d1b7dSMingkai Hu /*
1444f1d1b7dSMingkai Hu  *  Config the L3 Cache as L3 SRAM
1454f1d1b7dSMingkai Hu  */
1464f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_L3_ADDR		CONFIG_RAMBOOT_TEXT_BASE
1474f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
1484f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_L3_ADDR_PHYS	(0xf00000000ull | \
1494f1d1b7dSMingkai Hu 		CONFIG_RAMBOOT_TEXT_BASE)
1504f1d1b7dSMingkai Hu #else
1514f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_L3_ADDR_PHYS	CONFIG_SYS_INIT_L3_ADDR
1524f1d1b7dSMingkai Hu #endif
1534f1d1b7dSMingkai Hu #define CONFIG_SYS_L3_SIZE		(1024 << 10)
1544f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_L3_END (CONFIG_SYS_INIT_L3_ADDR + CONFIG_SYS_L3_SIZE)
1554f1d1b7dSMingkai Hu 
1564f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
1574f1d1b7dSMingkai Hu #define CONFIG_SYS_DCSRBAR		0xf0000000
1584f1d1b7dSMingkai Hu #define CONFIG_SYS_DCSRBAR_PHYS		0xf00000000ull
1594f1d1b7dSMingkai Hu #endif
1604f1d1b7dSMingkai Hu 
1614f1d1b7dSMingkai Hu /* EEPROM */
1624f1d1b7dSMingkai Hu #define CONFIG_ID_EEPROM
1634f1d1b7dSMingkai Hu #define CONFIG_SYS_I2C_EEPROM_NXID
1644f1d1b7dSMingkai Hu #define CONFIG_SYS_EEPROM_BUS_NUM	0
1654f1d1b7dSMingkai Hu #define CONFIG_SYS_I2C_EEPROM_ADDR	0x50
1664f1d1b7dSMingkai Hu #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	1
1674f1d1b7dSMingkai Hu 
1684f1d1b7dSMingkai Hu /*
1694f1d1b7dSMingkai Hu  * DDR Setup
1704f1d1b7dSMingkai Hu  */
1714f1d1b7dSMingkai Hu #define CONFIG_VERY_BIG_RAM
1724f1d1b7dSMingkai Hu #define CONFIG_SYS_DDR_SDRAM_BASE	0x00000000
1734f1d1b7dSMingkai Hu #define CONFIG_SYS_SDRAM_BASE		CONFIG_SYS_DDR_SDRAM_BASE
1744f1d1b7dSMingkai Hu 
1754f1d1b7dSMingkai Hu #define CONFIG_DIMM_SLOTS_PER_CTLR	1
1764f1d1b7dSMingkai Hu #define CONFIG_CHIP_SELECTS_PER_CTRL	(4 * CONFIG_DIMM_SLOTS_PER_CTLR)
1774f1d1b7dSMingkai Hu 
1784f1d1b7dSMingkai Hu #define CONFIG_DDR_SPD
1795614e71bSYork Sun #define CONFIG_SYS_FSL_DDR3
1804f1d1b7dSMingkai Hu 
1814f1d1b7dSMingkai Hu #define CONFIG_SYS_SPD_BUS_NUM	0
1824f1d1b7dSMingkai Hu #define SPD_EEPROM_ADDRESS	0x52
1834f1d1b7dSMingkai Hu #define CONFIG_SYS_SDRAM_SIZE	4096	/* for fixed parameter use */
1844f1d1b7dSMingkai Hu 
1854f1d1b7dSMingkai Hu /*
1864f1d1b7dSMingkai Hu  * Local Bus Definitions
1874f1d1b7dSMingkai Hu  */
1884f1d1b7dSMingkai Hu 
1894f1d1b7dSMingkai Hu /* Set the local bus clock 1/8 of platform clock */
1904f1d1b7dSMingkai Hu #define CONFIG_SYS_LBC_LCRR		LCRR_CLKDIV_8
1914f1d1b7dSMingkai Hu 
192ca1b0b89SYork Sun /*
193ca1b0b89SYork Sun  * This board doesn't have a promjet connector.
194ca1b0b89SYork Sun  * However, it uses commone corenet board LAW and TLB.
195ca1b0b89SYork Sun  * It is necessary to use the same start address with proper offset.
196ca1b0b89SYork Sun  */
197ca1b0b89SYork Sun #define CONFIG_SYS_FLASH_BASE		0xe0000000
1984f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
199ca1b0b89SYork Sun #define CONFIG_SYS_FLASH_BASE_PHYS	0xfe0000000ull
2004f1d1b7dSMingkai Hu #else
2014f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_BASE_PHYS	CONFIG_SYS_FLASH_BASE
2024f1d1b7dSMingkai Hu #endif
2034f1d1b7dSMingkai Hu 
204c9b2feafSShaohui Xie #define CONFIG_SYS_FLASH_BR_PRELIM \
205ca1b0b89SYork Sun 		(BR_PHYS_ADDR((CONFIG_SYS_FLASH_BASE_PHYS + 0x8000000)) | \
206ca1b0b89SYork Sun 		BR_PS_16 | BR_V)
207c9b2feafSShaohui Xie #define CONFIG_SYS_FLASH_OR_PRELIM \
208c9b2feafSShaohui Xie 		((0xf8000ff7 & ~OR_GPCM_SCY & ~OR_GPCM_EHTR) \
2094f1d1b7dSMingkai Hu 		 | OR_GPCM_SCY_8 | OR_GPCM_EHTR_CLEAR)
2104f1d1b7dSMingkai Hu 
2114f1d1b7dSMingkai Hu #define CONFIG_FSL_CPLD
2124f1d1b7dSMingkai Hu #define CPLD_BASE		0xffdf0000	/* CPLD registers */
2134f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
2144f1d1b7dSMingkai Hu #define CPLD_BASE_PHYS		0xfffdf0000ull
2154f1d1b7dSMingkai Hu #else
2164f1d1b7dSMingkai Hu #define CPLD_BASE_PHYS		CPLD_BASE
2174f1d1b7dSMingkai Hu #endif
2184f1d1b7dSMingkai Hu 
2194f1d1b7dSMingkai Hu #define CONFIG_SYS_BR3_PRELIM	(BR_PHYS_ADDR(CPLD_BASE_PHYS) | BR_PS_8 | BR_V)
2204f1d1b7dSMingkai Hu #define CONFIG_SYS_OR3_PRELIM	0xffffeff7	/* 32KB but only 4k mapped */
2214f1d1b7dSMingkai Hu 
2224f1d1b7dSMingkai Hu #define PIXIS_LBMAP_SWITCH	7
2234f1d1b7dSMingkai Hu #define PIXIS_LBMAP_MASK	0xf0
2244f1d1b7dSMingkai Hu #define PIXIS_LBMAP_SHIFT	4
2254f1d1b7dSMingkai Hu #define PIXIS_LBMAP_ALTBANK	0x40
2264f1d1b7dSMingkai Hu 
2274f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_QUIET_TEST
2284f1d1b7dSMingkai Hu #define CONFIG_FLASH_SHOW_PROGRESS	45 /* count down from 45/5: 9..1 */
2294f1d1b7dSMingkai Hu 
2304f1d1b7dSMingkai Hu #define CONFIG_SYS_MAX_FLASH_BANKS	1		/* number of banks */
2314f1d1b7dSMingkai Hu #define CONFIG_SYS_MAX_FLASH_SECT	1024		/* sectors per device */
2324f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_ERASE_TOUT	60000		/* Erase Timeout (ms) */
2334f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_WRITE_TOUT	500		/* Write Timeout (ms) */
2344f1d1b7dSMingkai Hu 
2354f1d1b7dSMingkai Hu #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_TEXT_BASE
2364f1d1b7dSMingkai Hu 
2374f1d1b7dSMingkai Hu #if defined(CONFIG_RAMBOOT_PBL)
2384f1d1b7dSMingkai Hu #define CONFIG_SYS_RAMBOOT
2394f1d1b7dSMingkai Hu #endif
2404f1d1b7dSMingkai Hu 
241c9b2feafSShaohui Xie #define CONFIG_NAND_FSL_ELBC
242c9b2feafSShaohui Xie /* Nand Flash */
243c9b2feafSShaohui Xie #ifdef CONFIG_NAND_FSL_ELBC
244c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BASE		0xffa00000
245c9b2feafSShaohui Xie #ifdef CONFIG_PHYS_64BIT
246c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BASE_PHYS	0xfffa00000ull
247c9b2feafSShaohui Xie #else
248c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BASE_PHYS	CONFIG_SYS_NAND_BASE
249c9b2feafSShaohui Xie #endif
250c9b2feafSShaohui Xie 
251c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BASE_LIST     {CONFIG_SYS_NAND_BASE}
252c9b2feafSShaohui Xie #define CONFIG_SYS_MAX_NAND_DEVICE	1
253c9b2feafSShaohui Xie #define CONFIG_CMD_NAND
254c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BLOCK_SIZE    (128 * 1024)
255c9b2feafSShaohui Xie 
256c9b2feafSShaohui Xie /* NAND flash config */
257c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BR_PRELIM  (BR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \
258c9b2feafSShaohui Xie 			       | (2<<BR_DECC_SHIFT)    /* Use HW ECC */ \
259c9b2feafSShaohui Xie 			       | BR_PS_8	       /* Port Size = 8 bit */ \
260c9b2feafSShaohui Xie 			       | BR_MS_FCM	       /* MSEL = FCM */ \
261c9b2feafSShaohui Xie 			       | BR_V)		       /* valid */
262c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_OR_PRELIM  (0xFFFC0000	      /* length 256K */ \
263c9b2feafSShaohui Xie 			       | OR_FCM_PGS	       /* Large Page*/ \
264c9b2feafSShaohui Xie 			       | OR_FCM_CSCT \
265c9b2feafSShaohui Xie 			       | OR_FCM_CST \
266c9b2feafSShaohui Xie 			       | OR_FCM_CHT \
267c9b2feafSShaohui Xie 			       | OR_FCM_SCY_1 \
268c9b2feafSShaohui Xie 			       | OR_FCM_TRLX \
269c9b2feafSShaohui Xie 			       | OR_FCM_EHTR)
270c9b2feafSShaohui Xie 
271c9b2feafSShaohui Xie #ifdef CONFIG_NAND
272c9b2feafSShaohui Xie #define CONFIG_SYS_BR0_PRELIM  CONFIG_SYS_NAND_BR_PRELIM /* NAND Base Address */
273c9b2feafSShaohui Xie #define CONFIG_SYS_OR0_PRELIM  CONFIG_SYS_NAND_OR_PRELIM /* NAND Options */
274c9b2feafSShaohui Xie #define CONFIG_SYS_BR1_PRELIM  CONFIG_SYS_FLASH_BR_PRELIM /* NOR Base Address */
275c9b2feafSShaohui Xie #define CONFIG_SYS_OR1_PRELIM  CONFIG_SYS_FLASH_OR_PRELIM /* NOR Options */
276c9b2feafSShaohui Xie #else
277c9b2feafSShaohui Xie #define CONFIG_SYS_BR0_PRELIM  CONFIG_SYS_FLASH_BR_PRELIM /* NOR Base Address */
278c9b2feafSShaohui Xie #define CONFIG_SYS_OR0_PRELIM  CONFIG_SYS_FLASH_OR_PRELIM /* NOR Options */
279c9b2feafSShaohui Xie #define CONFIG_SYS_BR1_PRELIM  CONFIG_SYS_NAND_BR_PRELIM /* NAND Base Address */
280c9b2feafSShaohui Xie #define CONFIG_SYS_OR1_PRELIM  CONFIG_SYS_NAND_OR_PRELIM /* NAND Options */
281c9b2feafSShaohui Xie #endif
282c9b2feafSShaohui Xie #else
283c9b2feafSShaohui Xie #define CONFIG_SYS_BR0_PRELIM  CONFIG_SYS_FLASH_BR_PRELIM /* NOR Base Address */
284c9b2feafSShaohui Xie #define CONFIG_SYS_OR0_PRELIM  CONFIG_SYS_FLASH_OR_PRELIM /* NOR Options */
285c9b2feafSShaohui Xie #endif /* CONFIG_NAND_FSL_ELBC */
286c9b2feafSShaohui Xie 
2874f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_EMPTY_INFO
2884f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_AMD_CHECK_DQ7
289ca1b0b89SYork Sun #define CONFIG_SYS_FLASH_BANKS_LIST	{CONFIG_SYS_FLASH_BASE_PHYS + 0x8000000}
2904f1d1b7dSMingkai Hu 
2914f1d1b7dSMingkai Hu #define CONFIG_BOARD_EARLY_INIT_F
2924f1d1b7dSMingkai Hu #define CONFIG_BOARD_EARLY_INIT_R	/* call board_early_init_r function */
2934f1d1b7dSMingkai Hu #define CONFIG_MISC_INIT_R
2944f1d1b7dSMingkai Hu 
2954f1d1b7dSMingkai Hu #define CONFIG_HWCONFIG
2964f1d1b7dSMingkai Hu 
2974f1d1b7dSMingkai Hu /* define to use L1 as initial stack */
2984f1d1b7dSMingkai Hu #define CONFIG_L1_INIT_RAM
2994f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_LOCK
3004f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR	0xffd00000	/* Initial L1 address */
3014f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
3024f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH 0xf
3034f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW CONFIG_SYS_INIT_RAM_ADDR
3044f1d1b7dSMingkai Hu /* The assembler doesn't like typecast */
3054f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS \
3064f1d1b7dSMingkai Hu 	((CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH * 1ull << 32) | \
3074f1d1b7dSMingkai Hu 	  CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW)
3084f1d1b7dSMingkai Hu #else
3094f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS	CONFIG_SYS_INIT_RAM_ADDR
3104f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH 0
3114f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW CONFIG_SYS_INIT_RAM_ADDR_PHYS
3124f1d1b7dSMingkai Hu #endif
3134f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_SIZE	0x00004000
3144f1d1b7dSMingkai Hu 
3154f1d1b7dSMingkai Hu #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - \
3164f1d1b7dSMingkai Hu 					GENERATED_GBL_DATA_SIZE)
3174f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
3184f1d1b7dSMingkai Hu 
3199307cbabSPrabhakar Kushwaha #define CONFIG_SYS_MONITOR_LEN		(768 * 1024)
3204f1d1b7dSMingkai Hu #define CONFIG_SYS_MALLOC_LEN		(1024 * 1024)
3214f1d1b7dSMingkai Hu 
3224f1d1b7dSMingkai Hu /* Serial Port - controlled on board with jumper J8
3234f1d1b7dSMingkai Hu  * open - index 2
3244f1d1b7dSMingkai Hu  * shorted - index 1
3254f1d1b7dSMingkai Hu  */
3264f1d1b7dSMingkai Hu #define CONFIG_CONS_INDEX	1
3274f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_SERIAL
3284f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_REG_SIZE	1
3294f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_CLK		(get_bus_freq(0)/2)
3304f1d1b7dSMingkai Hu 
3314f1d1b7dSMingkai Hu #define CONFIG_SYS_BAUDRATE_TABLE	\
3324f1d1b7dSMingkai Hu 	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200}
3334f1d1b7dSMingkai Hu 
3344f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_COM1	(CONFIG_SYS_CCSRBAR+0x11C500)
3354f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_COM2	(CONFIG_SYS_CCSRBAR+0x11C600)
3364f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_COM3	(CONFIG_SYS_CCSRBAR+0x11D500)
3374f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_COM4	(CONFIG_SYS_CCSRBAR+0x11D600)
3384f1d1b7dSMingkai Hu 
3394f1d1b7dSMingkai Hu /* I2C */
34000f792e0SHeiko Schocher #define CONFIG_SYS_I2C
34100f792e0SHeiko Schocher #define CONFIG_SYS_I2C_FSL
34200f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SPEED	400000
34300f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SLAVE	0x7F
3442bd1aab0SShaohui Xie #define CONFIG_SYS_FSL_I2C_OFFSET	0x118000
34500f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C2_SPEED	400000
34600f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C2_SLAVE	0x7F
3472bd1aab0SShaohui Xie #define CONFIG_SYS_FSL_I2C2_OFFSET	0x118100
3484f1d1b7dSMingkai Hu 
3494f1d1b7dSMingkai Hu /*
3504f1d1b7dSMingkai Hu  * RapidIO
3514f1d1b7dSMingkai Hu  */
3524f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO1_MEM_VIRT	0xa0000000
3534f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
3544f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO1_MEM_PHYS	0xc20000000ull
3554f1d1b7dSMingkai Hu #else
3564f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO1_MEM_PHYS	0xa0000000
3574f1d1b7dSMingkai Hu #endif
3584f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO1_MEM_SIZE	0x10000000	/* 256M */
3594f1d1b7dSMingkai Hu 
3604f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO2_MEM_VIRT	0xb0000000
3614f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
3624f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO2_MEM_PHYS	0xc30000000ull
3634f1d1b7dSMingkai Hu #else
3644f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO2_MEM_PHYS	0xb0000000
3654f1d1b7dSMingkai Hu #endif
3664f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO2_MEM_SIZE	0x10000000	/* 256M */
3674f1d1b7dSMingkai Hu 
3684f1d1b7dSMingkai Hu /*
369ff65f126SLiu Gang  * for slave u-boot IMAGE instored in master memory space,
370ff65f126SLiu Gang  * PHYS must be aligned based on the SIZE
371ff65f126SLiu Gang  */
372e4911815SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_PHYS 0xfef200000ull
373e4911815SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS1 0xfff00000ull
374e4911815SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_SIZE 0x100000	/* 1M */
375e4911815SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS2 0x3fff00000ull
376ff65f126SLiu Gang /*
377ff65f126SLiu Gang  * for slave UCODE and ENV instored in master memory space,
378ff65f126SLiu Gang  * PHYS must be aligned based on the SIZE
379ff65f126SLiu Gang  */
380e4911815SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_PHYS 0xfef100000ull
381b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_BUS 0x3ffe00000ull
382b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_SIZE 0x40000	/* 256K */
383ff65f126SLiu Gang 
384ff65f126SLiu Gang /* slave core release by master*/
385b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_BRR_OFFSET 0xe00e4
386b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_RELEASE_MASK 0x00000001 /* release core 0 */
387ff65f126SLiu Gang 
388ff65f126SLiu Gang /*
389461632bdSLiu Gang  * SRIO_PCIE_BOOT - SLAVE
390ff65f126SLiu Gang  */
391461632bdSLiu Gang #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE
392461632bdSLiu Gang #define CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR 0xFFE00000
393461632bdSLiu Gang #define CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR_PHYS \
394461632bdSLiu Gang 		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR)
395ff65f126SLiu Gang #endif
396ff65f126SLiu Gang 
397ff65f126SLiu Gang /*
3984f1d1b7dSMingkai Hu  * eSPI - Enhanced SPI
3994f1d1b7dSMingkai Hu  */
4004f1d1b7dSMingkai Hu #define CONFIG_SF_DEFAULT_SPEED         10000000
4014f1d1b7dSMingkai Hu #define CONFIG_SF_DEFAULT_MODE          0
4024f1d1b7dSMingkai Hu 
4034f1d1b7dSMingkai Hu /*
4044f1d1b7dSMingkai Hu  * General PCI
4054f1d1b7dSMingkai Hu  * Memory space is mapped 1-1, but I/O space must start from 0.
4064f1d1b7dSMingkai Hu  */
4074f1d1b7dSMingkai Hu 
4084f1d1b7dSMingkai Hu /* controller 1, direct to uli, tgtid 3, Base address 20000 */
4094f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_VIRT	0x80000000
4104f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4114f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_BUS	0xe0000000
4124f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_PHYS	0xc00000000ull
4134f1d1b7dSMingkai Hu #else
4144f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_BUS	0x80000000
4154f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_PHYS	0x80000000
4164f1d1b7dSMingkai Hu #endif
4174f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_SIZE	0x20000000	/* 512M */
4184f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_VIRT	0xf8000000
4194f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_BUS		0x00000000
4204f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4214f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_PHYS	0xff8000000ull
4224f1d1b7dSMingkai Hu #else
4234f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_PHYS	0xf8000000
4244f1d1b7dSMingkai Hu #endif
4254f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_SIZE	0x00010000	/* 64k */
4264f1d1b7dSMingkai Hu 
4274f1d1b7dSMingkai Hu /* controller 2, Slot 2, tgtid 2, Base address 201000 */
4284f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_VIRT	0xa0000000
4294f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4304f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_BUS	0xe0000000
4314f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_PHYS	0xc20000000ull
4324f1d1b7dSMingkai Hu #else
4334f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_BUS	0xa0000000
4344f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_PHYS	0xa0000000
4354f1d1b7dSMingkai Hu #endif
4364f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_SIZE	0x20000000	/* 512M */
4374f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_IO_VIRT	0xf8010000
4384f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_IO_BUS		0x00000000
4394f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4404f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_IO_PHYS	0xff8010000ull
4414f1d1b7dSMingkai Hu #else
4424f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_IO_PHYS	0xf8010000
4434f1d1b7dSMingkai Hu #endif
4444f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_IO_SIZE	0x00010000	/* 64k */
4454f1d1b7dSMingkai Hu 
4464f1d1b7dSMingkai Hu /* controller 3, Slot 1, tgtid 1, Base address 202000 */
4474f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_VIRT	0xc0000000
4484f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4494f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_BUS	0xe0000000
4504f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_PHYS	0xc40000000ull
4514f1d1b7dSMingkai Hu #else
4524f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_BUS	0xc0000000
4534f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_PHYS	0xc0000000
4544f1d1b7dSMingkai Hu #endif
4554f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_SIZE	0x20000000	/* 512M */
4564f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_IO_VIRT	0xf8020000
4574f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_IO_BUS		0x00000000
4584f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4594f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_IO_PHYS	0xff8020000ull
4604f1d1b7dSMingkai Hu #else
4614f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_IO_PHYS	0xf8020000
4624f1d1b7dSMingkai Hu #endif
4634f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_IO_SIZE	0x00010000	/* 64k */
4644f1d1b7dSMingkai Hu 
4654f1d1b7dSMingkai Hu /* Qman/Bman */
4664f1d1b7dSMingkai Hu #define CONFIG_SYS_DPAA_QBMAN		/* Support Q/Bman */
4674f1d1b7dSMingkai Hu #define CONFIG_SYS_BMAN_NUM_PORTALS	10
4684f1d1b7dSMingkai Hu #define CONFIG_SYS_BMAN_MEM_BASE	0xf4000000
4694f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4704f1d1b7dSMingkai Hu #define CONFIG_SYS_BMAN_MEM_PHYS	0xff4000000ull
4714f1d1b7dSMingkai Hu #else
4724f1d1b7dSMingkai Hu #define CONFIG_SYS_BMAN_MEM_PHYS	CONFIG_SYS_BMAN_MEM_BASE
4734f1d1b7dSMingkai Hu #endif
4744f1d1b7dSMingkai Hu #define CONFIG_SYS_BMAN_MEM_SIZE	0x00200000
4753fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_SP_CENA_SIZE    0x4000
4763fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_SP_CINH_SIZE    0x1000
4773fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CENA_BASE       CONFIG_SYS_BMAN_MEM_BASE
4783fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CENA_SIZE       (CONFIG_SYS_BMAN_MEM_SIZE >> 1)
4793fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CINH_BASE       (CONFIG_SYS_BMAN_MEM_BASE + \
4803fa66db4SJeffrey Ladouceur 					CONFIG_SYS_BMAN_CENA_SIZE)
4813fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CINH_SIZE       (CONFIG_SYS_BMAN_MEM_SIZE >> 1)
4823fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_SWP_ISDR_REG	0xE08
4834f1d1b7dSMingkai Hu #define CONFIG_SYS_QMAN_NUM_PORTALS	10
4844f1d1b7dSMingkai Hu #define CONFIG_SYS_QMAN_MEM_BASE	0xf4200000
4854f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4864f1d1b7dSMingkai Hu #define CONFIG_SYS_QMAN_MEM_PHYS	0xff4200000ull
4874f1d1b7dSMingkai Hu #else
4884f1d1b7dSMingkai Hu #define CONFIG_SYS_QMAN_MEM_PHYS	CONFIG_SYS_QMAN_MEM_BASE
4894f1d1b7dSMingkai Hu #endif
4904f1d1b7dSMingkai Hu #define CONFIG_SYS_QMAN_MEM_SIZE	0x00200000
4913fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_SP_CENA_SIZE    0x4000
4923fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_SP_CINH_SIZE    0x1000
4933fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CENA_BASE       CONFIG_SYS_QMAN_MEM_BASE
4943fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CENA_SIZE       (CONFIG_SYS_QMAN_MEM_SIZE >> 1)
4953fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CINH_BASE       (CONFIG_SYS_QMAN_MEM_BASE + \
4963fa66db4SJeffrey Ladouceur 					CONFIG_SYS_QMAN_CENA_SIZE)
4973fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CINH_SIZE       (CONFIG_SYS_QMAN_MEM_SIZE >> 1)
4983fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_SWP_ISDR_REG	0xE08
4994f1d1b7dSMingkai Hu 
5004f1d1b7dSMingkai Hu #define CONFIG_SYS_DPAA_FMAN
5014f1d1b7dSMingkai Hu #define CONFIG_SYS_DPAA_PME
5024f1d1b7dSMingkai Hu /* Default address of microcode for the Linux Fman driver */
5034f1d1b7dSMingkai Hu #if defined(CONFIG_SPIFLASH)
5044f1d1b7dSMingkai Hu /*
5054f1d1b7dSMingkai Hu  * env is stored at 0x100000, sector size is 0x10000, ucode is stored after
5064f1d1b7dSMingkai Hu  * env, so we got 0x110000.
5074f1d1b7dSMingkai Hu  */
508f2717b47STimur Tabi #define CONFIG_SYS_QE_FW_IN_SPIFLASH
509dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR	0x110000
5104f1d1b7dSMingkai Hu #elif defined(CONFIG_SDCARD)
5114f1d1b7dSMingkai Hu /*
5124f1d1b7dSMingkai Hu  * PBL SD boot image should stored at 0x1000(8 blocks), the size of the image is
513e222b1f3SPrabhakar Kushwaha  * about 825KB (1650 blocks), Env is stored after the image, and the env size is
514e222b1f3SPrabhakar Kushwaha  * 0x2000 (16 blocks), 8 + 1650 + 16 = 1674, enlarge it to 1680.
5154f1d1b7dSMingkai Hu  */
516f2717b47STimur Tabi #define CONFIG_SYS_QE_FMAN_FW_IN_MMC
517dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR	(512 * 1680)
5184f1d1b7dSMingkai Hu #elif defined(CONFIG_NAND)
519f2717b47STimur Tabi #define CONFIG_SYS_QE_FMAN_FW_IN_NAND
520dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR	(8 * CONFIG_SYS_NAND_BLOCK_SIZE)
521461632bdSLiu Gang #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
522ff65f126SLiu Gang /*
523ff65f126SLiu Gang  * Slave has no ucode locally, it can fetch this from remote. When implementing
524ff65f126SLiu Gang  * in two corenet boards, slave's ucode could be stored in master's memory
525ff65f126SLiu Gang  * space, the address can be mapped from slave TLB->slave LAW->
526461632bdSLiu Gang  * slave SRIO or PCIE outbound window->master inbound window->
527461632bdSLiu Gang  * master LAW->the ucode address in master's memory space.
528ff65f126SLiu Gang  */
529ff65f126SLiu Gang #define CONFIG_SYS_QE_FMAN_FW_IN_REMOTE
530dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR	0xFFE00000
5314f1d1b7dSMingkai Hu #else
532f2717b47STimur Tabi #define CONFIG_SYS_QE_FMAN_FW_IN_NOR
533dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR	0xEFF00000
5344f1d1b7dSMingkai Hu #endif
535f2717b47STimur Tabi #define CONFIG_SYS_QE_FMAN_FW_LENGTH	0x10000
536f2717b47STimur Tabi #define CONFIG_SYS_FDT_PAD		(0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH)
5374f1d1b7dSMingkai Hu 
5384f1d1b7dSMingkai Hu #ifdef CONFIG_SYS_DPAA_FMAN
5394f1d1b7dSMingkai Hu #define CONFIG_FMAN_ENET
5400787ecc0SMingkai Hu #define CONFIG_PHYLIB_10G
5410787ecc0SMingkai Hu #define CONFIG_PHY_VITESSE
5420787ecc0SMingkai Hu #define CONFIG_PHY_TERANETICS
5434f1d1b7dSMingkai Hu #endif
5444f1d1b7dSMingkai Hu 
5454f1d1b7dSMingkai Hu #ifdef CONFIG_PCI
546842033e6SGabor Juhos #define CONFIG_PCI_INDIRECT_BRIDGE
5474f1d1b7dSMingkai Hu #define CONFIG_PCI_PNP			/* do pci plug-and-play */
5484f1d1b7dSMingkai Hu 
5494f1d1b7dSMingkai Hu #define CONFIG_PCI_SCAN_SHOW		/* show pci devices on startup */
5504f1d1b7dSMingkai Hu #define CONFIG_DOS_PARTITION
5514f1d1b7dSMingkai Hu #endif	/* CONFIG_PCI */
5524f1d1b7dSMingkai Hu 
553aa7f281cSMingkai Hu /* SATA */
5549760b274SZang Roy-R61911 #define CONFIG_FSL_SATA_V2
5559760b274SZang Roy-R61911 
5569760b274SZang Roy-R61911 #ifdef CONFIG_FSL_SATA_V2
557aa7f281cSMingkai Hu #define CONFIG_FSL_SATA
5583e0529f7STimur Tabi #define CONFIG_LIBATA
559aa7f281cSMingkai Hu 
560aa7f281cSMingkai Hu #define CONFIG_SYS_SATA_MAX_DEVICE	2
561aa7f281cSMingkai Hu #define CONFIG_SATA1
562aa7f281cSMingkai Hu #define CONFIG_SYS_SATA1		CONFIG_SYS_MPC85xx_SATA1_ADDR
563aa7f281cSMingkai Hu #define CONFIG_SYS_SATA1_FLAGS		FLAGS_DMA
564aa7f281cSMingkai Hu #define CONFIG_SATA2
565aa7f281cSMingkai Hu #define CONFIG_SYS_SATA2		CONFIG_SYS_MPC85xx_SATA2_ADDR
566aa7f281cSMingkai Hu #define CONFIG_SYS_SATA2_FLAGS		FLAGS_DMA
567aa7f281cSMingkai Hu 
568aa7f281cSMingkai Hu #define CONFIG_LBA48
569aa7f281cSMingkai Hu #define CONFIG_CMD_SATA
570aa7f281cSMingkai Hu #define CONFIG_DOS_PARTITION
571aa7f281cSMingkai Hu #endif
572aa7f281cSMingkai Hu 
5734f1d1b7dSMingkai Hu #ifdef CONFIG_FMAN_ENET
5744f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC1_PHY_ADDR	0x2
5754f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC2_PHY_ADDR	0x3
5764f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC3_PHY_ADDR	0x4
5774f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC4_PHY_ADDR	0x1
5784f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC5_PHY_ADDR	0x0
5794f1d1b7dSMingkai Hu 
5804f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC1_RISER_PHY_ADDR	0x1c
5814f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC2_RISER_PHY_ADDR	0x1d
5824f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC3_RISER_PHY_ADDR	0x1e
5834f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC4_RISER_PHY_ADDR	0x1f
5844f1d1b7dSMingkai Hu 
5850787ecc0SMingkai Hu #define CONFIG_SYS_FM1_10GEC1_PHY_ADDR	0
5860787ecc0SMingkai Hu 
5874f1d1b7dSMingkai Hu #define CONFIG_SYS_TBIPA_VALUE	8
5884f1d1b7dSMingkai Hu #define CONFIG_MII		/* MII PHY management */
5894f1d1b7dSMingkai Hu #define CONFIG_ETHPRIME		"FM1@DTSEC1"
5904f1d1b7dSMingkai Hu #define CONFIG_PHY_GIGE		/* Include GbE speed/duplex detection */
5914f1d1b7dSMingkai Hu #endif
5924f1d1b7dSMingkai Hu 
5934f1d1b7dSMingkai Hu /*
5944f1d1b7dSMingkai Hu  * Environment
5954f1d1b7dSMingkai Hu  */
5964f1d1b7dSMingkai Hu #define CONFIG_LOADS_ECHO		/* echo on for serial download */
5974f1d1b7dSMingkai Hu #define CONFIG_SYS_LOADS_BAUD_CHANGE	/* allow baudrate change */
5984f1d1b7dSMingkai Hu 
5994f1d1b7dSMingkai Hu /*
6004f1d1b7dSMingkai Hu  * Command line configuration.
6014f1d1b7dSMingkai Hu  */
6024f1d1b7dSMingkai Hu #define CONFIG_CMD_ERRATA
6034f1d1b7dSMingkai Hu #define CONFIG_CMD_IRQ
6044f1d1b7dSMingkai Hu 
6054f1d1b7dSMingkai Hu #ifdef CONFIG_PCI
6064f1d1b7dSMingkai Hu #define CONFIG_CMD_PCI
6074f1d1b7dSMingkai Hu #endif
6084f1d1b7dSMingkai Hu 
6094f1d1b7dSMingkai Hu /*
6104f1d1b7dSMingkai Hu * USB
6114f1d1b7dSMingkai Hu */
6123d7506faSramneek mehresh #define CONFIG_HAS_FSL_DR_USB
6133d7506faSramneek mehresh #define CONFIG_HAS_FSL_MPH_USB
6143d7506faSramneek mehresh 
6153d7506faSramneek mehresh #if defined(CONFIG_HAS_FSL_DR_USB) || defined(CONFIG_HAS_FSL_MPH_USB)
6164f1d1b7dSMingkai Hu #define CONFIG_USB_STORAGE
6174f1d1b7dSMingkai Hu #define CONFIG_USB_EHCI
6184f1d1b7dSMingkai Hu #define CONFIG_USB_EHCI_FSL
6194f1d1b7dSMingkai Hu #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
6203d7506faSramneek mehresh #endif
6213d7506faSramneek mehresh 
6224f1d1b7dSMingkai Hu #define CONFIG_MMC
6234f1d1b7dSMingkai Hu 
6244f1d1b7dSMingkai Hu #ifdef CONFIG_MMC
6254f1d1b7dSMingkai Hu #define CONFIG_FSL_ESDHC
6264f1d1b7dSMingkai Hu #define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR
6274f1d1b7dSMingkai Hu #define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT
6284f1d1b7dSMingkai Hu #define CONFIG_GENERIC_MMC
6294f1d1b7dSMingkai Hu #define CONFIG_DOS_PARTITION
6304f1d1b7dSMingkai Hu #endif
6314f1d1b7dSMingkai Hu 
632737537efSRuchika Gupta /* Hash command with SHA acceleration supported in hardware */
633737537efSRuchika Gupta #ifdef CONFIG_FSL_CAAM
634737537efSRuchika Gupta #define CONFIG_CMD_HASH
635737537efSRuchika Gupta #define CONFIG_SHA_HW_ACCEL
636737537efSRuchika Gupta #endif
637737537efSRuchika Gupta 
6384f1d1b7dSMingkai Hu /*
6394f1d1b7dSMingkai Hu  * Miscellaneous configurable options
6404f1d1b7dSMingkai Hu  */
6414f1d1b7dSMingkai Hu #define CONFIG_SYS_LONGHELP			/* undef to save memory	*/
6424f1d1b7dSMingkai Hu #define CONFIG_CMDLINE_EDITING			/* Command-line editing */
6434f1d1b7dSMingkai Hu #define CONFIG_AUTO_COMPLETE			/* add autocompletion support */
6444f1d1b7dSMingkai Hu #define CONFIG_SYS_LOAD_ADDR	0x2000000	/* default load address */
6454f1d1b7dSMingkai Hu #ifdef CONFIG_CMD_KGDB
6464f1d1b7dSMingkai Hu #define CONFIG_SYS_CBSIZE	1024		/* Console I/O Buffer Size */
6474f1d1b7dSMingkai Hu #else
6484f1d1b7dSMingkai Hu #define CONFIG_SYS_CBSIZE	256		/* Console I/O Buffer Size */
6494f1d1b7dSMingkai Hu #endif
6504f1d1b7dSMingkai Hu /* Print Buffer Size */
6514f1d1b7dSMingkai Hu #define CONFIG_SYS_PBSIZE	(CONFIG_SYS_CBSIZE + \
6524f1d1b7dSMingkai Hu 				sizeof(CONFIG_SYS_PROMPT)+16)
6534f1d1b7dSMingkai Hu #define CONFIG_SYS_MAXARGS	16		/* max number of command args */
6544f1d1b7dSMingkai Hu /* Boot Argument Buffer Size */
6554f1d1b7dSMingkai Hu #define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE
6564f1d1b7dSMingkai Hu 
6574f1d1b7dSMingkai Hu /*
6584f1d1b7dSMingkai Hu  * For booting Linux, the board info and command line data
6594f1d1b7dSMingkai Hu  * have to be in the first 64 MB of memory, since this is
6604f1d1b7dSMingkai Hu  * the maximum mapped by the Linux kernel during initialization.
6614f1d1b7dSMingkai Hu  */
6624f1d1b7dSMingkai Hu #define CONFIG_SYS_BOOTMAPSZ	(64 << 20)	/* Initial Memory for Linux */
6634f1d1b7dSMingkai Hu #define CONFIG_SYS_BOOTM_LEN	(64 << 20)	/* Increase max gunzip size */
6644f1d1b7dSMingkai Hu 
6654f1d1b7dSMingkai Hu #ifdef CONFIG_CMD_KGDB
6664f1d1b7dSMingkai Hu #define CONFIG_KGDB_BAUDRATE	230400	/* speed to run kgdb serial port */
6674f1d1b7dSMingkai Hu #endif
6684f1d1b7dSMingkai Hu 
6694f1d1b7dSMingkai Hu /*
6704f1d1b7dSMingkai Hu  * Environment Configuration
6714f1d1b7dSMingkai Hu  */
6728b3637c6SJoe Hershberger #define CONFIG_ROOTPATH		"/opt/nfsroot"
673b3f44c21SJoe Hershberger #define CONFIG_BOOTFILE		"uImage"
6744f1d1b7dSMingkai Hu #define CONFIG_UBOOTPATH	u-boot.bin
6754f1d1b7dSMingkai Hu 
6764f1d1b7dSMingkai Hu /* default location for tftp and bootm */
6774f1d1b7dSMingkai Hu #define CONFIG_LOADADDR		1000000
6784f1d1b7dSMingkai Hu 
6794f1d1b7dSMingkai Hu 
6804f1d1b7dSMingkai Hu #define CONFIG_BAUDRATE	115200
6814f1d1b7dSMingkai Hu 
6824f1d1b7dSMingkai Hu #define __USB_PHY_TYPE	utmi
6834f1d1b7dSMingkai Hu 
6844f1d1b7dSMingkai Hu #define	CONFIG_EXTRA_ENV_SETTINGS				\
6854f1d1b7dSMingkai Hu 	"hwconfig=fsl_ddr:ctlr_intlv=cacheline,"		\
6864f1d1b7dSMingkai Hu 	"bank_intlv=cs0_cs1\0"					\
6874f1d1b7dSMingkai Hu 	"netdev=eth0\0"						\
6885368c55dSMarek Vasut 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"			\
6895368c55dSMarek Vasut 	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"		\
6904f1d1b7dSMingkai Hu 	"tftpflash=tftpboot $loadaddr $uboot && "		\
6914f1d1b7dSMingkai Hu 	"protect off $ubootaddr +$filesize && "			\
6924f1d1b7dSMingkai Hu 	"erase $ubootaddr +$filesize && "			\
6934f1d1b7dSMingkai Hu 	"cp.b $loadaddr $ubootaddr $filesize && "		\
6944f1d1b7dSMingkai Hu 	"protect on $ubootaddr +$filesize && "			\
6954f1d1b7dSMingkai Hu 	"cmp.b $loadaddr $ubootaddr $filesize\0"		\
6964f1d1b7dSMingkai Hu 	"consoledev=ttyS0\0"					\
6975368c55dSMarek Vasut 	"usb_phy_type=" __stringify(__USB_PHY_TYPE) "\0"		\
6984f1d1b7dSMingkai Hu 	"usb_dr_mode=host\0"					\
6994f1d1b7dSMingkai Hu 	"ramdiskaddr=2000000\0"					\
7004f1d1b7dSMingkai Hu 	"ramdiskfile=p2041rdb/ramdisk.uboot\0"			\
701*b24a4f62SScott Wood 	"fdtaddr=1e00000\0"					\
7024f1d1b7dSMingkai Hu 	"fdtfile=p2041rdb/p2041rdb.dtb\0"			\
7033246584dSKim Phillips 	"bdev=sda3\0"
7044f1d1b7dSMingkai Hu 
7054f1d1b7dSMingkai Hu #define CONFIG_HDBOOT					\
7064f1d1b7dSMingkai Hu 	"setenv bootargs root=/dev/$bdev rw "		\
7074f1d1b7dSMingkai Hu 	"console=$consoledev,$baudrate $othbootargs;"	\
7084f1d1b7dSMingkai Hu 	"tftp $loadaddr $bootfile;"			\
7094f1d1b7dSMingkai Hu 	"tftp $fdtaddr $fdtfile;"			\
7104f1d1b7dSMingkai Hu 	"bootm $loadaddr - $fdtaddr"
7114f1d1b7dSMingkai Hu 
7124f1d1b7dSMingkai Hu #define CONFIG_NFSBOOTCOMMAND			\
7134f1d1b7dSMingkai Hu 	"setenv bootargs root=/dev/nfs rw "	\
7144f1d1b7dSMingkai Hu 	"nfsroot=$serverip:$rootpath "		\
7154f1d1b7dSMingkai Hu 	"ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \
7164f1d1b7dSMingkai Hu 	"console=$consoledev,$baudrate $othbootargs;"	\
7174f1d1b7dSMingkai Hu 	"tftp $loadaddr $bootfile;"		\
7184f1d1b7dSMingkai Hu 	"tftp $fdtaddr $fdtfile;"		\
7194f1d1b7dSMingkai Hu 	"bootm $loadaddr - $fdtaddr"
7204f1d1b7dSMingkai Hu 
7214f1d1b7dSMingkai Hu #define CONFIG_RAMBOOTCOMMAND				\
7224f1d1b7dSMingkai Hu 	"setenv bootargs root=/dev/ram rw "		\
7234f1d1b7dSMingkai Hu 	"console=$consoledev,$baudrate $othbootargs;"	\
7244f1d1b7dSMingkai Hu 	"tftp $ramdiskaddr $ramdiskfile;"		\
7254f1d1b7dSMingkai Hu 	"tftp $loadaddr $bootfile;"			\
7264f1d1b7dSMingkai Hu 	"tftp $fdtaddr $fdtfile;"			\
7274f1d1b7dSMingkai Hu 	"bootm $loadaddr $ramdiskaddr $fdtaddr"
7284f1d1b7dSMingkai Hu 
7294f1d1b7dSMingkai Hu #define CONFIG_BOOTCOMMAND		CONFIG_HDBOOT
7304f1d1b7dSMingkai Hu 
7314f1d1b7dSMingkai Hu #include <asm/fsl_secure_boot.h>
7324f1d1b7dSMingkai Hu 
7334f1d1b7dSMingkai Hu #endif	/* __CONFIG_H */
734