xref: /rk3399_rockchip-uboot/include/configs/P2041RDB.h (revision c8b281524bf98ee5a52db7da71bccdea002df3f5)
14f1d1b7dSMingkai Hu /*
23d7506faSramneek mehresh  * Copyright 2011-2012 Freescale Semiconductor, Inc.
34f1d1b7dSMingkai Hu  *
44f1d1b7dSMingkai Hu  * See file CREDITS for list of people who contributed to this
54f1d1b7dSMingkai Hu  * project.
64f1d1b7dSMingkai Hu  *
74f1d1b7dSMingkai Hu  * This program is free software; you can redistribute it and/or
84f1d1b7dSMingkai Hu  * modify it under the terms of the GNU General Public License as
94f1d1b7dSMingkai Hu  * published by the Free Software Foundation; either version 2 of
104f1d1b7dSMingkai Hu  * the License, or (at your option) any later version.
114f1d1b7dSMingkai Hu  *
124f1d1b7dSMingkai Hu  * This program is distributed in the hope that it will be useful,
134f1d1b7dSMingkai Hu  * but WITHOUT ANY WARRANTY; without even the implied warranty of
144f1d1b7dSMingkai Hu  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
154f1d1b7dSMingkai Hu  * GNU General Public License for more details.
164f1d1b7dSMingkai Hu  *
174f1d1b7dSMingkai Hu  * You should have received a copy of the GNU General Public License
184f1d1b7dSMingkai Hu  * along with this program; if not, write to the Free Software
194f1d1b7dSMingkai Hu  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
204f1d1b7dSMingkai Hu  * MA 02111-1307 USA
214f1d1b7dSMingkai Hu  */
224f1d1b7dSMingkai Hu 
234f1d1b7dSMingkai Hu /*
244f1d1b7dSMingkai Hu  * P2041 RDB board configuration file
253e978f5dSScott Wood  * Also supports P2040 RDB
264f1d1b7dSMingkai Hu  */
274f1d1b7dSMingkai Hu #ifndef __CONFIG_H
284f1d1b7dSMingkai Hu #define __CONFIG_H
294f1d1b7dSMingkai Hu 
304f1d1b7dSMingkai Hu #define CONFIG_P2041RDB
314f1d1b7dSMingkai Hu #define CONFIG_PHYS_64BIT
324f1d1b7dSMingkai Hu #define CONFIG_PPC_P2041
334f1d1b7dSMingkai Hu 
344f1d1b7dSMingkai Hu #ifdef CONFIG_RAMBOOT_PBL
354f1d1b7dSMingkai Hu #define CONFIG_RAMBOOT_TEXT_BASE	CONFIG_SYS_TEXT_BASE
364f1d1b7dSMingkai Hu #define CONFIG_RESET_VECTOR_ADDRESS	0xfffffffc
37b38181faSValentin Longchamp #define CONFIG_PBLPBI_CONFIG $(SRCTREE)/board/freescale/corenet_ds/pbi.cfg
38b38181faSValentin Longchamp #define CONFIG_PBLRCW_CONFIG $(SRCTREE)/board/freescale/corenet_ds/rcw_p2041rdb.cfg
394f1d1b7dSMingkai Hu #endif
404f1d1b7dSMingkai Hu 
41461632bdSLiu Gang #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE
42ff65f126SLiu Gang /* Set 1M boot space */
43461632bdSLiu Gang #define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_SYS_TEXT_BASE & 0xfff00000)
44461632bdSLiu Gang #define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS \
45461632bdSLiu Gang 		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR)
46ff65f126SLiu Gang #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc
47ff65f126SLiu Gang #define CONFIG_SYS_NO_FLASH
48ff65f126SLiu Gang #endif
49ff65f126SLiu Gang 
504f1d1b7dSMingkai Hu /* High Level Configuration Options */
514f1d1b7dSMingkai Hu #define CONFIG_BOOKE
524f1d1b7dSMingkai Hu #define CONFIG_E500			/* BOOKE e500 family */
534f1d1b7dSMingkai Hu #define CONFIG_E500MC			/* BOOKE e500mc family */
544f1d1b7dSMingkai Hu #define CONFIG_SYS_BOOK3E_HV		/* Category E.HV supported */
554f1d1b7dSMingkai Hu #define CONFIG_MPC85xx			/* MPC85xx/PQ3 platform */
564f1d1b7dSMingkai Hu #define CONFIG_FSL_CORENET		/* Freescale CoreNet platform */
574f1d1b7dSMingkai Hu #define CONFIG_MP			/* support multiple processors */
584f1d1b7dSMingkai Hu 
594f1d1b7dSMingkai Hu #ifndef CONFIG_SYS_TEXT_BASE
604f1d1b7dSMingkai Hu #define CONFIG_SYS_TEXT_BASE	0xeff80000
614f1d1b7dSMingkai Hu #endif
624f1d1b7dSMingkai Hu 
634f1d1b7dSMingkai Hu #ifndef CONFIG_RESET_VECTOR_ADDRESS
644f1d1b7dSMingkai Hu #define CONFIG_RESET_VECTOR_ADDRESS	0xeffffffc
654f1d1b7dSMingkai Hu #endif
664f1d1b7dSMingkai Hu 
674f1d1b7dSMingkai Hu #define CONFIG_SYS_FSL_CPC		/* Corenet Platform Cache */
684f1d1b7dSMingkai Hu #define CONFIG_SYS_NUM_CPC		CONFIG_NUM_DDR_CONTROLLERS
694f1d1b7dSMingkai Hu #define CONFIG_FSL_ELBC			/* Has Enhanced localbus controller */
704f1d1b7dSMingkai Hu #define CONFIG_PCI			/* Enable PCI/PCIE */
714f1d1b7dSMingkai Hu #define CONFIG_PCIE1			/* PCIE controler 1 */
724f1d1b7dSMingkai Hu #define CONFIG_PCIE2			/* PCIE controler 2 */
734f1d1b7dSMingkai Hu #define CONFIG_PCIE3			/* PCIE controler 3 */
744f1d1b7dSMingkai Hu #define CONFIG_FSL_PCI_INIT		/* Use common FSL init code */
754f1d1b7dSMingkai Hu #define CONFIG_SYS_PCI_64BIT		/* enable 64-bit PCI resources */
764f1d1b7dSMingkai Hu 
774f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO
784f1d1b7dSMingkai Hu #define CONFIG_SRIO1			/* SRIO port 1 */
794f1d1b7dSMingkai Hu #define CONFIG_SRIO2			/* SRIO port 2 */
80*c8b28152SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_MASTER
814d28db8aSKumar Gala #define CONFIG_SYS_DPAA_RMAN		/* RMan */
824f1d1b7dSMingkai Hu 
834f1d1b7dSMingkai Hu #define CONFIG_FSL_LAW			/* Use common FSL init code */
844f1d1b7dSMingkai Hu 
854f1d1b7dSMingkai Hu #define CONFIG_ENV_OVERWRITE
864f1d1b7dSMingkai Hu 
874f1d1b7dSMingkai Hu #ifdef CONFIG_SYS_NO_FLASH
88461632bdSLiu Gang #if !defined(CONFIG_RAMBOOT_PBL) && !defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
894f1d1b7dSMingkai Hu #define CONFIG_ENV_IS_NOWHERE
900f57f6a3SShaohui Xie #endif
914f1d1b7dSMingkai Hu #else
924f1d1b7dSMingkai Hu #define CONFIG_FLASH_CFI_DRIVER
934f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_CFI
940f57f6a3SShaohui Xie #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE
954f1d1b7dSMingkai Hu #endif
964f1d1b7dSMingkai Hu 
974f1d1b7dSMingkai Hu #if defined(CONFIG_SPIFLASH)
984f1d1b7dSMingkai Hu 	#define CONFIG_SYS_EXTRA_ENV_RELOC
994f1d1b7dSMingkai Hu 	#define CONFIG_ENV_IS_IN_SPI_FLASH
1004f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SPI_BUS              0
1014f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SPI_CS               0
1024f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SPI_MAX_HZ           10000000
1034f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SPI_MODE             0
1044f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SIZE                 0x2000          /* 8KB */
1054f1d1b7dSMingkai Hu 	#define CONFIG_ENV_OFFSET               0x100000        /* 1MB */
1064f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SECT_SIZE            0x10000
1074f1d1b7dSMingkai Hu #elif defined(CONFIG_SDCARD)
1084f1d1b7dSMingkai Hu 	#define CONFIG_SYS_EXTRA_ENV_RELOC
1094f1d1b7dSMingkai Hu 	#define CONFIG_ENV_IS_IN_MMC
1104394d0c2SFabio Estevam 	#define CONFIG_FSL_FIXED_MMC_LOCATION
1114f1d1b7dSMingkai Hu 	#define CONFIG_SYS_MMC_ENV_DEV          0
1124f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SIZE			0x2000
1134f1d1b7dSMingkai Hu 	#define CONFIG_ENV_OFFSET		(512 * 1097)
11415c8c6c2SShaohui Xie #elif defined(CONFIG_NAND)
11515c8c6c2SShaohui Xie #define CONFIG_SYS_EXTRA_ENV_RELOC
11615c8c6c2SShaohui Xie #define CONFIG_ENV_IS_IN_NAND
11715c8c6c2SShaohui Xie #define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE
11815c8c6c2SShaohui Xie #define CONFIG_ENV_OFFSET		(5 * CONFIG_SYS_NAND_BLOCK_SIZE)
119461632bdSLiu Gang #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
120ff65f126SLiu Gang #define CONFIG_ENV_IS_IN_REMOTE
121ff65f126SLiu Gang #define CONFIG_ENV_ADDR		0xffe20000
122ff65f126SLiu Gang #define CONFIG_ENV_SIZE		0x2000
1230f57f6a3SShaohui Xie #elif defined(CONFIG_ENV_IS_NOWHERE)
1240f57f6a3SShaohui Xie #define CONFIG_ENV_SIZE		0x2000
1254f1d1b7dSMingkai Hu #else
1264f1d1b7dSMingkai Hu 	#define CONFIG_ENV_IS_IN_FLASH
1274f1d1b7dSMingkai Hu 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE \
1284f1d1b7dSMingkai Hu 			- CONFIG_ENV_SECT_SIZE)
1294f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SIZE		0x2000
1304f1d1b7dSMingkai Hu 	#define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
1314f1d1b7dSMingkai Hu #endif
1324f1d1b7dSMingkai Hu 
13344d50f0bSShaohui Xie #ifndef __ASSEMBLY__
13444d50f0bSShaohui Xie unsigned long get_board_sys_clk(unsigned long dummy);
13544d50f0bSShaohui Xie #endif
13644d50f0bSShaohui Xie #define CONFIG_SYS_CLK_FREQ	get_board_sys_clk(0)
1374f1d1b7dSMingkai Hu 
1384f1d1b7dSMingkai Hu /*
1394f1d1b7dSMingkai Hu  * These can be toggled for performance analysis, otherwise use default.
1404f1d1b7dSMingkai Hu  */
1414f1d1b7dSMingkai Hu #define CONFIG_SYS_CACHE_STASHING
142cd420e0bSMingkai Hu #define CONFIG_BACKSIDE_L2_CACHE
143cd420e0bSMingkai Hu #define CONFIG_SYS_INIT_L2CSR0		L2CSR0_L2E
1444f1d1b7dSMingkai Hu #define CONFIG_BTB			/* toggle branch predition */
1454f1d1b7dSMingkai Hu 
1464f1d1b7dSMingkai Hu #define CONFIG_ENABLE_36BIT_PHYS
1474f1d1b7dSMingkai Hu 
1484f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
1494f1d1b7dSMingkai Hu #define CONFIG_ADDR_MAP
1504f1d1b7dSMingkai Hu #define CONFIG_SYS_NUM_ADDR_MAP		64	/* number of TLB1 entries */
1514f1d1b7dSMingkai Hu #endif
1524f1d1b7dSMingkai Hu 
1534f1d1b7dSMingkai Hu #define CONFIG_POST CONFIG_SYS_POST_MEMORY	/* test POST memory test */
1544f1d1b7dSMingkai Hu #define CONFIG_SYS_MEMTEST_START	0x00200000	/* memtest works on */
1554f1d1b7dSMingkai Hu #define CONFIG_SYS_MEMTEST_END		0x00400000
1564f1d1b7dSMingkai Hu #define CONFIG_SYS_ALT_MEMTEST
1574f1d1b7dSMingkai Hu #define CONFIG_PANIC_HANG	/* do not reset board on panic */
1584f1d1b7dSMingkai Hu 
1594f1d1b7dSMingkai Hu /*
1604f1d1b7dSMingkai Hu  *  Config the L3 Cache as L3 SRAM
1614f1d1b7dSMingkai Hu  */
1624f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_L3_ADDR		CONFIG_RAMBOOT_TEXT_BASE
1634f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
1644f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_L3_ADDR_PHYS	(0xf00000000ull | \
1654f1d1b7dSMingkai Hu 		CONFIG_RAMBOOT_TEXT_BASE)
1664f1d1b7dSMingkai Hu #else
1674f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_L3_ADDR_PHYS	CONFIG_SYS_INIT_L3_ADDR
1684f1d1b7dSMingkai Hu #endif
1694f1d1b7dSMingkai Hu #define CONFIG_SYS_L3_SIZE		(1024 << 10)
1704f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_L3_END (CONFIG_SYS_INIT_L3_ADDR + CONFIG_SYS_L3_SIZE)
1714f1d1b7dSMingkai Hu 
1724f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
1734f1d1b7dSMingkai Hu #define CONFIG_SYS_DCSRBAR		0xf0000000
1744f1d1b7dSMingkai Hu #define CONFIG_SYS_DCSRBAR_PHYS		0xf00000000ull
1754f1d1b7dSMingkai Hu #endif
1764f1d1b7dSMingkai Hu 
1774f1d1b7dSMingkai Hu /* EEPROM */
1784f1d1b7dSMingkai Hu #define CONFIG_ID_EEPROM
1794f1d1b7dSMingkai Hu #define CONFIG_SYS_I2C_EEPROM_NXID
1804f1d1b7dSMingkai Hu #define CONFIG_SYS_EEPROM_BUS_NUM	0
1814f1d1b7dSMingkai Hu #define CONFIG_SYS_I2C_EEPROM_ADDR	0x50
1824f1d1b7dSMingkai Hu #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	1
1834f1d1b7dSMingkai Hu 
1844f1d1b7dSMingkai Hu /*
1854f1d1b7dSMingkai Hu  * DDR Setup
1864f1d1b7dSMingkai Hu  */
1874f1d1b7dSMingkai Hu #define CONFIG_VERY_BIG_RAM
1884f1d1b7dSMingkai Hu #define CONFIG_SYS_DDR_SDRAM_BASE	0x00000000
1894f1d1b7dSMingkai Hu #define CONFIG_SYS_SDRAM_BASE		CONFIG_SYS_DDR_SDRAM_BASE
1904f1d1b7dSMingkai Hu 
1914f1d1b7dSMingkai Hu #define CONFIG_DIMM_SLOTS_PER_CTLR	1
1924f1d1b7dSMingkai Hu #define CONFIG_CHIP_SELECTS_PER_CTRL	(4 * CONFIG_DIMM_SLOTS_PER_CTLR)
1934f1d1b7dSMingkai Hu 
1944f1d1b7dSMingkai Hu #define CONFIG_DDR_SPD
1954f1d1b7dSMingkai Hu #define CONFIG_FSL_DDR3
1964f1d1b7dSMingkai Hu 
1974f1d1b7dSMingkai Hu #define CONFIG_SYS_SPD_BUS_NUM	0
1984f1d1b7dSMingkai Hu #define SPD_EEPROM_ADDRESS	0x52
1994f1d1b7dSMingkai Hu #define CONFIG_SYS_SDRAM_SIZE	4096	/* for fixed parameter use */
2004f1d1b7dSMingkai Hu 
2014f1d1b7dSMingkai Hu /*
2024f1d1b7dSMingkai Hu  * Local Bus Definitions
2034f1d1b7dSMingkai Hu  */
2044f1d1b7dSMingkai Hu 
2054f1d1b7dSMingkai Hu /* Set the local bus clock 1/8 of platform clock */
2064f1d1b7dSMingkai Hu #define CONFIG_SYS_LBC_LCRR		LCRR_CLKDIV_8
2074f1d1b7dSMingkai Hu 
208ca1b0b89SYork Sun /*
209ca1b0b89SYork Sun  * This board doesn't have a promjet connector.
210ca1b0b89SYork Sun  * However, it uses commone corenet board LAW and TLB.
211ca1b0b89SYork Sun  * It is necessary to use the same start address with proper offset.
212ca1b0b89SYork Sun  */
213ca1b0b89SYork Sun #define CONFIG_SYS_FLASH_BASE		0xe0000000
2144f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
215ca1b0b89SYork Sun #define CONFIG_SYS_FLASH_BASE_PHYS	0xfe0000000ull
2164f1d1b7dSMingkai Hu #else
2174f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_BASE_PHYS	CONFIG_SYS_FLASH_BASE
2184f1d1b7dSMingkai Hu #endif
2194f1d1b7dSMingkai Hu 
220c9b2feafSShaohui Xie #define CONFIG_SYS_FLASH_BR_PRELIM \
221ca1b0b89SYork Sun 		(BR_PHYS_ADDR((CONFIG_SYS_FLASH_BASE_PHYS + 0x8000000)) | \
222ca1b0b89SYork Sun 		BR_PS_16 | BR_V)
223c9b2feafSShaohui Xie #define CONFIG_SYS_FLASH_OR_PRELIM \
224c9b2feafSShaohui Xie 		((0xf8000ff7 & ~OR_GPCM_SCY & ~OR_GPCM_EHTR) \
2254f1d1b7dSMingkai Hu 		 | OR_GPCM_SCY_8 | OR_GPCM_EHTR_CLEAR)
2264f1d1b7dSMingkai Hu 
2274f1d1b7dSMingkai Hu #define CONFIG_FSL_CPLD
2284f1d1b7dSMingkai Hu #define CPLD_BASE		0xffdf0000	/* CPLD registers */
2294f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
2304f1d1b7dSMingkai Hu #define CPLD_BASE_PHYS		0xfffdf0000ull
2314f1d1b7dSMingkai Hu #else
2324f1d1b7dSMingkai Hu #define CPLD_BASE_PHYS		CPLD_BASE
2334f1d1b7dSMingkai Hu #endif
2344f1d1b7dSMingkai Hu 
2354f1d1b7dSMingkai Hu #define CONFIG_SYS_BR3_PRELIM	(BR_PHYS_ADDR(CPLD_BASE_PHYS) | BR_PS_8 | BR_V)
2364f1d1b7dSMingkai Hu #define CONFIG_SYS_OR3_PRELIM	0xffffeff7	/* 32KB but only 4k mapped */
2374f1d1b7dSMingkai Hu 
2384f1d1b7dSMingkai Hu #define PIXIS_LBMAP_SWITCH	7
2394f1d1b7dSMingkai Hu #define PIXIS_LBMAP_MASK	0xf0
2404f1d1b7dSMingkai Hu #define PIXIS_LBMAP_SHIFT	4
2414f1d1b7dSMingkai Hu #define PIXIS_LBMAP_ALTBANK	0x40
2424f1d1b7dSMingkai Hu 
2434f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_QUIET_TEST
2444f1d1b7dSMingkai Hu #define CONFIG_FLASH_SHOW_PROGRESS	45 /* count down from 45/5: 9..1 */
2454f1d1b7dSMingkai Hu 
2464f1d1b7dSMingkai Hu #define CONFIG_SYS_MAX_FLASH_BANKS	1		/* number of banks */
2474f1d1b7dSMingkai Hu #define CONFIG_SYS_MAX_FLASH_SECT	1024		/* sectors per device */
2484f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_ERASE_TOUT	60000		/* Erase Timeout (ms) */
2494f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_WRITE_TOUT	500		/* Write Timeout (ms) */
2504f1d1b7dSMingkai Hu 
2514f1d1b7dSMingkai Hu #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_TEXT_BASE
2524f1d1b7dSMingkai Hu 
2534f1d1b7dSMingkai Hu #if defined(CONFIG_RAMBOOT_PBL)
2544f1d1b7dSMingkai Hu #define CONFIG_SYS_RAMBOOT
2554f1d1b7dSMingkai Hu #endif
2564f1d1b7dSMingkai Hu 
257c9b2feafSShaohui Xie #define CONFIG_NAND_FSL_ELBC
258c9b2feafSShaohui Xie /* Nand Flash */
259c9b2feafSShaohui Xie #ifdef CONFIG_NAND_FSL_ELBC
260c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BASE		0xffa00000
261c9b2feafSShaohui Xie #ifdef CONFIG_PHYS_64BIT
262c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BASE_PHYS	0xfffa00000ull
263c9b2feafSShaohui Xie #else
264c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BASE_PHYS	CONFIG_SYS_NAND_BASE
265c9b2feafSShaohui Xie #endif
266c9b2feafSShaohui Xie 
267c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BASE_LIST     {CONFIG_SYS_NAND_BASE}
268c9b2feafSShaohui Xie #define CONFIG_SYS_MAX_NAND_DEVICE	1
269c9b2feafSShaohui Xie #define CONFIG_MTD_NAND_VERIFY_WRITE
270c9b2feafSShaohui Xie #define CONFIG_CMD_NAND
271c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BLOCK_SIZE    (128 * 1024)
272c9b2feafSShaohui Xie 
273c9b2feafSShaohui Xie /* NAND flash config */
274c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_BR_PRELIM  (BR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \
275c9b2feafSShaohui Xie 			       | (2<<BR_DECC_SHIFT)    /* Use HW ECC */ \
276c9b2feafSShaohui Xie 			       | BR_PS_8	       /* Port Size = 8 bit */ \
277c9b2feafSShaohui Xie 			       | BR_MS_FCM	       /* MSEL = FCM */ \
278c9b2feafSShaohui Xie 			       | BR_V)		       /* valid */
279c9b2feafSShaohui Xie #define CONFIG_SYS_NAND_OR_PRELIM  (0xFFFC0000	      /* length 256K */ \
280c9b2feafSShaohui Xie 			       | OR_FCM_PGS	       /* Large Page*/ \
281c9b2feafSShaohui Xie 			       | OR_FCM_CSCT \
282c9b2feafSShaohui Xie 			       | OR_FCM_CST \
283c9b2feafSShaohui Xie 			       | OR_FCM_CHT \
284c9b2feafSShaohui Xie 			       | OR_FCM_SCY_1 \
285c9b2feafSShaohui Xie 			       | OR_FCM_TRLX \
286c9b2feafSShaohui Xie 			       | OR_FCM_EHTR)
287c9b2feafSShaohui Xie 
288c9b2feafSShaohui Xie #ifdef CONFIG_NAND
289c9b2feafSShaohui Xie #define CONFIG_SYS_BR0_PRELIM  CONFIG_SYS_NAND_BR_PRELIM /* NAND Base Address */
290c9b2feafSShaohui Xie #define CONFIG_SYS_OR0_PRELIM  CONFIG_SYS_NAND_OR_PRELIM /* NAND Options */
291c9b2feafSShaohui Xie #define CONFIG_SYS_BR1_PRELIM  CONFIG_SYS_FLASH_BR_PRELIM /* NOR Base Address */
292c9b2feafSShaohui Xie #define CONFIG_SYS_OR1_PRELIM  CONFIG_SYS_FLASH_OR_PRELIM /* NOR Options */
293c9b2feafSShaohui Xie #else
294c9b2feafSShaohui Xie #define CONFIG_SYS_BR0_PRELIM  CONFIG_SYS_FLASH_BR_PRELIM /* NOR Base Address */
295c9b2feafSShaohui Xie #define CONFIG_SYS_OR0_PRELIM  CONFIG_SYS_FLASH_OR_PRELIM /* NOR Options */
296c9b2feafSShaohui Xie #define CONFIG_SYS_BR1_PRELIM  CONFIG_SYS_NAND_BR_PRELIM /* NAND Base Address */
297c9b2feafSShaohui Xie #define CONFIG_SYS_OR1_PRELIM  CONFIG_SYS_NAND_OR_PRELIM /* NAND Options */
298c9b2feafSShaohui Xie #endif
299c9b2feafSShaohui Xie #else
300c9b2feafSShaohui Xie #define CONFIG_SYS_BR0_PRELIM  CONFIG_SYS_FLASH_BR_PRELIM /* NOR Base Address */
301c9b2feafSShaohui Xie #define CONFIG_SYS_OR0_PRELIM  CONFIG_SYS_FLASH_OR_PRELIM /* NOR Options */
302c9b2feafSShaohui Xie #endif /* CONFIG_NAND_FSL_ELBC */
303c9b2feafSShaohui Xie 
3044f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_EMPTY_INFO
3054f1d1b7dSMingkai Hu #define CONFIG_SYS_FLASH_AMD_CHECK_DQ7
306ca1b0b89SYork Sun #define CONFIG_SYS_FLASH_BANKS_LIST	{CONFIG_SYS_FLASH_BASE_PHYS + 0x8000000}
3074f1d1b7dSMingkai Hu 
3084f1d1b7dSMingkai Hu #define CONFIG_BOARD_EARLY_INIT_F
3094f1d1b7dSMingkai Hu #define CONFIG_BOARD_EARLY_INIT_R	/* call board_early_init_r function */
3104f1d1b7dSMingkai Hu #define CONFIG_MISC_INIT_R
3114f1d1b7dSMingkai Hu 
3124f1d1b7dSMingkai Hu #define CONFIG_HWCONFIG
3134f1d1b7dSMingkai Hu 
3144f1d1b7dSMingkai Hu /* define to use L1 as initial stack */
3154f1d1b7dSMingkai Hu #define CONFIG_L1_INIT_RAM
3164f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_LOCK
3174f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR	0xffd00000	/* Initial L1 address */
3184f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
3194f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH 0xf
3204f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW CONFIG_SYS_INIT_RAM_ADDR
3214f1d1b7dSMingkai Hu /* The assembler doesn't like typecast */
3224f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS \
3234f1d1b7dSMingkai Hu 	((CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH * 1ull << 32) | \
3244f1d1b7dSMingkai Hu 	  CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW)
3254f1d1b7dSMingkai Hu #else
3264f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS	CONFIG_SYS_INIT_RAM_ADDR
3274f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH 0
3284f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW CONFIG_SYS_INIT_RAM_ADDR_PHYS
3294f1d1b7dSMingkai Hu #endif
3304f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_RAM_SIZE	0x00004000
3314f1d1b7dSMingkai Hu 
3324f1d1b7dSMingkai Hu #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - \
3334f1d1b7dSMingkai Hu 					GENERATED_GBL_DATA_SIZE)
3344f1d1b7dSMingkai Hu #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
3354f1d1b7dSMingkai Hu 
3364f1d1b7dSMingkai Hu #define CONFIG_SYS_MONITOR_LEN		(512 * 1024)
3374f1d1b7dSMingkai Hu #define CONFIG_SYS_MALLOC_LEN		(1024 * 1024)
3384f1d1b7dSMingkai Hu 
3394f1d1b7dSMingkai Hu /* Serial Port - controlled on board with jumper J8
3404f1d1b7dSMingkai Hu  * open - index 2
3414f1d1b7dSMingkai Hu  * shorted - index 1
3424f1d1b7dSMingkai Hu  */
3434f1d1b7dSMingkai Hu #define CONFIG_CONS_INDEX	1
3444f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550
3454f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_SERIAL
3464f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_REG_SIZE	1
3474f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_CLK		(get_bus_freq(0)/2)
3484f1d1b7dSMingkai Hu 
3494f1d1b7dSMingkai Hu #define CONFIG_SYS_BAUDRATE_TABLE	\
3504f1d1b7dSMingkai Hu 	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200}
3514f1d1b7dSMingkai Hu 
3524f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_COM1	(CONFIG_SYS_CCSRBAR+0x11C500)
3534f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_COM2	(CONFIG_SYS_CCSRBAR+0x11C600)
3544f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_COM3	(CONFIG_SYS_CCSRBAR+0x11D500)
3554f1d1b7dSMingkai Hu #define CONFIG_SYS_NS16550_COM4	(CONFIG_SYS_CCSRBAR+0x11D600)
3564f1d1b7dSMingkai Hu 
3574f1d1b7dSMingkai Hu /* Use the HUSH parser */
3584f1d1b7dSMingkai Hu #define CONFIG_SYS_HUSH_PARSER
3594f1d1b7dSMingkai Hu 
3604f1d1b7dSMingkai Hu /* pass open firmware flat tree */
3614f1d1b7dSMingkai Hu #define CONFIG_OF_LIBFDT
3624f1d1b7dSMingkai Hu #define CONFIG_OF_BOARD_SETUP
3634f1d1b7dSMingkai Hu #define CONFIG_OF_STDOUT_VIA_ALIAS
3644f1d1b7dSMingkai Hu 
3654f1d1b7dSMingkai Hu /* new uImage format support */
3664f1d1b7dSMingkai Hu #define CONFIG_FIT
3674f1d1b7dSMingkai Hu #define CONFIG_FIT_VERBOSE	/* enable fit_format_{error,warning}() */
3684f1d1b7dSMingkai Hu 
3694f1d1b7dSMingkai Hu /* I2C */
3704f1d1b7dSMingkai Hu #define CONFIG_FSL_I2C		/* Use FSL common I2C driver */
3714f1d1b7dSMingkai Hu #define CONFIG_HARD_I2C		/* I2C with hardware support */
3724f1d1b7dSMingkai Hu #define CONFIG_I2C_MULTI_BUS
3734f1d1b7dSMingkai Hu #define CONFIG_I2C_CMD_TREE
3744f1d1b7dSMingkai Hu #define CONFIG_SYS_I2C_SPEED		400000
3754f1d1b7dSMingkai Hu #define CONFIG_SYS_I2C_SLAVE		0x7F
3764f1d1b7dSMingkai Hu #define CONFIG_SYS_I2C_OFFSET		0x118000
3774f1d1b7dSMingkai Hu #define CONFIG_SYS_I2C2_OFFSET		0x118100
3784f1d1b7dSMingkai Hu 
3794f1d1b7dSMingkai Hu /*
3804f1d1b7dSMingkai Hu  * RapidIO
3814f1d1b7dSMingkai Hu  */
3824f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO1_MEM_VIRT	0xa0000000
3834f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
3844f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO1_MEM_PHYS	0xc20000000ull
3854f1d1b7dSMingkai Hu #else
3864f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO1_MEM_PHYS	0xa0000000
3874f1d1b7dSMingkai Hu #endif
3884f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO1_MEM_SIZE	0x10000000	/* 256M */
3894f1d1b7dSMingkai Hu 
3904f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO2_MEM_VIRT	0xb0000000
3914f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
3924f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO2_MEM_PHYS	0xc30000000ull
3934f1d1b7dSMingkai Hu #else
3944f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO2_MEM_PHYS	0xb0000000
3954f1d1b7dSMingkai Hu #endif
3964f1d1b7dSMingkai Hu #define CONFIG_SYS_SRIO2_MEM_SIZE	0x10000000	/* 256M */
3974f1d1b7dSMingkai Hu 
3984f1d1b7dSMingkai Hu /*
399ff65f126SLiu Gang  * for slave u-boot IMAGE instored in master memory space,
400ff65f126SLiu Gang  * PHYS must be aligned based on the SIZE
401ff65f126SLiu Gang  */
402b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_PHYS 0xfef080000ull
403b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS1 0xfff80000ull
404b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_SIZE 0x80000	/* 512K */
405b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS2 0x3fff80000ull
406ff65f126SLiu Gang /*
407ff65f126SLiu Gang  * for slave UCODE and ENV instored in master memory space,
408ff65f126SLiu Gang  * PHYS must be aligned based on the SIZE
409ff65f126SLiu Gang  */
410b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_PHYS 0xfef040000ull
411b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_BUS 0x3ffe00000ull
412b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_SIZE 0x40000	/* 256K */
413ff65f126SLiu Gang 
414ff65f126SLiu Gang /* slave core release by master*/
415b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_BRR_OFFSET 0xe00e4
416b5f7c873SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_RELEASE_MASK 0x00000001 /* release core 0 */
417ff65f126SLiu Gang 
418ff65f126SLiu Gang /*
419461632bdSLiu Gang  * SRIO_PCIE_BOOT - SLAVE
420ff65f126SLiu Gang  */
421461632bdSLiu Gang #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE
422461632bdSLiu Gang #define CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR 0xFFE00000
423461632bdSLiu Gang #define CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR_PHYS \
424461632bdSLiu Gang 		(0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR)
425ff65f126SLiu Gang #endif
426ff65f126SLiu Gang 
427ff65f126SLiu Gang /*
4284f1d1b7dSMingkai Hu  * eSPI - Enhanced SPI
4294f1d1b7dSMingkai Hu  */
4304f1d1b7dSMingkai Hu #define CONFIG_FSL_ESPI
4314f1d1b7dSMingkai Hu #define CONFIG_SPI_FLASH
4324f1d1b7dSMingkai Hu #define CONFIG_SPI_FLASH_SPANSION
4334f1d1b7dSMingkai Hu #define CONFIG_CMD_SF
4344f1d1b7dSMingkai Hu #define CONFIG_SF_DEFAULT_SPEED         10000000
4354f1d1b7dSMingkai Hu #define CONFIG_SF_DEFAULT_MODE          0
4364f1d1b7dSMingkai Hu 
4374f1d1b7dSMingkai Hu /*
4384f1d1b7dSMingkai Hu  * General PCI
4394f1d1b7dSMingkai Hu  * Memory space is mapped 1-1, but I/O space must start from 0.
4404f1d1b7dSMingkai Hu  */
4414f1d1b7dSMingkai Hu 
4424f1d1b7dSMingkai Hu /* controller 1, direct to uli, tgtid 3, Base address 20000 */
4434f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_VIRT	0x80000000
4444f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4454f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_BUS	0xe0000000
4464f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_PHYS	0xc00000000ull
4474f1d1b7dSMingkai Hu #else
4484f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_BUS	0x80000000
4494f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_PHYS	0x80000000
4504f1d1b7dSMingkai Hu #endif
4514f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_SIZE	0x20000000	/* 512M */
4524f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_VIRT	0xf8000000
4534f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_BUS		0x00000000
4544f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4554f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_PHYS	0xff8000000ull
4564f1d1b7dSMingkai Hu #else
4574f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_PHYS	0xf8000000
4584f1d1b7dSMingkai Hu #endif
4594f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_SIZE	0x00010000	/* 64k */
4604f1d1b7dSMingkai Hu 
4614f1d1b7dSMingkai Hu /* controller 2, Slot 2, tgtid 2, Base address 201000 */
4624f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_VIRT	0xa0000000
4634f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4644f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_BUS	0xe0000000
4654f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_PHYS	0xc20000000ull
4664f1d1b7dSMingkai Hu #else
4674f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_BUS	0xa0000000
4684f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_PHYS	0xa0000000
4694f1d1b7dSMingkai Hu #endif
4704f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_MEM_SIZE	0x20000000	/* 512M */
4714f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_IO_VIRT	0xf8010000
4724f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_IO_BUS		0x00000000
4734f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4744f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_IO_PHYS	0xff8010000ull
4754f1d1b7dSMingkai Hu #else
4764f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_IO_PHYS	0xf8010000
4774f1d1b7dSMingkai Hu #endif
4784f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE2_IO_SIZE	0x00010000	/* 64k */
4794f1d1b7dSMingkai Hu 
4804f1d1b7dSMingkai Hu /* controller 3, Slot 1, tgtid 1, Base address 202000 */
4814f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_VIRT	0xc0000000
4824f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4834f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_BUS	0xe0000000
4844f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_PHYS	0xc40000000ull
4854f1d1b7dSMingkai Hu #else
4864f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_BUS	0xc0000000
4874f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_PHYS	0xc0000000
4884f1d1b7dSMingkai Hu #endif
4894f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_MEM_SIZE	0x20000000	/* 512M */
4904f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_IO_VIRT	0xf8020000
4914f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_IO_BUS		0x00000000
4924f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
4934f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_IO_PHYS	0xff8020000ull
4944f1d1b7dSMingkai Hu #else
4954f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_IO_PHYS	0xf8020000
4964f1d1b7dSMingkai Hu #endif
4974f1d1b7dSMingkai Hu #define CONFIG_SYS_PCIE3_IO_SIZE	0x00010000	/* 64k */
4984f1d1b7dSMingkai Hu 
4994f1d1b7dSMingkai Hu /* Qman/Bman */
5004f1d1b7dSMingkai Hu #define CONFIG_SYS_DPAA_QBMAN		/* Support Q/Bman */
5014f1d1b7dSMingkai Hu #define CONFIG_SYS_BMAN_NUM_PORTALS	10
5024f1d1b7dSMingkai Hu #define CONFIG_SYS_BMAN_MEM_BASE	0xf4000000
5034f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
5044f1d1b7dSMingkai Hu #define CONFIG_SYS_BMAN_MEM_PHYS	0xff4000000ull
5054f1d1b7dSMingkai Hu #else
5064f1d1b7dSMingkai Hu #define CONFIG_SYS_BMAN_MEM_PHYS	CONFIG_SYS_BMAN_MEM_BASE
5074f1d1b7dSMingkai Hu #endif
5084f1d1b7dSMingkai Hu #define CONFIG_SYS_BMAN_MEM_SIZE	0x00200000
5094f1d1b7dSMingkai Hu #define CONFIG_SYS_QMAN_NUM_PORTALS	10
5104f1d1b7dSMingkai Hu #define CONFIG_SYS_QMAN_MEM_BASE	0xf4200000
5114f1d1b7dSMingkai Hu #ifdef CONFIG_PHYS_64BIT
5124f1d1b7dSMingkai Hu #define CONFIG_SYS_QMAN_MEM_PHYS	0xff4200000ull
5134f1d1b7dSMingkai Hu #else
5144f1d1b7dSMingkai Hu #define CONFIG_SYS_QMAN_MEM_PHYS	CONFIG_SYS_QMAN_MEM_BASE
5154f1d1b7dSMingkai Hu #endif
5164f1d1b7dSMingkai Hu #define CONFIG_SYS_QMAN_MEM_SIZE	0x00200000
5174f1d1b7dSMingkai Hu 
5184f1d1b7dSMingkai Hu #define CONFIG_SYS_DPAA_FMAN
5194f1d1b7dSMingkai Hu #define CONFIG_SYS_DPAA_PME
5204f1d1b7dSMingkai Hu /* Default address of microcode for the Linux Fman driver */
5214f1d1b7dSMingkai Hu #if defined(CONFIG_SPIFLASH)
5224f1d1b7dSMingkai Hu /*
5234f1d1b7dSMingkai Hu  * env is stored at 0x100000, sector size is 0x10000, ucode is stored after
5244f1d1b7dSMingkai Hu  * env, so we got 0x110000.
5254f1d1b7dSMingkai Hu  */
526f2717b47STimur Tabi #define CONFIG_SYS_QE_FW_IN_SPIFLASH
527f2717b47STimur Tabi #define CONFIG_SYS_QE_FMAN_FW_ADDR	0x110000
5284f1d1b7dSMingkai Hu #elif defined(CONFIG_SDCARD)
5294f1d1b7dSMingkai Hu /*
5304f1d1b7dSMingkai Hu  * PBL SD boot image should stored at 0x1000(8 blocks), the size of the image is
5314f1d1b7dSMingkai Hu  * about 545KB (1089 blocks), Env is stored after the image, and the env size is
5324f1d1b7dSMingkai Hu  * 0x2000 (16 blocks), 8 + 1089 + 16 = 1113, enlarge it to 1130.
5334f1d1b7dSMingkai Hu  */
534f2717b47STimur Tabi #define CONFIG_SYS_QE_FMAN_FW_IN_MMC
535f2717b47STimur Tabi #define CONFIG_SYS_QE_FMAN_FW_ADDR	(512 * 1130)
5364f1d1b7dSMingkai Hu #elif defined(CONFIG_NAND)
537f2717b47STimur Tabi #define CONFIG_SYS_QE_FMAN_FW_IN_NAND
538f2717b47STimur Tabi #define CONFIG_SYS_QE_FMAN_FW_ADDR	(6 * CONFIG_SYS_NAND_BLOCK_SIZE)
539461632bdSLiu Gang #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE)
540ff65f126SLiu Gang /*
541ff65f126SLiu Gang  * Slave has no ucode locally, it can fetch this from remote. When implementing
542ff65f126SLiu Gang  * in two corenet boards, slave's ucode could be stored in master's memory
543ff65f126SLiu Gang  * space, the address can be mapped from slave TLB->slave LAW->
544461632bdSLiu Gang  * slave SRIO or PCIE outbound window->master inbound window->
545461632bdSLiu Gang  * master LAW->the ucode address in master's memory space.
546ff65f126SLiu Gang  */
547ff65f126SLiu Gang #define CONFIG_SYS_QE_FMAN_FW_IN_REMOTE
548ff65f126SLiu Gang #define CONFIG_SYS_QE_FMAN_FW_ADDR	0xFFE00000
5494f1d1b7dSMingkai Hu #else
550f2717b47STimur Tabi #define CONFIG_SYS_QE_FMAN_FW_IN_NOR
551021382caSYork Sun #define CONFIG_SYS_QE_FMAN_FW_ADDR	0xEFF40000
5524f1d1b7dSMingkai Hu #endif
553f2717b47STimur Tabi #define CONFIG_SYS_QE_FMAN_FW_LENGTH	0x10000
554f2717b47STimur Tabi #define CONFIG_SYS_FDT_PAD		(0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH)
5554f1d1b7dSMingkai Hu 
5564f1d1b7dSMingkai Hu #ifdef CONFIG_SYS_DPAA_FMAN
5574f1d1b7dSMingkai Hu #define CONFIG_FMAN_ENET
5580787ecc0SMingkai Hu #define CONFIG_PHYLIB_10G
5590787ecc0SMingkai Hu #define CONFIG_PHY_VITESSE
5600787ecc0SMingkai Hu #define CONFIG_PHY_TERANETICS
5614f1d1b7dSMingkai Hu #endif
5624f1d1b7dSMingkai Hu 
5634f1d1b7dSMingkai Hu #ifdef CONFIG_PCI
564842033e6SGabor Juhos #define CONFIG_PCI_INDIRECT_BRIDGE
5654f1d1b7dSMingkai Hu #define CONFIG_PCI_PNP			/* do pci plug-and-play */
5664f1d1b7dSMingkai Hu #define CONFIG_E1000
5674f1d1b7dSMingkai Hu 
5684f1d1b7dSMingkai Hu #define CONFIG_PCI_SCAN_SHOW		/* show pci devices on startup */
5694f1d1b7dSMingkai Hu #define CONFIG_DOS_PARTITION
5704f1d1b7dSMingkai Hu #endif	/* CONFIG_PCI */
5714f1d1b7dSMingkai Hu 
572aa7f281cSMingkai Hu /* SATA */
5739760b274SZang Roy-R61911 #define CONFIG_FSL_SATA_V2
5749760b274SZang Roy-R61911 
5759760b274SZang Roy-R61911 #ifdef CONFIG_FSL_SATA_V2
576aa7f281cSMingkai Hu #define CONFIG_FSL_SATA
5773e0529f7STimur Tabi #define CONFIG_LIBATA
578aa7f281cSMingkai Hu 
579aa7f281cSMingkai Hu #define CONFIG_SYS_SATA_MAX_DEVICE	2
580aa7f281cSMingkai Hu #define CONFIG_SATA1
581aa7f281cSMingkai Hu #define CONFIG_SYS_SATA1		CONFIG_SYS_MPC85xx_SATA1_ADDR
582aa7f281cSMingkai Hu #define CONFIG_SYS_SATA1_FLAGS		FLAGS_DMA
583aa7f281cSMingkai Hu #define CONFIG_SATA2
584aa7f281cSMingkai Hu #define CONFIG_SYS_SATA2		CONFIG_SYS_MPC85xx_SATA2_ADDR
585aa7f281cSMingkai Hu #define CONFIG_SYS_SATA2_FLAGS		FLAGS_DMA
586aa7f281cSMingkai Hu 
587aa7f281cSMingkai Hu #define CONFIG_LBA48
588aa7f281cSMingkai Hu #define CONFIG_CMD_SATA
589aa7f281cSMingkai Hu #define CONFIG_DOS_PARTITION
590aa7f281cSMingkai Hu #define CONFIG_CMD_EXT2
591aa7f281cSMingkai Hu #endif
592aa7f281cSMingkai Hu 
5934f1d1b7dSMingkai Hu #ifdef CONFIG_FMAN_ENET
5944f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC1_PHY_ADDR	0x2
5954f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC2_PHY_ADDR	0x3
5964f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC3_PHY_ADDR	0x4
5974f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC4_PHY_ADDR	0x1
5984f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC5_PHY_ADDR	0x0
5994f1d1b7dSMingkai Hu 
6004f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC1_RISER_PHY_ADDR	0x1c
6014f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC2_RISER_PHY_ADDR	0x1d
6024f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC3_RISER_PHY_ADDR	0x1e
6034f1d1b7dSMingkai Hu #define CONFIG_SYS_FM1_DTSEC4_RISER_PHY_ADDR	0x1f
6044f1d1b7dSMingkai Hu 
6050787ecc0SMingkai Hu #define CONFIG_SYS_FM1_10GEC1_PHY_ADDR	0
6060787ecc0SMingkai Hu 
6074f1d1b7dSMingkai Hu #define CONFIG_SYS_TBIPA_VALUE	8
6084f1d1b7dSMingkai Hu #define CONFIG_MII		/* MII PHY management */
6094f1d1b7dSMingkai Hu #define CONFIG_ETHPRIME		"FM1@DTSEC1"
6104f1d1b7dSMingkai Hu #define CONFIG_PHY_GIGE		/* Include GbE speed/duplex detection */
6114f1d1b7dSMingkai Hu #endif
6124f1d1b7dSMingkai Hu 
6134f1d1b7dSMingkai Hu /*
6144f1d1b7dSMingkai Hu  * Environment
6154f1d1b7dSMingkai Hu  */
6164f1d1b7dSMingkai Hu #define CONFIG_LOADS_ECHO		/* echo on for serial download */
6174f1d1b7dSMingkai Hu #define CONFIG_SYS_LOADS_BAUD_CHANGE	/* allow baudrate change */
6184f1d1b7dSMingkai Hu 
6194f1d1b7dSMingkai Hu /*
6204f1d1b7dSMingkai Hu  * Command line configuration.
6214f1d1b7dSMingkai Hu  */
6224f1d1b7dSMingkai Hu #include <config_cmd_default.h>
6234f1d1b7dSMingkai Hu 
6244f1d1b7dSMingkai Hu #define CONFIG_CMD_DHCP
6254f1d1b7dSMingkai Hu #define CONFIG_CMD_ELF
6264f1d1b7dSMingkai Hu #define CONFIG_CMD_ERRATA
6274f1d1b7dSMingkai Hu #define CONFIG_CMD_GREPENV
6284f1d1b7dSMingkai Hu #define CONFIG_CMD_IRQ
6294f1d1b7dSMingkai Hu #define CONFIG_CMD_I2C
6304f1d1b7dSMingkai Hu #define CONFIG_CMD_MII
6314f1d1b7dSMingkai Hu #define CONFIG_CMD_PING
6324f1d1b7dSMingkai Hu #define CONFIG_CMD_SETEXPR
6334f1d1b7dSMingkai Hu 
6344f1d1b7dSMingkai Hu #ifdef CONFIG_PCI
6354f1d1b7dSMingkai Hu #define CONFIG_CMD_PCI
6364f1d1b7dSMingkai Hu #define CONFIG_CMD_NET
6374f1d1b7dSMingkai Hu #endif
6384f1d1b7dSMingkai Hu 
6394f1d1b7dSMingkai Hu /*
6404f1d1b7dSMingkai Hu * USB
6414f1d1b7dSMingkai Hu */
6423d7506faSramneek mehresh #define CONFIG_HAS_FSL_DR_USB
6433d7506faSramneek mehresh #define CONFIG_HAS_FSL_MPH_USB
6443d7506faSramneek mehresh 
6453d7506faSramneek mehresh #if defined(CONFIG_HAS_FSL_DR_USB) || defined(CONFIG_HAS_FSL_MPH_USB)
6464f1d1b7dSMingkai Hu #define CONFIG_CMD_USB
6474f1d1b7dSMingkai Hu #define CONFIG_USB_STORAGE
6484f1d1b7dSMingkai Hu #define CONFIG_USB_EHCI
6494f1d1b7dSMingkai Hu #define CONFIG_USB_EHCI_FSL
6504f1d1b7dSMingkai Hu #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
6513d7506faSramneek mehresh #endif
6523d7506faSramneek mehresh 
6534f1d1b7dSMingkai Hu #define CONFIG_CMD_EXT2
6544f1d1b7dSMingkai Hu 
6554f1d1b7dSMingkai Hu #define CONFIG_MMC
6564f1d1b7dSMingkai Hu 
6574f1d1b7dSMingkai Hu #ifdef CONFIG_MMC
6584f1d1b7dSMingkai Hu #define CONFIG_FSL_ESDHC
6594f1d1b7dSMingkai Hu #define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR
6604f1d1b7dSMingkai Hu #define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT
6614f1d1b7dSMingkai Hu #define CONFIG_CMD_MMC
6624f1d1b7dSMingkai Hu #define CONFIG_GENERIC_MMC
6634f1d1b7dSMingkai Hu #define CONFIG_CMD_EXT2
6644f1d1b7dSMingkai Hu #define CONFIG_CMD_FAT
6654f1d1b7dSMingkai Hu #define CONFIG_DOS_PARTITION
6664f1d1b7dSMingkai Hu #endif
6674f1d1b7dSMingkai Hu 
6684f1d1b7dSMingkai Hu /*
6694f1d1b7dSMingkai Hu  * Miscellaneous configurable options
6704f1d1b7dSMingkai Hu  */
6714f1d1b7dSMingkai Hu #define CONFIG_SYS_LONGHELP			/* undef to save memory	*/
6724f1d1b7dSMingkai Hu #define CONFIG_CMDLINE_EDITING			/* Command-line editing */
6734f1d1b7dSMingkai Hu #define CONFIG_AUTO_COMPLETE			/* add autocompletion support */
6744f1d1b7dSMingkai Hu #define CONFIG_SYS_LOAD_ADDR	0x2000000	/* default load address */
6754f1d1b7dSMingkai Hu #define CONFIG_SYS_PROMPT	"=> "		/* Monitor Command Prompt */
6764f1d1b7dSMingkai Hu #ifdef CONFIG_CMD_KGDB
6774f1d1b7dSMingkai Hu #define CONFIG_SYS_CBSIZE	1024		/* Console I/O Buffer Size */
6784f1d1b7dSMingkai Hu #else
6794f1d1b7dSMingkai Hu #define CONFIG_SYS_CBSIZE	256		/* Console I/O Buffer Size */
6804f1d1b7dSMingkai Hu #endif
6814f1d1b7dSMingkai Hu /* Print Buffer Size */
6824f1d1b7dSMingkai Hu #define CONFIG_SYS_PBSIZE	(CONFIG_SYS_CBSIZE + \
6834f1d1b7dSMingkai Hu 				sizeof(CONFIG_SYS_PROMPT)+16)
6844f1d1b7dSMingkai Hu #define CONFIG_SYS_MAXARGS	16		/* max number of command args */
6854f1d1b7dSMingkai Hu /* Boot Argument Buffer Size */
6864f1d1b7dSMingkai Hu #define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE
6874f1d1b7dSMingkai Hu #define CONFIG_SYS_HZ		1000		/* decrementer freq 1ms ticks */
6884f1d1b7dSMingkai Hu 
6894f1d1b7dSMingkai Hu /*
6904f1d1b7dSMingkai Hu  * For booting Linux, the board info and command line data
6914f1d1b7dSMingkai Hu  * have to be in the first 64 MB of memory, since this is
6924f1d1b7dSMingkai Hu  * the maximum mapped by the Linux kernel during initialization.
6934f1d1b7dSMingkai Hu  */
6944f1d1b7dSMingkai Hu #define CONFIG_SYS_BOOTMAPSZ	(64 << 20)	/* Initial Memory for Linux */
6954f1d1b7dSMingkai Hu #define CONFIG_SYS_BOOTM_LEN	(64 << 20)	/* Increase max gunzip size */
6964f1d1b7dSMingkai Hu 
6974f1d1b7dSMingkai Hu #ifdef CONFIG_CMD_KGDB
6984f1d1b7dSMingkai Hu #define CONFIG_KGDB_BAUDRATE	230400	/* speed to run kgdb serial port */
6994f1d1b7dSMingkai Hu #define CONFIG_KGDB_SER_INDEX	2	/* which serial port to use */
7004f1d1b7dSMingkai Hu #endif
7014f1d1b7dSMingkai Hu 
7024f1d1b7dSMingkai Hu /*
7034f1d1b7dSMingkai Hu  * Environment Configuration
7044f1d1b7dSMingkai Hu  */
7058b3637c6SJoe Hershberger #define CONFIG_ROOTPATH		"/opt/nfsroot"
706b3f44c21SJoe Hershberger #define CONFIG_BOOTFILE		"uImage"
7074f1d1b7dSMingkai Hu #define CONFIG_UBOOTPATH	u-boot.bin
7084f1d1b7dSMingkai Hu 
7094f1d1b7dSMingkai Hu /* default location for tftp and bootm */
7104f1d1b7dSMingkai Hu #define CONFIG_LOADADDR		1000000
7114f1d1b7dSMingkai Hu 
7124f1d1b7dSMingkai Hu #define CONFIG_BOOTDELAY	10	/* -1 disables auto-boot */
7134f1d1b7dSMingkai Hu 
7144f1d1b7dSMingkai Hu #define CONFIG_BAUDRATE	115200
7154f1d1b7dSMingkai Hu 
7164f1d1b7dSMingkai Hu #define __USB_PHY_TYPE	utmi
7174f1d1b7dSMingkai Hu 
7184f1d1b7dSMingkai Hu #define	CONFIG_EXTRA_ENV_SETTINGS				\
7194f1d1b7dSMingkai Hu 	"hwconfig=fsl_ddr:ctlr_intlv=cacheline,"		\
7204f1d1b7dSMingkai Hu 	"bank_intlv=cs0_cs1\0"					\
7214f1d1b7dSMingkai Hu 	"netdev=eth0\0"						\
7225368c55dSMarek Vasut 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"			\
7235368c55dSMarek Vasut 	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"		\
7244f1d1b7dSMingkai Hu 	"tftpflash=tftpboot $loadaddr $uboot && "		\
7254f1d1b7dSMingkai Hu 	"protect off $ubootaddr +$filesize && "			\
7264f1d1b7dSMingkai Hu 	"erase $ubootaddr +$filesize && "			\
7274f1d1b7dSMingkai Hu 	"cp.b $loadaddr $ubootaddr $filesize && "		\
7284f1d1b7dSMingkai Hu 	"protect on $ubootaddr +$filesize && "			\
7294f1d1b7dSMingkai Hu 	"cmp.b $loadaddr $ubootaddr $filesize\0"		\
7304f1d1b7dSMingkai Hu 	"consoledev=ttyS0\0"					\
7315368c55dSMarek Vasut 	"usb_phy_type=" __stringify(__USB_PHY_TYPE) "\0"		\
7324f1d1b7dSMingkai Hu 	"usb_dr_mode=host\0"					\
7334f1d1b7dSMingkai Hu 	"ramdiskaddr=2000000\0"					\
7344f1d1b7dSMingkai Hu 	"ramdiskfile=p2041rdb/ramdisk.uboot\0"			\
7354f1d1b7dSMingkai Hu 	"fdtaddr=c00000\0"					\
7364f1d1b7dSMingkai Hu 	"fdtfile=p2041rdb/p2041rdb.dtb\0"			\
7374f1d1b7dSMingkai Hu 	"bdev=sda3\0"						\
7384f1d1b7dSMingkai Hu 	"c=ffe\0"
7394f1d1b7dSMingkai Hu 
7404f1d1b7dSMingkai Hu #define CONFIG_HDBOOT					\
7414f1d1b7dSMingkai Hu 	"setenv bootargs root=/dev/$bdev rw "		\
7424f1d1b7dSMingkai Hu 	"console=$consoledev,$baudrate $othbootargs;"	\
7434f1d1b7dSMingkai Hu 	"tftp $loadaddr $bootfile;"			\
7444f1d1b7dSMingkai Hu 	"tftp $fdtaddr $fdtfile;"			\
7454f1d1b7dSMingkai Hu 	"bootm $loadaddr - $fdtaddr"
7464f1d1b7dSMingkai Hu 
7474f1d1b7dSMingkai Hu #define CONFIG_NFSBOOTCOMMAND			\
7484f1d1b7dSMingkai Hu 	"setenv bootargs root=/dev/nfs rw "	\
7494f1d1b7dSMingkai Hu 	"nfsroot=$serverip:$rootpath "		\
7504f1d1b7dSMingkai Hu 	"ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \
7514f1d1b7dSMingkai Hu 	"console=$consoledev,$baudrate $othbootargs;"	\
7524f1d1b7dSMingkai Hu 	"tftp $loadaddr $bootfile;"		\
7534f1d1b7dSMingkai Hu 	"tftp $fdtaddr $fdtfile;"		\
7544f1d1b7dSMingkai Hu 	"bootm $loadaddr - $fdtaddr"
7554f1d1b7dSMingkai Hu 
7564f1d1b7dSMingkai Hu #define CONFIG_RAMBOOTCOMMAND				\
7574f1d1b7dSMingkai Hu 	"setenv bootargs root=/dev/ram rw "		\
7584f1d1b7dSMingkai Hu 	"console=$consoledev,$baudrate $othbootargs;"	\
7594f1d1b7dSMingkai Hu 	"tftp $ramdiskaddr $ramdiskfile;"		\
7604f1d1b7dSMingkai Hu 	"tftp $loadaddr $bootfile;"			\
7614f1d1b7dSMingkai Hu 	"tftp $fdtaddr $fdtfile;"			\
7624f1d1b7dSMingkai Hu 	"bootm $loadaddr $ramdiskaddr $fdtaddr"
7634f1d1b7dSMingkai Hu 
7644f1d1b7dSMingkai Hu #define CONFIG_BOOTCOMMAND		CONFIG_HDBOOT
7654f1d1b7dSMingkai Hu 
7664f1d1b7dSMingkai Hu #ifdef CONFIG_SECURE_BOOT
7674f1d1b7dSMingkai Hu #include <asm/fsl_secure_boot.h>
7684f1d1b7dSMingkai Hu #endif
7694f1d1b7dSMingkai Hu 
7704f1d1b7dSMingkai Hu #endif	/* __CONFIG_H */
771