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