xref: /rk3399_rockchip-uboot/include/configs/T1040QDS.h (revision 577968e5669858e1d5bcb651ab28d60d20166252)
17d436078SPrabhakar Kushwaha /*
2c60dee03SYork Sun  * Copyright 2013-2014 Freescale Semiconductor, Inc.
37d436078SPrabhakar Kushwaha  *
47d436078SPrabhakar Kushwaha  * See file CREDITS for list of people who contributed to this
57d436078SPrabhakar Kushwaha  * project.
67d436078SPrabhakar Kushwaha  *
77d436078SPrabhakar Kushwaha  * This program is free software; you can redistribute it and/or
87d436078SPrabhakar Kushwaha  * modify it under the terms of the GNU General Public License as
97d436078SPrabhakar Kushwaha  * published by the Free Software Foundation; either version 2 of
107d436078SPrabhakar Kushwaha  * the License, or (at your option) any later version.
117d436078SPrabhakar Kushwaha  *
127d436078SPrabhakar Kushwaha  * This program is distributed in the hope that it will be useful,
137d436078SPrabhakar Kushwaha  * but WITHOUT ANY WARRANTY; without even the implied warranty of
147d436078SPrabhakar Kushwaha  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
157d436078SPrabhakar Kushwaha  * GNU General Public License for more details.
167d436078SPrabhakar Kushwaha  *
177d436078SPrabhakar Kushwaha  * You should have received a copy of the GNU General Public License
187d436078SPrabhakar Kushwaha  * along with this program; if not, write to the Free Software
197d436078SPrabhakar Kushwaha  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
207d436078SPrabhakar Kushwaha  * MA 02111-1307 USA
217d436078SPrabhakar Kushwaha  */
227d436078SPrabhakar Kushwaha 
237d436078SPrabhakar Kushwaha #ifndef __CONFIG_H
247d436078SPrabhakar Kushwaha #define __CONFIG_H
257d436078SPrabhakar Kushwaha 
267d436078SPrabhakar Kushwaha /*
277d436078SPrabhakar Kushwaha  * T1040 QDS board configuration file
287d436078SPrabhakar Kushwaha  */
297d436078SPrabhakar Kushwaha 
307d436078SPrabhakar Kushwaha #ifdef CONFIG_RAMBOOT_PBL
317d436078SPrabhakar Kushwaha #define CONFIG_RAMBOOT_TEXT_BASE	CONFIG_SYS_TEXT_BASE
327d436078SPrabhakar Kushwaha #define CONFIG_RESET_VECTOR_ADDRESS	0xfffffffc
33e4536f8eSMasahiro Yamada #define CONFIG_SYS_FSL_PBL_PBI board/freescale/t1040qds/t1040_pbi.cfg
34e4536f8eSMasahiro Yamada #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t1040qds/t1040_rcw.cfg
357d436078SPrabhakar Kushwaha #endif
367d436078SPrabhakar Kushwaha 
377d436078SPrabhakar Kushwaha /* High Level Configuration Options */
387d436078SPrabhakar Kushwaha #define CONFIG_SYS_BOOK3E_HV		/* Category E.HV supported */
397d436078SPrabhakar Kushwaha #define CONFIG_MP			/* support multiple processors */
407d436078SPrabhakar Kushwaha 
4148f6a9a2STang Yuantian /* support deep sleep */
4248f6a9a2STang Yuantian #define CONFIG_DEEP_SLEEP
4348f6a9a2STang Yuantian 
447d436078SPrabhakar Kushwaha #ifndef CONFIG_SYS_TEXT_BASE
45e222b1f3SPrabhakar Kushwaha #define CONFIG_SYS_TEXT_BASE	0xeff40000
467d436078SPrabhakar Kushwaha #endif
477d436078SPrabhakar Kushwaha 
487d436078SPrabhakar Kushwaha #ifndef CONFIG_RESET_VECTOR_ADDRESS
497d436078SPrabhakar Kushwaha #define CONFIG_RESET_VECTOR_ADDRESS	0xeffffffc
507d436078SPrabhakar Kushwaha #endif
517d436078SPrabhakar Kushwaha 
527d436078SPrabhakar Kushwaha #define CONFIG_SYS_FSL_CPC		/* Corenet Platform Cache */
5351370d56SYork Sun #define CONFIG_SYS_NUM_CPC		CONFIG_SYS_NUM_DDR_CTLRS
547d436078SPrabhakar Kushwaha #define CONFIG_PCI_INDIRECT_BRIDGE
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 */
58b38eaec5SRobert P. J. Day #define CONFIG_PCIE4			/* PCIE controller 4 */
597d436078SPrabhakar Kushwaha 
607d436078SPrabhakar Kushwaha #define CONFIG_FSL_PCI_INIT		/* Use common FSL init code */
617d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCI_64BIT		/* enable 64-bit PCI resources */
627d436078SPrabhakar Kushwaha 
637d436078SPrabhakar Kushwaha #define CONFIG_ENV_OVERWRITE
647d436078SPrabhakar Kushwaha 
65e856bdcfSMasahiro Yamada #ifndef CONFIG_MTD_NOR_FLASH
667d436078SPrabhakar Kushwaha #else
677d436078SPrabhakar Kushwaha #define CONFIG_FLASH_CFI_DRIVER
687d436078SPrabhakar Kushwaha #define CONFIG_SYS_FLASH_CFI
697d436078SPrabhakar Kushwaha #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE
707d436078SPrabhakar Kushwaha #endif
717d436078SPrabhakar Kushwaha 
72e856bdcfSMasahiro Yamada #ifdef CONFIG_MTD_NOR_FLASH
737d436078SPrabhakar Kushwaha #if defined(CONFIG_SPIFLASH)
747d436078SPrabhakar Kushwaha #define CONFIG_SYS_EXTRA_ENV_RELOC
757d436078SPrabhakar Kushwaha #define CONFIG_ENV_SPI_BUS              0
767d436078SPrabhakar Kushwaha #define CONFIG_ENV_SPI_CS               0
777d436078SPrabhakar Kushwaha #define CONFIG_ENV_SPI_MAX_HZ           10000000
787d436078SPrabhakar Kushwaha #define CONFIG_ENV_SPI_MODE             0
797d436078SPrabhakar Kushwaha #define CONFIG_ENV_SIZE                 0x2000          /* 8KB */
807d436078SPrabhakar Kushwaha #define CONFIG_ENV_OFFSET               0x100000        /* 1MB */
817d436078SPrabhakar Kushwaha #define CONFIG_ENV_SECT_SIZE            0x10000
827d436078SPrabhakar Kushwaha #elif defined(CONFIG_SDCARD)
837d436078SPrabhakar Kushwaha #define CONFIG_SYS_EXTRA_ENV_RELOC
847d436078SPrabhakar Kushwaha #define CONFIG_SYS_MMC_ENV_DEV          0
857d436078SPrabhakar Kushwaha #define CONFIG_ENV_SIZE			0x2000
86e222b1f3SPrabhakar Kushwaha #define CONFIG_ENV_OFFSET		(512 * 1658)
877d436078SPrabhakar Kushwaha #elif defined(CONFIG_NAND)
887d436078SPrabhakar Kushwaha #define CONFIG_SYS_EXTRA_ENV_RELOC
897d436078SPrabhakar Kushwaha #define CONFIG_ENV_SIZE			CONFIG_SYS_NAND_BLOCK_SIZE
90e222b1f3SPrabhakar Kushwaha #define CONFIG_ENV_OFFSET		(7 * CONFIG_SYS_NAND_BLOCK_SIZE)
917d436078SPrabhakar Kushwaha #else
927d436078SPrabhakar Kushwaha #define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)
937d436078SPrabhakar Kushwaha #define CONFIG_ENV_SIZE		0x2000
947d436078SPrabhakar Kushwaha #define CONFIG_ENV_SECT_SIZE	0x20000 /* 128K (one sector) */
957d436078SPrabhakar Kushwaha #endif
96e856bdcfSMasahiro Yamada #else /* CONFIG_MTD_NOR_FLASH */
977d436078SPrabhakar Kushwaha #define CONFIG_ENV_SIZE                0x2000
987d436078SPrabhakar Kushwaha #define CONFIG_ENV_SECT_SIZE   0x20000 /* 128K (one sector) */
997d436078SPrabhakar Kushwaha #endif
1007d436078SPrabhakar Kushwaha 
1017d436078SPrabhakar Kushwaha #ifndef __ASSEMBLY__
1027d436078SPrabhakar Kushwaha unsigned long get_board_sys_clk(void);
1037d436078SPrabhakar Kushwaha unsigned long get_board_ddr_clk(void);
1047d436078SPrabhakar Kushwaha #endif
1057d436078SPrabhakar Kushwaha 
1067d436078SPrabhakar Kushwaha #define CONFIG_SYS_CLK_FREQ	get_board_sys_clk() /* sysclk for MPC85xx */
1077d436078SPrabhakar Kushwaha #define CONFIG_DDR_CLK_FREQ	get_board_ddr_clk()
1087d436078SPrabhakar Kushwaha 
1097d436078SPrabhakar Kushwaha /*
1107d436078SPrabhakar Kushwaha  * These can be toggled for performance analysis, otherwise use default.
1117d436078SPrabhakar Kushwaha  */
1127d436078SPrabhakar Kushwaha #define CONFIG_SYS_CACHE_STASHING
1137d436078SPrabhakar Kushwaha #define CONFIG_BACKSIDE_L2_CACHE
1147d436078SPrabhakar Kushwaha #define CONFIG_SYS_INIT_L2CSR0		L2CSR0_L2E
1157d436078SPrabhakar Kushwaha #define CONFIG_BTB			/* toggle branch predition */
1167d436078SPrabhakar Kushwaha #define CONFIG_DDR_ECC
1177d436078SPrabhakar Kushwaha #ifdef CONFIG_DDR_ECC
1187d436078SPrabhakar Kushwaha #define CONFIG_ECC_INIT_VIA_DDRCONTROLLER
1197d436078SPrabhakar Kushwaha #define CONFIG_MEM_INIT_VALUE		0xdeadbeef
1207d436078SPrabhakar Kushwaha #endif
1217d436078SPrabhakar Kushwaha 
1227d436078SPrabhakar Kushwaha #define CONFIG_ENABLE_36BIT_PHYS
1237d436078SPrabhakar Kushwaha 
1247d436078SPrabhakar Kushwaha #define CONFIG_ADDR_MAP
1257d436078SPrabhakar Kushwaha #define CONFIG_SYS_NUM_ADDR_MAP		64	/* number of TLB1 entries */
1267d436078SPrabhakar Kushwaha 
1277d436078SPrabhakar Kushwaha #define CONFIG_SYS_MEMTEST_START	0x00200000	/* memtest works on */
1287d436078SPrabhakar Kushwaha #define CONFIG_SYS_MEMTEST_END		0x00400000
1297d436078SPrabhakar Kushwaha #define CONFIG_SYS_ALT_MEMTEST
1307d436078SPrabhakar Kushwaha 
1317d436078SPrabhakar Kushwaha /*
1327d436078SPrabhakar Kushwaha  *  Config the L3 Cache as L3 SRAM
1337d436078SPrabhakar Kushwaha  */
1347d436078SPrabhakar Kushwaha #define CONFIG_SYS_INIT_L3_ADDR		0xFFFC0000
1357d436078SPrabhakar Kushwaha 
1367d436078SPrabhakar Kushwaha #define CONFIG_SYS_DCSRBAR		0xf0000000
1377d436078SPrabhakar Kushwaha #define CONFIG_SYS_DCSRBAR_PHYS		0xf00000000ull
1387d436078SPrabhakar Kushwaha 
1397d436078SPrabhakar Kushwaha /* EEPROM */
1407d436078SPrabhakar Kushwaha #define CONFIG_ID_EEPROM
1417d436078SPrabhakar Kushwaha #define CONFIG_SYS_I2C_EEPROM_NXID
1427d436078SPrabhakar Kushwaha #define CONFIG_SYS_EEPROM_BUS_NUM	0
1437d436078SPrabhakar Kushwaha #define CONFIG_SYS_I2C_EEPROM_ADDR	0x57
1447d436078SPrabhakar Kushwaha #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN	1
1457d436078SPrabhakar Kushwaha #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3
1467d436078SPrabhakar Kushwaha #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5
1477d436078SPrabhakar Kushwaha 
1487d436078SPrabhakar Kushwaha /*
1497d436078SPrabhakar Kushwaha  * DDR Setup
1507d436078SPrabhakar Kushwaha  */
1517d436078SPrabhakar Kushwaha #define CONFIG_VERY_BIG_RAM
1527d436078SPrabhakar Kushwaha #define CONFIG_SYS_DDR_SDRAM_BASE	0x00000000
1537d436078SPrabhakar Kushwaha #define CONFIG_SYS_SDRAM_BASE		CONFIG_SYS_DDR_SDRAM_BASE
1547d436078SPrabhakar Kushwaha 
1557d436078SPrabhakar Kushwaha #define CONFIG_DIMM_SLOTS_PER_CTLR	1
1562eb3ac7fSPriyanka Jain #define CONFIG_CHIP_SELECTS_PER_CTRL	(2 * CONFIG_DIMM_SLOTS_PER_CTLR)
1577d436078SPrabhakar Kushwaha 
1587d436078SPrabhakar Kushwaha #define CONFIG_DDR_SPD
1591b2af9b4SYork Sun #define CONFIG_FSL_DDR_INTERACTIVE
1607d436078SPrabhakar Kushwaha 
1617d436078SPrabhakar Kushwaha #define CONFIG_SYS_SPD_BUS_NUM	0
1627d436078SPrabhakar Kushwaha #define SPD_EEPROM_ADDRESS	0x51
1637d436078SPrabhakar Kushwaha 
1647d436078SPrabhakar Kushwaha #define CONFIG_SYS_SDRAM_SIZE	4096	/* for fixed parameter use */
1657d436078SPrabhakar Kushwaha 
1667d436078SPrabhakar Kushwaha /*
1677d436078SPrabhakar Kushwaha  * IFC Definitions
1687d436078SPrabhakar Kushwaha  */
1697d436078SPrabhakar Kushwaha #define CONFIG_SYS_FLASH_BASE	0xe0000000
1707d436078SPrabhakar Kushwaha #define CONFIG_SYS_FLASH_BASE_PHYS	(0xf00000000ull | CONFIG_SYS_FLASH_BASE)
1717d436078SPrabhakar Kushwaha 
1727d436078SPrabhakar Kushwaha #define CONFIG_SYS_NOR0_CSPR_EXT	(0xf)
1737d436078SPrabhakar Kushwaha #define CONFIG_SYS_NOR0_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS \
1747d436078SPrabhakar Kushwaha 				+ 0x8000000) | \
1757d436078SPrabhakar Kushwaha 				CSPR_PORT_SIZE_16 | \
1767d436078SPrabhakar Kushwaha 				CSPR_MSEL_NOR | \
1777d436078SPrabhakar Kushwaha 				CSPR_V)
1787d436078SPrabhakar Kushwaha #define CONFIG_SYS_NOR1_CSPR_EXT	(0xf)
1797d436078SPrabhakar Kushwaha #define CONFIG_SYS_NOR1_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \
1807d436078SPrabhakar Kushwaha 				CSPR_PORT_SIZE_16 | \
1817d436078SPrabhakar Kushwaha 				CSPR_MSEL_NOR | \
1827d436078SPrabhakar Kushwaha 				CSPR_V)
1837d436078SPrabhakar Kushwaha #define CONFIG_SYS_NOR_AMASK	IFC_AMASK(128*1024*1024)
184377ffcfaSSandeep Singh 
185377ffcfaSSandeep Singh /*
186377ffcfaSSandeep Singh  * TDM Definition
187377ffcfaSSandeep Singh  */
188377ffcfaSSandeep Singh #define T1040_TDM_QUIRK_CCSR_BASE	0xfe000000
189377ffcfaSSandeep Singh 
1907d436078SPrabhakar Kushwaha /* NOR Flash Timing Params */
1917d436078SPrabhakar Kushwaha #define CONFIG_SYS_NOR_CSOR	CSOR_NAND_TRHZ_80
1927d436078SPrabhakar Kushwaha #define CONFIG_SYS_NOR_FTIM0	(FTIM0_NOR_TACSE(0x4) | \
1937d436078SPrabhakar Kushwaha 				FTIM0_NOR_TEADC(0x5) | \
1947d436078SPrabhakar Kushwaha 				FTIM0_NOR_TEAHC(0x5))
1957d436078SPrabhakar Kushwaha #define CONFIG_SYS_NOR_FTIM1	(FTIM1_NOR_TACO(0x35) | \
1967d436078SPrabhakar Kushwaha 				FTIM1_NOR_TRAD_NOR(0x1A) |\
1977d436078SPrabhakar Kushwaha 				FTIM1_NOR_TSEQRAD_NOR(0x13))
1987d436078SPrabhakar Kushwaha #define CONFIG_SYS_NOR_FTIM2	(FTIM2_NOR_TCS(0x4) | \
1997d436078SPrabhakar Kushwaha 				FTIM2_NOR_TCH(0x4) | \
2007d436078SPrabhakar Kushwaha 				FTIM2_NOR_TWPH(0x0E) | \
2017d436078SPrabhakar Kushwaha 				FTIM2_NOR_TWP(0x1c))
2027d436078SPrabhakar Kushwaha #define CONFIG_SYS_NOR_FTIM3	0x0
2037d436078SPrabhakar Kushwaha 
2047d436078SPrabhakar Kushwaha #define CONFIG_SYS_FLASH_QUIET_TEST
2057d436078SPrabhakar Kushwaha #define CONFIG_FLASH_SHOW_PROGRESS	45 /* count down from 45/5: 9..1 */
2067d436078SPrabhakar Kushwaha 
2077d436078SPrabhakar Kushwaha #define CONFIG_SYS_MAX_FLASH_BANKS	2	/* number of banks */
2087d436078SPrabhakar Kushwaha #define CONFIG_SYS_MAX_FLASH_SECT	1024	/* sectors per device */
2097d436078SPrabhakar Kushwaha #define CONFIG_SYS_FLASH_ERASE_TOUT	60000	/* Flash Erase Timeout (ms) */
2107d436078SPrabhakar Kushwaha #define CONFIG_SYS_FLASH_WRITE_TOUT	500	/* Flash Write Timeout (ms) */
2117d436078SPrabhakar Kushwaha 
2127d436078SPrabhakar Kushwaha #define CONFIG_SYS_FLASH_EMPTY_INFO
2137d436078SPrabhakar Kushwaha #define CONFIG_SYS_FLASH_BANKS_LIST	{CONFIG_SYS_FLASH_BASE_PHYS \
2147d436078SPrabhakar Kushwaha 					+ 0x8000000, CONFIG_SYS_FLASH_BASE_PHYS}
2157d436078SPrabhakar Kushwaha #define CONFIG_FSL_QIXIS	/* use common QIXIS code */
2167d436078SPrabhakar Kushwaha #define QIXIS_BASE		0xffdf0000
2177d436078SPrabhakar Kushwaha #define QIXIS_BASE_PHYS		(0xf00000000ull | QIXIS_BASE)
2187d436078SPrabhakar Kushwaha #define QIXIS_LBMAP_SWITCH		0x06
2197d436078SPrabhakar Kushwaha #define QIXIS_LBMAP_MASK		0x0f
2207d436078SPrabhakar Kushwaha #define QIXIS_LBMAP_SHIFT		0
2217d436078SPrabhakar Kushwaha #define QIXIS_LBMAP_DFLTBANK		0x00
2227d436078SPrabhakar Kushwaha #define QIXIS_LBMAP_ALTBANK		0x04
2237d436078SPrabhakar Kushwaha #define QIXIS_RST_CTL_RESET		0x31
2247d436078SPrabhakar Kushwaha #define QIXIS_RCFG_CTL_RECONFIG_IDLE	0x20
2257d436078SPrabhakar Kushwaha #define QIXIS_RCFG_CTL_RECONFIG_START	0x21
2267d436078SPrabhakar Kushwaha #define QIXIS_RCFG_CTL_WATCHDOG_ENBLE	0x08
2278c618dd6SPrabhakar Kushwaha #define	QIXIS_RST_FORCE_MEM		0x01
2287d436078SPrabhakar Kushwaha 
2297d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR3_EXT	(0xf)
2307d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR3	(CSPR_PHYS_ADDR(QIXIS_BASE_PHYS) \
2317d436078SPrabhakar Kushwaha 				| CSPR_PORT_SIZE_8 \
2327d436078SPrabhakar Kushwaha 				| CSPR_MSEL_GPCM \
2337d436078SPrabhakar Kushwaha 				| CSPR_V)
2347d436078SPrabhakar Kushwaha #define CONFIG_SYS_AMASK3	IFC_AMASK(4*1024)
2357d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSOR3	0x0
2367d436078SPrabhakar Kushwaha /* QIXIS Timing parameters for IFC CS3 */
2377d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS3_FTIM0		(FTIM0_GPCM_TACSE(0x0e) | \
2387d436078SPrabhakar Kushwaha 					FTIM0_GPCM_TEADC(0x0e) | \
2397d436078SPrabhakar Kushwaha 					FTIM0_GPCM_TEAHC(0x0e))
2407d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS3_FTIM1		(FTIM1_GPCM_TACO(0xff) | \
2417d436078SPrabhakar Kushwaha 					FTIM1_GPCM_TRAD(0x3f))
2427d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS3_FTIM2		(FTIM2_GPCM_TCS(0x0e) | \
243562de1d6SPrabhakar Kushwaha 					FTIM2_GPCM_TCH(0x8) | \
2447d436078SPrabhakar Kushwaha 					FTIM2_GPCM_TWP(0x1f))
2457d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS3_FTIM3		0x0
2467d436078SPrabhakar Kushwaha 
2477d436078SPrabhakar Kushwaha #define CONFIG_NAND_FSL_IFC
2487d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_BASE		0xff800000
2497d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_BASE_PHYS	(0xf00000000ull | CONFIG_SYS_NAND_BASE)
2507d436078SPrabhakar Kushwaha 
2517d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_CSPR_EXT	(0xf)
2527d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_CSPR	(CSPR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \
2537d436078SPrabhakar Kushwaha 				| CSPR_PORT_SIZE_8 /* Port Size = 8 bit */ \
2547d436078SPrabhakar Kushwaha 				| CSPR_MSEL_NAND	/* MSEL = NAND */ \
2557d436078SPrabhakar Kushwaha 				| CSPR_V)
2567d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_AMASK	IFC_AMASK(64*1024)
2577d436078SPrabhakar Kushwaha 
2587d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_CSOR    (CSOR_NAND_ECC_ENC_EN   /* ECC on encode */ \
2597d436078SPrabhakar Kushwaha 				| CSOR_NAND_ECC_DEC_EN  /* ECC on decode */ \
2607d436078SPrabhakar Kushwaha 				| CSOR_NAND_ECC_MODE_4  /* 4-bit ECC */ \
2617d436078SPrabhakar Kushwaha 				| CSOR_NAND_RAL_3	/* RAL = 3Byes */ \
2627d436078SPrabhakar Kushwaha 				| CSOR_NAND_PGS_2K	/* Page Size = 2K */ \
2637d436078SPrabhakar Kushwaha 				| CSOR_NAND_SPRZ_64/* Spare size = 64 */ \
2647d436078SPrabhakar Kushwaha 				| CSOR_NAND_PB(64))	/*Pages Per Block = 64*/
2657d436078SPrabhakar Kushwaha 
2667d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_ONFI_DETECTION
2677d436078SPrabhakar Kushwaha 
2687d436078SPrabhakar Kushwaha /* ONFI NAND Flash mode0 Timing Params */
2697d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_FTIM0		(FTIM0_NAND_TCCST(0x07) | \
2707d436078SPrabhakar Kushwaha 					FTIM0_NAND_TWP(0x18)   | \
2717d436078SPrabhakar Kushwaha 					FTIM0_NAND_TWCHT(0x07) | \
2727d436078SPrabhakar Kushwaha 					FTIM0_NAND_TWH(0x0a))
2737d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_FTIM1		(FTIM1_NAND_TADLE(0x32) | \
2747d436078SPrabhakar Kushwaha 					FTIM1_NAND_TWBE(0x39)  | \
2757d436078SPrabhakar Kushwaha 					FTIM1_NAND_TRR(0x0e)   | \
2767d436078SPrabhakar Kushwaha 					FTIM1_NAND_TRP(0x18))
2777d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_FTIM2		(FTIM2_NAND_TRAD(0x0f) | \
2787d436078SPrabhakar Kushwaha 					FTIM2_NAND_TREH(0x0a) | \
2797d436078SPrabhakar Kushwaha 					FTIM2_NAND_TWHRE(0x1e))
2807d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_FTIM3		0x0
2817d436078SPrabhakar Kushwaha 
2827d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_DDR_LAW		11
2837d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_BASE_LIST	{ CONFIG_SYS_NAND_BASE }
2847d436078SPrabhakar Kushwaha #define CONFIG_SYS_MAX_NAND_DEVICE	1
2857d436078SPrabhakar Kushwaha 
2867d436078SPrabhakar Kushwaha #define CONFIG_SYS_NAND_BLOCK_SIZE	(128 * 1024)
2877d436078SPrabhakar Kushwaha 
2887d436078SPrabhakar Kushwaha #if defined(CONFIG_NAND)
2897d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR0_EXT		CONFIG_SYS_NAND_CSPR_EXT
2907d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR0		CONFIG_SYS_NAND_CSPR
2917d436078SPrabhakar Kushwaha #define CONFIG_SYS_AMASK0		CONFIG_SYS_NAND_AMASK
2927d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSOR0		CONFIG_SYS_NAND_CSOR
2937d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NAND_FTIM0
2947d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NAND_FTIM1
2957d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NAND_FTIM2
2967d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NAND_FTIM3
2977d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR1_EXT		CONFIG_SYS_NOR0_CSPR_EXT
2987d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR1		CONFIG_SYS_NOR0_CSPR
2997d436078SPrabhakar Kushwaha #define CONFIG_SYS_AMASK1		CONFIG_SYS_NOR_AMASK
3007d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSOR1		CONFIG_SYS_NOR_CSOR
3017d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS1_FTIM0		CONFIG_SYS_NOR_FTIM0
3027d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS1_FTIM1		CONFIG_SYS_NOR_FTIM1
3037d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS1_FTIM2		CONFIG_SYS_NOR_FTIM2
3047d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS1_FTIM3		CONFIG_SYS_NOR_FTIM3
3057d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR2_EXT		CONFIG_SYS_NOR1_CSPR_EXT
3067d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR2		CONFIG_SYS_NOR1_CSPR
3077d436078SPrabhakar Kushwaha #define CONFIG_SYS_AMASK2		CONFIG_SYS_NOR_AMASK
3087d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSOR2		CONFIG_SYS_NOR_CSOR
3097d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS2_FTIM0		CONFIG_SYS_NOR_FTIM0
3107d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS2_FTIM1		CONFIG_SYS_NOR_FTIM1
3117d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS2_FTIM2		CONFIG_SYS_NOR_FTIM2
3127d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NOR_FTIM3
3137d436078SPrabhakar Kushwaha #else
3147d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR0_EXT		CONFIG_SYS_NOR0_CSPR_EXT
3157d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR0		CONFIG_SYS_NOR0_CSPR
3167d436078SPrabhakar Kushwaha #define CONFIG_SYS_AMASK0		CONFIG_SYS_NOR_AMASK
3177d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSOR0		CONFIG_SYS_NOR_CSOR
3187d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS0_FTIM0		CONFIG_SYS_NOR_FTIM0
3197d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS0_FTIM1		CONFIG_SYS_NOR_FTIM1
3207d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS0_FTIM2		CONFIG_SYS_NOR_FTIM2
3217d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS0_FTIM3		CONFIG_SYS_NOR_FTIM3
3227d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR1_EXT		CONFIG_SYS_NOR1_CSPR_EXT
3237d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR1		CONFIG_SYS_NOR1_CSPR
3247d436078SPrabhakar Kushwaha #define CONFIG_SYS_AMASK1		CONFIG_SYS_NOR_AMASK
3257d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSOR1		CONFIG_SYS_NOR_CSOR
3267d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS1_FTIM0		CONFIG_SYS_NOR_FTIM0
3277d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS1_FTIM1		CONFIG_SYS_NOR_FTIM1
3287d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS1_FTIM2		CONFIG_SYS_NOR_FTIM2
3297d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS1_FTIM3		CONFIG_SYS_NOR_FTIM3
3307d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR2_EXT		CONFIG_SYS_NAND_CSPR_EXT
3317d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSPR2		CONFIG_SYS_NAND_CSPR
3327d436078SPrabhakar Kushwaha #define CONFIG_SYS_AMASK2		CONFIG_SYS_NAND_AMASK
3337d436078SPrabhakar Kushwaha #define CONFIG_SYS_CSOR2		CONFIG_SYS_NAND_CSOR
3347d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS2_FTIM0		CONFIG_SYS_NAND_FTIM0
3357d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS2_FTIM1		CONFIG_SYS_NAND_FTIM1
3367d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS2_FTIM2		CONFIG_SYS_NAND_FTIM2
3377d436078SPrabhakar Kushwaha #define CONFIG_SYS_CS2_FTIM3		CONFIG_SYS_NAND_FTIM3
3387d436078SPrabhakar Kushwaha #endif
3397d436078SPrabhakar Kushwaha 
3407d436078SPrabhakar Kushwaha #define CONFIG_SYS_MONITOR_BASE		CONFIG_SYS_TEXT_BASE
3417d436078SPrabhakar Kushwaha 
3427d436078SPrabhakar Kushwaha #if defined(CONFIG_RAMBOOT_PBL)
3437d436078SPrabhakar Kushwaha #define CONFIG_SYS_RAMBOOT
3447d436078SPrabhakar Kushwaha #endif
3457d436078SPrabhakar Kushwaha 
3467d436078SPrabhakar Kushwaha #define CONFIG_BOARD_EARLY_INIT_R
3477d436078SPrabhakar Kushwaha #define CONFIG_MISC_INIT_R
3487d436078SPrabhakar Kushwaha 
3497d436078SPrabhakar Kushwaha #define CONFIG_HWCONFIG
3507d436078SPrabhakar Kushwaha 
3517d436078SPrabhakar Kushwaha /* define to use L1 as initial stack */
3527d436078SPrabhakar Kushwaha #define CONFIG_L1_INIT_RAM
3537d436078SPrabhakar Kushwaha #define CONFIG_SYS_INIT_RAM_LOCK
3547d436078SPrabhakar Kushwaha #define CONFIG_SYS_INIT_RAM_ADDR	0xfdd00000	/* Initial L1 address */
3557d436078SPrabhakar Kushwaha #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH	0xf
356b3142e2cSYork Sun #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW	0xfe03c000
3577d436078SPrabhakar Kushwaha /* The assembler doesn't like typecast */
3587d436078SPrabhakar Kushwaha #define CONFIG_SYS_INIT_RAM_ADDR_PHYS \
3597d436078SPrabhakar Kushwaha 	((CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH * 1ull << 32) | \
3607d436078SPrabhakar Kushwaha 	  CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW)
3617d436078SPrabhakar Kushwaha #define CONFIG_SYS_INIT_RAM_SIZE		0x00004000
3627d436078SPrabhakar Kushwaha 
3637d436078SPrabhakar Kushwaha #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - \
3647d436078SPrabhakar Kushwaha 					GENERATED_GBL_DATA_SIZE)
3657d436078SPrabhakar Kushwaha #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
3667d436078SPrabhakar Kushwaha 
3679307cbabSPrabhakar Kushwaha #define CONFIG_SYS_MONITOR_LEN		(768 * 1024)
368337b0c52SPriyanka Jain #define CONFIG_SYS_MALLOC_LEN		(10 * 1024 * 1024)
3697d436078SPrabhakar Kushwaha 
3707d436078SPrabhakar Kushwaha /* Serial Port - controlled on board with jumper J8
3717d436078SPrabhakar Kushwaha  * open - index 2
3727d436078SPrabhakar Kushwaha  * shorted - index 1
3737d436078SPrabhakar Kushwaha  */
3747d436078SPrabhakar Kushwaha #define CONFIG_CONS_INDEX	1
3757d436078SPrabhakar Kushwaha #define CONFIG_SYS_NS16550_SERIAL
3767d436078SPrabhakar Kushwaha #define CONFIG_SYS_NS16550_REG_SIZE	1
3777d436078SPrabhakar Kushwaha #define CONFIG_SYS_NS16550_CLK		(get_bus_freq(0)/2)
3787d436078SPrabhakar Kushwaha 
3797d436078SPrabhakar Kushwaha #define CONFIG_SYS_BAUDRATE_TABLE	\
3807d436078SPrabhakar Kushwaha 	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200}
3817d436078SPrabhakar Kushwaha 
3827d436078SPrabhakar Kushwaha #define CONFIG_SYS_NS16550_COM1	(CONFIG_SYS_CCSRBAR+0x11C500)
3837d436078SPrabhakar Kushwaha #define CONFIG_SYS_NS16550_COM2	(CONFIG_SYS_CCSRBAR+0x11C600)
3847d436078SPrabhakar Kushwaha #define CONFIG_SYS_NS16550_COM3	(CONFIG_SYS_CCSRBAR+0x11D500)
3857d436078SPrabhakar Kushwaha #define CONFIG_SYS_NS16550_COM4	(CONFIG_SYS_CCSRBAR+0x11D600)
3867d436078SPrabhakar Kushwaha 
387337b0c52SPriyanka Jain /* Video */
388337b0c52SPriyanka Jain #define CONFIG_FSL_DIU_FB
389337b0c52SPriyanka Jain #ifdef CONFIG_FSL_DIU_FB
390c53711bbSWang Dongsheng #define CONFIG_FSL_DIU_CH7301
391337b0c52SPriyanka Jain #define CONFIG_SYS_DIU_ADDR	(CONFIG_SYS_CCSRBAR + 0x180000)
392337b0c52SPriyanka Jain #define CONFIG_VIDEO_LOGO
393337b0c52SPriyanka Jain #define CONFIG_VIDEO_BMP_LOGO
394337b0c52SPriyanka Jain #define CONFIG_CFI_FLASH_USE_WEAK_ACCESSORS
395337b0c52SPriyanka Jain /*
396337b0c52SPriyanka Jain  * With CONFIG_CFI_FLASH_USE_WEAK_ACCESSORS, flash I/O is really slow, so
397337b0c52SPriyanka Jain  * disable empty flash sector detection, which is I/O-intensive.
398337b0c52SPriyanka Jain  */
399337b0c52SPriyanka Jain #undef CONFIG_SYS_FLASH_EMPTY_INFO
400337b0c52SPriyanka Jain #endif
401337b0c52SPriyanka Jain 
4027d436078SPrabhakar Kushwaha /* I2C */
4037d436078SPrabhakar Kushwaha #define CONFIG_SYS_I2C
4047d436078SPrabhakar Kushwaha #define CONFIG_SYS_I2C_FSL		/* Use FSL common I2C driver */
4052eb3ac7fSPriyanka Jain #define CONFIG_SYS_FSL_I2C_SPEED	50000	/* I2C speed in Hz */
406b0d97cd2SShengzhou Liu #define CONFIG_SYS_FSL_I2C2_SPEED	50000
407b0d97cd2SShengzhou Liu #define CONFIG_SYS_FSL_I2C3_SPEED	50000
408b0d97cd2SShengzhou Liu #define CONFIG_SYS_FSL_I2C4_SPEED	50000
4097d436078SPrabhakar Kushwaha #define CONFIG_SYS_FSL_I2C_SLAVE	0x7F
4107d436078SPrabhakar Kushwaha #define CONFIG_SYS_FSL_I2C2_SLAVE	0x7F
411b0d97cd2SShengzhou Liu #define CONFIG_SYS_FSL_I2C3_SLAVE	0x7F
412b0d97cd2SShengzhou Liu #define CONFIG_SYS_FSL_I2C4_SLAVE	0x7F
4137d436078SPrabhakar Kushwaha #define CONFIG_SYS_FSL_I2C_OFFSET	0x118000
414b0d97cd2SShengzhou Liu #define CONFIG_SYS_FSL_I2C2_OFFSET	0x118100
415b0d97cd2SShengzhou Liu #define CONFIG_SYS_FSL_I2C3_OFFSET	0x119000
416b0d97cd2SShengzhou Liu #define CONFIG_SYS_FSL_I2C4_OFFSET	0x119100
4177d436078SPrabhakar Kushwaha 
4187d436078SPrabhakar Kushwaha #define I2C_MUX_PCA_ADDR		0x77
4197d436078SPrabhakar Kushwaha #define I2C_MUX_PCA_ADDR_PRI		0x77 /* Primary Mux*/
4207d436078SPrabhakar Kushwaha 
4217d436078SPrabhakar Kushwaha /* I2C bus multiplexer */
4227d436078SPrabhakar Kushwaha #define I2C_MUX_CH_DEFAULT      0x8
423337b0c52SPriyanka Jain #define I2C_MUX_CH_DIU		0xC
424337b0c52SPriyanka Jain 
425337b0c52SPriyanka Jain /* LDI/DVI Encoder for display */
426337b0c52SPriyanka Jain #define CONFIG_SYS_I2C_LDI_ADDR         0x38
427337b0c52SPriyanka Jain #define CONFIG_SYS_I2C_DVI_ADDR         0x75
4287d436078SPrabhakar Kushwaha 
4297d436078SPrabhakar Kushwaha /*
4307d436078SPrabhakar Kushwaha  * RTC configuration
4317d436078SPrabhakar Kushwaha  */
4327d436078SPrabhakar Kushwaha #define RTC
4337d436078SPrabhakar Kushwaha #define CONFIG_RTC_DS3231               1
4347d436078SPrabhakar Kushwaha #define CONFIG_SYS_I2C_RTC_ADDR         0x68
4357d436078SPrabhakar Kushwaha 
4367d436078SPrabhakar Kushwaha /*
4377d436078SPrabhakar Kushwaha  * eSPI - Enhanced SPI
4387d436078SPrabhakar Kushwaha  */
4397d436078SPrabhakar Kushwaha #define CONFIG_SF_DEFAULT_SPEED         10000000
4407d436078SPrabhakar Kushwaha #define CONFIG_SF_DEFAULT_MODE          0
4417d436078SPrabhakar Kushwaha 
4427d436078SPrabhakar Kushwaha /*
4437d436078SPrabhakar Kushwaha  * General PCI
4447d436078SPrabhakar Kushwaha  * Memory space is mapped 1-1, but I/O space must start from 0.
4457d436078SPrabhakar Kushwaha  */
4467d436078SPrabhakar Kushwaha 
4477d436078SPrabhakar Kushwaha #ifdef CONFIG_PCI
4487d436078SPrabhakar Kushwaha /* controller 1, direct to uli, tgtid 3, Base address 20000 */
4497d436078SPrabhakar Kushwaha #ifdef CONFIG_PCIE1
4507d436078SPrabhakar Kushwaha #define	CONFIG_SYS_PCIE1_MEM_VIRT	0x80000000
4517d436078SPrabhakar Kushwaha #define	CONFIG_SYS_PCIE1_MEM_BUS	0xe0000000
4527d436078SPrabhakar Kushwaha #define	CONFIG_SYS_PCIE1_MEM_PHYS	0xc00000000ull
4537d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE1_MEM_SIZE	0x10000000	/* 256M */
4547d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE1_IO_VIRT	0xf8000000
4557d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE1_IO_BUS		0x00000000
4567d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE1_IO_PHYS	0xff8000000ull
4577d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE1_IO_SIZE	0x00010000	/* 64k */
4587d436078SPrabhakar Kushwaha #endif
4597d436078SPrabhakar Kushwaha 
4607d436078SPrabhakar Kushwaha /* controller 2, Slot 2, tgtid 2, Base address 201000 */
4617d436078SPrabhakar Kushwaha #ifdef CONFIG_PCIE2
4627d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE2_MEM_VIRT	0x90000000
4637d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE2_MEM_BUS	0xe0000000
4647d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE2_MEM_PHYS	0xc10000000ull
4657d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE2_MEM_SIZE	0x10000000	/* 256M */
4667d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE2_IO_VIRT	0xf8010000
4677d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE2_IO_BUS		0x00000000
4687d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE2_IO_PHYS	0xff8010000ull
4697d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE2_IO_SIZE	0x00010000	/* 64k */
4707d436078SPrabhakar Kushwaha #endif
4717d436078SPrabhakar Kushwaha 
4727d436078SPrabhakar Kushwaha /* controller 3, Slot 1, tgtid 1, Base address 202000 */
4737d436078SPrabhakar Kushwaha #ifdef CONFIG_PCIE3
4747d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE3_MEM_VIRT	0xa0000000
4757d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE3_MEM_BUS	0xe0000000
4767d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE3_MEM_PHYS	0xc20000000ull
4777d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE3_MEM_SIZE	0x10000000	/* 256M */
4787d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE3_IO_VIRT	0xf8020000
4797d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE3_IO_BUS		0x00000000
4807d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE3_IO_PHYS	0xff8020000ull
4817d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE3_IO_SIZE	0x00010000	/* 64k */
4827d436078SPrabhakar Kushwaha #endif
4837d436078SPrabhakar Kushwaha 
4847d436078SPrabhakar Kushwaha /* controller 4, Base address 203000 */
4857d436078SPrabhakar Kushwaha #ifdef CONFIG_PCIE4
4867d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE4_MEM_VIRT	0xb0000000
4877d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE4_MEM_BUS	0xe0000000
4887d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE4_MEM_PHYS	0xc30000000ull
4897d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE4_MEM_SIZE	0x10000000	/* 256M */
4907d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE4_IO_VIRT	0xf8030000
4917d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE4_IO_BUS		0x00000000
4927d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE4_IO_PHYS	0xff8030000ull
4937d436078SPrabhakar Kushwaha #define CONFIG_SYS_PCIE4_IO_SIZE	0x00010000	/* 64k */
4947d436078SPrabhakar Kushwaha #endif
4957d436078SPrabhakar Kushwaha 
4967d436078SPrabhakar Kushwaha #define CONFIG_PCI_SCAN_SHOW		/* show pci devices on startup */
4977d436078SPrabhakar Kushwaha #endif	/* CONFIG_PCI */
4987d436078SPrabhakar Kushwaha 
4997d436078SPrabhakar Kushwaha /* SATA */
5007d436078SPrabhakar Kushwaha #define CONFIG_FSL_SATA_V2
5017d436078SPrabhakar Kushwaha #ifdef CONFIG_FSL_SATA_V2
5027d436078SPrabhakar Kushwaha #define CONFIG_LIBATA
5037d436078SPrabhakar Kushwaha #define CONFIG_FSL_SATA
5047d436078SPrabhakar Kushwaha 
5057d436078SPrabhakar Kushwaha #define CONFIG_SYS_SATA_MAX_DEVICE	2
5067d436078SPrabhakar Kushwaha #define CONFIG_SATA1
5077d436078SPrabhakar Kushwaha #define CONFIG_SYS_SATA1		CONFIG_SYS_MPC85xx_SATA1_ADDR
5087d436078SPrabhakar Kushwaha #define CONFIG_SYS_SATA1_FLAGS		FLAGS_DMA
5097d436078SPrabhakar Kushwaha #define CONFIG_SATA2
5107d436078SPrabhakar Kushwaha #define CONFIG_SYS_SATA2		CONFIG_SYS_MPC85xx_SATA2_ADDR
5117d436078SPrabhakar Kushwaha #define CONFIG_SYS_SATA2_FLAGS		FLAGS_DMA
5127d436078SPrabhakar Kushwaha 
5137d436078SPrabhakar Kushwaha #define CONFIG_LBA48
5147d436078SPrabhakar Kushwaha #endif
5157d436078SPrabhakar Kushwaha 
5167d436078SPrabhakar Kushwaha /*
5177d436078SPrabhakar Kushwaha * USB
5187d436078SPrabhakar Kushwaha */
5197d436078SPrabhakar Kushwaha #define CONFIG_HAS_FSL_DR_USB
5207d436078SPrabhakar Kushwaha 
5217d436078SPrabhakar Kushwaha #ifdef CONFIG_HAS_FSL_DR_USB
522*8850c5d5STom Rini #ifdef CONFIG_USB_EHCI_HCD
5237d436078SPrabhakar Kushwaha #define CONFIG_USB_EHCI_FSL
5247d436078SPrabhakar Kushwaha #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
5257d436078SPrabhakar Kushwaha #endif
5267d436078SPrabhakar Kushwaha #endif
5277d436078SPrabhakar Kushwaha 
5287d436078SPrabhakar Kushwaha #ifdef CONFIG_MMC
5297d436078SPrabhakar Kushwaha #define CONFIG_FSL_ESDHC
53012486f38SYangbo Lu #define CONFIG_FSL_ESDHC_USE_PERIPHERAL_CLK
5317d436078SPrabhakar Kushwaha #define CONFIG_SYS_FSL_ESDHC_ADDR       CONFIG_SYS_MPC85xx_ESDHC_ADDR
532fa1e035eSYangbo Lu #define CONFIG_FSL_ESDHC_ADAPTER_IDENT
5337d436078SPrabhakar Kushwaha #endif
5347d436078SPrabhakar Kushwaha 
5357d436078SPrabhakar Kushwaha /* Qman/Bman */
5367d436078SPrabhakar Kushwaha #ifndef CONFIG_NOBQFMAN
5377d436078SPrabhakar Kushwaha #define CONFIG_SYS_DPAA_QBMAN		/* Support Q/Bman */
5382a8b3422SJeffrey Ladouceur #define CONFIG_SYS_BMAN_NUM_PORTALS	10
5397d436078SPrabhakar Kushwaha #define CONFIG_SYS_BMAN_MEM_BASE	0xf4000000
5407d436078SPrabhakar Kushwaha #define CONFIG_SYS_BMAN_MEM_PHYS	0xff4000000ull
5417d436078SPrabhakar Kushwaha #define CONFIG_SYS_BMAN_MEM_SIZE	0x02000000
5423fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_SP_CENA_SIZE    0x4000
5433fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_SP_CINH_SIZE    0x1000
5443fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CENA_BASE       CONFIG_SYS_BMAN_MEM_BASE
5453fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CENA_SIZE       (CONFIG_SYS_BMAN_MEM_SIZE >> 1)
5463fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CINH_BASE       (CONFIG_SYS_BMAN_MEM_BASE + \
5473fa66db4SJeffrey Ladouceur 					CONFIG_SYS_BMAN_CENA_SIZE)
5483fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CINH_SIZE       (CONFIG_SYS_BMAN_MEM_SIZE >> 1)
5493fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_SWP_ISDR_REG	0xE08
5502a8b3422SJeffrey Ladouceur #define CONFIG_SYS_QMAN_NUM_PORTALS	10
5517d436078SPrabhakar Kushwaha #define CONFIG_SYS_QMAN_MEM_BASE	0xf6000000
5527d436078SPrabhakar Kushwaha #define CONFIG_SYS_QMAN_MEM_PHYS	0xff6000000ull
5537d436078SPrabhakar Kushwaha #define CONFIG_SYS_QMAN_MEM_SIZE	0x02000000
5543fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_SP_CENA_SIZE    0x4000
5553fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_SP_CINH_SIZE    0x1000
5563fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CENA_BASE       CONFIG_SYS_QMAN_MEM_BASE
5573fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CENA_SIZE       (CONFIG_SYS_QMAN_MEM_SIZE >> 1)
5583fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CINH_BASE       (CONFIG_SYS_QMAN_MEM_BASE + \
5593fa66db4SJeffrey Ladouceur 					CONFIG_SYS_QMAN_CENA_SIZE)
5603fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CINH_SIZE       (CONFIG_SYS_QMAN_MEM_SIZE >> 1)
5613fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_SWP_ISDR_REG	0xE08
5627d436078SPrabhakar Kushwaha 
5637d436078SPrabhakar Kushwaha #define CONFIG_SYS_DPAA_FMAN
5647d436078SPrabhakar Kushwaha #define CONFIG_SYS_DPAA_PME
5657d436078SPrabhakar Kushwaha 
5666259e291SZhao Qiang #define CONFIG_QE
5676259e291SZhao Qiang #define CONFIG_U_QE
5687d436078SPrabhakar Kushwaha /* Default address of microcode for the Linux Fman driver */
5697d436078SPrabhakar Kushwaha #if defined(CONFIG_SPIFLASH)
5707d436078SPrabhakar Kushwaha /*
5717d436078SPrabhakar Kushwaha  * env is stored at 0x100000, sector size is 0x10000, ucode is stored after
5727d436078SPrabhakar Kushwaha  * env, so we got 0x110000.
5737d436078SPrabhakar Kushwaha  */
5747d436078SPrabhakar Kushwaha #define CONFIG_SYS_QE_FW_IN_SPIFLASH
575dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR	0x110000
5767d436078SPrabhakar Kushwaha #elif defined(CONFIG_SDCARD)
5777d436078SPrabhakar Kushwaha /*
5787d436078SPrabhakar Kushwaha  * PBL SD boot image should stored at 0x1000(8 blocks), the size of the image is
579e222b1f3SPrabhakar Kushwaha  * about 825KB (1650 blocks), Env is stored after the image, and the env size is
580e222b1f3SPrabhakar Kushwaha  * 0x2000 (16 blocks), 8 + 1650 + 16 = 1674, enlarge it to 1680.
5817d436078SPrabhakar Kushwaha  */
5827d436078SPrabhakar Kushwaha #define CONFIG_SYS_QE_FMAN_FW_IN_MMC
583dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR	(512 * 1680)
5847d436078SPrabhakar Kushwaha #elif defined(CONFIG_NAND)
5857d436078SPrabhakar Kushwaha #define CONFIG_SYS_QE_FMAN_FW_IN_NAND
586dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR	(8 * CONFIG_SYS_NAND_BLOCK_SIZE)
5877d436078SPrabhakar Kushwaha #else
5887d436078SPrabhakar Kushwaha #define CONFIG_SYS_QE_FMAN_FW_IN_NOR
589dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR		0xEFF00000
5906259e291SZhao Qiang #define CONFIG_SYS_QE_FW_ADDR		0xEFF10000
5917d436078SPrabhakar Kushwaha #endif
5927d436078SPrabhakar Kushwaha #define CONFIG_SYS_QE_FMAN_FW_LENGTH	0x10000
5937d436078SPrabhakar Kushwaha #define CONFIG_SYS_FDT_PAD		(0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH)
5947d436078SPrabhakar Kushwaha #endif /* CONFIG_NOBQFMAN */
5957d436078SPrabhakar Kushwaha 
5967d436078SPrabhakar Kushwaha #ifdef CONFIG_SYS_DPAA_FMAN
5977d436078SPrabhakar Kushwaha #define CONFIG_FMAN_ENET
5987d436078SPrabhakar Kushwaha #define CONFIG_PHYLIB_10G
5997d436078SPrabhakar Kushwaha #define CONFIG_PHY_VITESSE
6007d436078SPrabhakar Kushwaha #define CONFIG_PHY_REALTEK
6017d436078SPrabhakar Kushwaha #define CONFIG_PHY_TERANETICS
6027d436078SPrabhakar Kushwaha #define SGMII_CARD_PORT1_PHY_ADDR 0x1C
6037d436078SPrabhakar Kushwaha #define SGMII_CARD_PORT2_PHY_ADDR 0x10
6047d436078SPrabhakar Kushwaha #define SGMII_CARD_PORT3_PHY_ADDR 0x1E
6057d436078SPrabhakar Kushwaha #define SGMII_CARD_PORT4_PHY_ADDR 0x11
6067d436078SPrabhakar Kushwaha #endif
6077d436078SPrabhakar Kushwaha 
6087d436078SPrabhakar Kushwaha #ifdef CONFIG_FMAN_ENET
6095b7672fcSPrabhakar Kushwaha #define CONFIG_SYS_FM1_DTSEC4_PHY_ADDR	0x01
6105b7672fcSPrabhakar Kushwaha #define CONFIG_SYS_FM1_DTSEC5_PHY_ADDR	0x02
6117d436078SPrabhakar Kushwaha 
6127d436078SPrabhakar Kushwaha #define CONFIG_SYS_FM1_DTSEC1_RISER_PHY_ADDR    0x1c
6137d436078SPrabhakar Kushwaha #define CONFIG_SYS_FM1_DTSEC2_RISER_PHY_ADDR    0x1d
6147d436078SPrabhakar Kushwaha #define CONFIG_SYS_FM1_DTSEC3_RISER_PHY_ADDR    0x1e
6157d436078SPrabhakar Kushwaha #define CONFIG_SYS_FM1_DTSEC4_RISER_PHY_ADDR    0x1f
6167d436078SPrabhakar Kushwaha 
6177d436078SPrabhakar Kushwaha #define CONFIG_MII		/* MII PHY management */
6187d436078SPrabhakar Kushwaha #define CONFIG_ETHPRIME		"FM1@DTSEC1"
6197d436078SPrabhakar Kushwaha #endif
6207d436078SPrabhakar Kushwaha 
621a83fccc2SCodrin Ciubotariu /* Enable VSC9953 L2 Switch driver */
622a83fccc2SCodrin Ciubotariu #define CONFIG_VSC9953
623a83fccc2SCodrin Ciubotariu #define CONFIG_SYS_FM1_QSGMII11_PHY_ADDR	0x14
624a83fccc2SCodrin Ciubotariu #define CONFIG_SYS_FM1_QSGMII21_PHY_ADDR	0x18
625a83fccc2SCodrin Ciubotariu 
6267d436078SPrabhakar Kushwaha /*
62768b74739SPrabhakar Kushwaha  * Dynamic MTD Partition support with mtdparts
62868b74739SPrabhakar Kushwaha  */
629e856bdcfSMasahiro Yamada #ifdef CONFIG_MTD_NOR_FLASH
63068b74739SPrabhakar Kushwaha #define CONFIG_FLASH_CFI_MTD
63168b74739SPrabhakar Kushwaha #define MTDIDS_DEFAULT "nor0=fe8000000.nor,nand0=fff800000.flash," \
63268b74739SPrabhakar Kushwaha 			"spi0=spife110000.0"
63368b74739SPrabhakar Kushwaha #define MTDPARTS_DEFAULT	"mtdparts=fe8000000.nor:1m(uboot),5m(kernel)," \
63468b74739SPrabhakar Kushwaha 				"128k(dtb),96m(fs),-(user);"\
63568b74739SPrabhakar Kushwaha 				"fff800000.flash:2m(uboot),9m(kernel),"\
63668b74739SPrabhakar Kushwaha 				"128k(dtb),96m(fs),-(user);spife110000.0:" \
63768b74739SPrabhakar Kushwaha 				"2m(uboot),9m(kernel),128k(dtb),-(user)"
63868b74739SPrabhakar Kushwaha #endif
63968b74739SPrabhakar Kushwaha 
64068b74739SPrabhakar Kushwaha /*
6417d436078SPrabhakar Kushwaha  * Environment
6427d436078SPrabhakar Kushwaha  */
6437d436078SPrabhakar Kushwaha #define CONFIG_LOADS_ECHO		/* echo on for serial download */
6447d436078SPrabhakar Kushwaha #define CONFIG_SYS_LOADS_BAUD_CHANGE	/* allow baudrate change */
6457d436078SPrabhakar Kushwaha 
6467d436078SPrabhakar Kushwaha /*
6477d436078SPrabhakar Kushwaha  * Miscellaneous configurable options
6487d436078SPrabhakar Kushwaha  */
6497d436078SPrabhakar Kushwaha #define CONFIG_SYS_LONGHELP			/* undef to save memory	*/
6507d436078SPrabhakar Kushwaha #define CONFIG_CMDLINE_EDITING			/* Command-line editing */
6517d436078SPrabhakar Kushwaha #define CONFIG_AUTO_COMPLETE			/* add autocompletion support */
6527d436078SPrabhakar Kushwaha #define CONFIG_SYS_LOAD_ADDR	0x2000000	/* default load address */
6537d436078SPrabhakar Kushwaha 
6547d436078SPrabhakar Kushwaha /*
6557d436078SPrabhakar Kushwaha  * For booting Linux, the board info and command line data
6567d436078SPrabhakar Kushwaha  * have to be in the first 64 MB of memory, since this is
6577d436078SPrabhakar Kushwaha  * the maximum mapped by the Linux kernel during initialization.
6587d436078SPrabhakar Kushwaha  */
6597d436078SPrabhakar Kushwaha #define CONFIG_SYS_BOOTMAPSZ	(64 << 20)	/* Initial map for Linux*/
6607d436078SPrabhakar Kushwaha #define CONFIG_SYS_BOOTM_LEN	(64 << 20)	/* Increase max gunzip size */
6617d436078SPrabhakar Kushwaha 
6627d436078SPrabhakar Kushwaha #ifdef CONFIG_CMD_KGDB
6637d436078SPrabhakar Kushwaha #define CONFIG_KGDB_BAUDRATE	230400	/* speed to run kgdb serial port */
6647d436078SPrabhakar Kushwaha #endif
6657d436078SPrabhakar Kushwaha 
6667d436078SPrabhakar Kushwaha /*
6677d436078SPrabhakar Kushwaha  * Environment Configuration
6687d436078SPrabhakar Kushwaha  */
6697d436078SPrabhakar Kushwaha #define CONFIG_ROOTPATH		"/opt/nfsroot"
6707d436078SPrabhakar Kushwaha #define CONFIG_BOOTFILE		"uImage"
6717d436078SPrabhakar Kushwaha #define CONFIG_UBOOTPATH	"u-boot.bin"	/* U-Boot image on TFTP server*/
6727d436078SPrabhakar Kushwaha 
6737d436078SPrabhakar Kushwaha /* default location for tftp and bootm */
6747d436078SPrabhakar Kushwaha #define CONFIG_LOADADDR		1000000
6757d436078SPrabhakar Kushwaha 
6767d436078SPrabhakar Kushwaha #define __USB_PHY_TYPE	utmi
6777d436078SPrabhakar Kushwaha 
6787d436078SPrabhakar Kushwaha #define	CONFIG_EXTRA_ENV_SETTINGS				\
6791b2af9b4SYork Sun 	"hwconfig=fsl_ddr:bank_intlv=auto;"			\
6807d436078SPrabhakar Kushwaha 	"usb1:dr_mode=host,phy_type=" __stringify(__USB_PHY_TYPE) "\0"\
6817d436078SPrabhakar Kushwaha 	"netdev=eth0\0"						\
682337b0c52SPriyanka Jain 	"video-mode=fslfb:1024x768-32@60,monitor=dvi\0"		\
6837d436078SPrabhakar Kushwaha 	"uboot=" __stringify(CONFIG_UBOOTPATH) "\0"		\
6847d436078SPrabhakar Kushwaha 	"ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0"	\
6857d436078SPrabhakar Kushwaha 	"tftpflash=tftpboot $loadaddr $uboot && "		\
6867d436078SPrabhakar Kushwaha 	"protect off $ubootaddr +$filesize && "			\
6877d436078SPrabhakar Kushwaha 	"erase $ubootaddr +$filesize && "			\
6887d436078SPrabhakar Kushwaha 	"cp.b $loadaddr $ubootaddr $filesize && "		\
6897d436078SPrabhakar Kushwaha 	"protect on $ubootaddr +$filesize && "			\
6907d436078SPrabhakar Kushwaha 	"cmp.b $loadaddr $ubootaddr $filesize\0"		\
6917d436078SPrabhakar Kushwaha 	"consoledev=ttyS0\0"					\
6927d436078SPrabhakar Kushwaha 	"ramdiskaddr=2000000\0"					\
6937d436078SPrabhakar Kushwaha 	"ramdiskfile=t1040qds/ramdisk.uboot\0"			\
694b24a4f62SScott Wood 	"fdtaddr=1e00000\0"					\
6957d436078SPrabhakar Kushwaha 	"fdtfile=t1040qds/t1040qds.dtb\0"			\
6963246584dSKim Phillips 	"bdev=sda3\0"
6977d436078SPrabhakar Kushwaha 
6987d436078SPrabhakar Kushwaha #define CONFIG_LINUX                       \
6997d436078SPrabhakar Kushwaha 	"setenv bootargs root=/dev/ram rw "            \
7007d436078SPrabhakar Kushwaha 	"console=$consoledev,$baudrate $othbootargs;"  \
7017d436078SPrabhakar Kushwaha 	"setenv ramdiskaddr 0x02000000;"               \
7027d436078SPrabhakar Kushwaha 	"setenv fdtaddr 0x00c00000;"		       \
7037d436078SPrabhakar Kushwaha 	"setenv loadaddr 0x1000000;"		       \
7047d436078SPrabhakar Kushwaha 	"bootm $loadaddr $ramdiskaddr $fdtaddr"
7057d436078SPrabhakar Kushwaha 
7067d436078SPrabhakar Kushwaha #define CONFIG_HDBOOT					\
7077d436078SPrabhakar Kushwaha 	"setenv bootargs root=/dev/$bdev rw "		\
7087d436078SPrabhakar Kushwaha 	"console=$consoledev,$baudrate $othbootargs;"	\
7097d436078SPrabhakar Kushwaha 	"tftp $loadaddr $bootfile;"			\
7107d436078SPrabhakar Kushwaha 	"tftp $fdtaddr $fdtfile;"			\
7117d436078SPrabhakar Kushwaha 	"bootm $loadaddr - $fdtaddr"
7127d436078SPrabhakar Kushwaha 
7137d436078SPrabhakar Kushwaha #define CONFIG_NFSBOOTCOMMAND			\
7147d436078SPrabhakar Kushwaha 	"setenv bootargs root=/dev/nfs rw "	\
7157d436078SPrabhakar Kushwaha 	"nfsroot=$serverip:$rootpath "		\
7167d436078SPrabhakar Kushwaha 	"ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \
7177d436078SPrabhakar Kushwaha 	"console=$consoledev,$baudrate $othbootargs;"	\
7187d436078SPrabhakar Kushwaha 	"tftp $loadaddr $bootfile;"		\
7197d436078SPrabhakar Kushwaha 	"tftp $fdtaddr $fdtfile;"		\
7207d436078SPrabhakar Kushwaha 	"bootm $loadaddr - $fdtaddr"
7217d436078SPrabhakar Kushwaha 
7227d436078SPrabhakar Kushwaha #define CONFIG_RAMBOOTCOMMAND				\
7237d436078SPrabhakar Kushwaha 	"setenv bootargs root=/dev/ram rw "		\
7247d436078SPrabhakar Kushwaha 	"console=$consoledev,$baudrate $othbootargs;"	\
7257d436078SPrabhakar Kushwaha 	"tftp $ramdiskaddr $ramdiskfile;"		\
7267d436078SPrabhakar Kushwaha 	"tftp $loadaddr $bootfile;"			\
7277d436078SPrabhakar Kushwaha 	"tftp $fdtaddr $fdtfile;"			\
7287d436078SPrabhakar Kushwaha 	"bootm $loadaddr $ramdiskaddr $fdtaddr"
7297d436078SPrabhakar Kushwaha 
7307d436078SPrabhakar Kushwaha #define CONFIG_BOOTCOMMAND		CONFIG_LINUX
7317d436078SPrabhakar Kushwaha 
7327d436078SPrabhakar Kushwaha #include <asm/fsl_secure_boot.h>
733ef6c55a2SAneesh Bansal 
7347d436078SPrabhakar Kushwaha #endif	/* __CONFIG_H */
735