xref: /rk3399_rockchip-uboot/include/configs/MPC8315ERDB.h (revision f9023afbdfd9f27e7c38f3cce965746e56d62dd3)
18bd522ceSDave Liu /*
28bd522ceSDave Liu  * Copyright (C) 2007 Freescale Semiconductor, Inc.
38bd522ceSDave Liu  *
48bd522ceSDave Liu  * Dave Liu <daveliu@freescale.com>
58bd522ceSDave Liu  *
68bd522ceSDave Liu  * See file CREDITS for list of people who contributed to this
78bd522ceSDave Liu  * project.
88bd522ceSDave Liu  *
98bd522ceSDave Liu  * This program is free software; you can redistribute it and/or
108bd522ceSDave Liu  * modify it under the terms of the GNU General Public License as
118bd522ceSDave Liu  * published by the Free Software Foundation; either version 2 of
128bd522ceSDave Liu  * the License, or (at your option) any later version.
138bd522ceSDave Liu  *
148bd522ceSDave Liu  * This program is distributed in the hope that it will be useful,
158bd522ceSDave Liu  * but WITHOUT ANY WARRANTY; without even the implied warranty of
168bd522ceSDave Liu  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
178bd522ceSDave Liu  * GNU General Public License for more details.
188bd522ceSDave Liu  *
198bd522ceSDave Liu  * You should have received a copy of the GNU General Public License
208bd522ceSDave Liu  * along with this program; if not, write to the Free Software
218bd522ceSDave Liu  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
228bd522ceSDave Liu  * MA 02111-1307 USA
238bd522ceSDave Liu  */
248bd522ceSDave Liu 
258bd522ceSDave Liu #ifndef __CONFIG_H
268bd522ceSDave Liu #define __CONFIG_H
278bd522ceSDave Liu 
288bd522ceSDave Liu /*
298bd522ceSDave Liu  * High Level Configuration Options
308bd522ceSDave Liu  */
318bd522ceSDave Liu #define CONFIG_E300		1 /* E300 family */
328bd522ceSDave Liu #define CONFIG_MPC83XX		1 /* MPC83xx family */
338bd522ceSDave Liu #define CONFIG_MPC831X		1 /* MPC831x CPU family */
348bd522ceSDave Liu #define CONFIG_MPC8315		1 /* MPC8315 CPU specific */
358bd522ceSDave Liu #define CONFIG_MPC8315ERDB	1 /* MPC8315ERDB board specific */
368bd522ceSDave Liu 
378bd522ceSDave Liu /*
388bd522ceSDave Liu  * System Clock Setup
398bd522ceSDave Liu  */
408bd522ceSDave Liu #define CONFIG_83XX_CLKIN	66666667 /* in Hz */
418bd522ceSDave Liu #define CONFIG_SYS_CLK_FREQ	CONFIG_83XX_CLKIN
428bd522ceSDave Liu 
438bd522ceSDave Liu /*
448bd522ceSDave Liu  * Hardware Reset Configuration Word
458bd522ceSDave Liu  * if CLKIN is 66.66MHz, then
468bd522ceSDave Liu  * CSB = 133MHz, CORE = 400MHz, DDRC = 266MHz, LBC = 133MHz
478bd522ceSDave Liu  */
488bd522ceSDave Liu #define CFG_HRCW_LOW (\
498bd522ceSDave Liu 	HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\
508bd522ceSDave Liu 	HRCWL_DDR_TO_SCB_CLK_2X1 |\
518bd522ceSDave Liu 	HRCWL_SVCOD_DIV_2 |\
528bd522ceSDave Liu 	HRCWL_CSB_TO_CLKIN_2X1 |\
538bd522ceSDave Liu 	HRCWL_CORE_TO_CSB_3X1)
548bd522ceSDave Liu #define CFG_HRCW_HIGH (\
558bd522ceSDave Liu 	HRCWH_PCI_HOST |\
568bd522ceSDave Liu 	HRCWH_PCI1_ARBITER_ENABLE |\
578bd522ceSDave Liu 	HRCWH_CORE_ENABLE |\
588bd522ceSDave Liu 	HRCWH_FROM_0X00000100 |\
598bd522ceSDave Liu 	HRCWH_BOOTSEQ_DISABLE |\
608bd522ceSDave Liu 	HRCWH_SW_WATCHDOG_DISABLE |\
618bd522ceSDave Liu 	HRCWH_ROM_LOC_LOCAL_16BIT |\
628bd522ceSDave Liu 	HRCWH_RL_EXT_LEGACY |\
638bd522ceSDave Liu 	HRCWH_TSEC1M_IN_RGMII |\
648bd522ceSDave Liu 	HRCWH_TSEC2M_IN_RGMII |\
658bd522ceSDave Liu 	HRCWH_BIG_ENDIAN |\
668bd522ceSDave Liu 	HRCWH_LALE_NORMAL)
678bd522ceSDave Liu 
688bd522ceSDave Liu /*
698bd522ceSDave Liu  * System IO Config
708bd522ceSDave Liu  */
718bd522ceSDave Liu #define CFG_SICRH		0x00000000
728bd522ceSDave Liu #define CFG_SICRL		0x00000000 /* 3.3V, no delay */
738bd522ceSDave Liu 
748bd522ceSDave Liu #define CONFIG_BOARD_EARLY_INIT_F /* call board_pre_init */
758bd522ceSDave Liu 
768bd522ceSDave Liu /*
778bd522ceSDave Liu  * IMMR new address
788bd522ceSDave Liu  */
798bd522ceSDave Liu #define CFG_IMMR		0xE0000000
808bd522ceSDave Liu 
818bd522ceSDave Liu /*
828bd522ceSDave Liu  * Arbiter Setup
838bd522ceSDave Liu  */
848bd522ceSDave Liu #define CFG_ACR_PIPE_DEP	3 /* Arbiter pipeline depth is 4 */
858bd522ceSDave Liu #define CFG_ACR_RPTCNT		3 /* Arbiter repeat count is 4 */
868bd522ceSDave Liu #define CFG_SPCR_TSECEP		3 /* eTSEC emergency priority is highest */
878bd522ceSDave Liu 
888bd522ceSDave Liu /*
898bd522ceSDave Liu  * DDR Setup
908bd522ceSDave Liu  */
918bd522ceSDave Liu #define CFG_DDR_BASE		0x00000000 /* DDR is system memory */
928bd522ceSDave Liu #define CFG_SDRAM_BASE		CFG_DDR_BASE
938bd522ceSDave Liu #define CFG_DDR_SDRAM_BASE	CFG_DDR_BASE
948bd522ceSDave Liu #define CFG_DDR_SDRAM_CLK_CNTL	DDR_SDRAM_CLK_CNTL_CLK_ADJUST_05
958bd522ceSDave Liu #define CFG_DDRCDR_VALUE	( DDRCDR_EN \
968bd522ceSDave Liu 				| DDRCDR_PZ_LOZ \
978bd522ceSDave Liu 				| DDRCDR_NZ_LOZ \
988bd522ceSDave Liu 				| DDRCDR_ODT \
998bd522ceSDave Liu 				| DDRCDR_Q_DRN )
1008bd522ceSDave Liu 				/* 0x7b880001 */
1018bd522ceSDave Liu /*
1028bd522ceSDave Liu  * Manually set up DDR parameters
1038bd522ceSDave Liu  * consist of two chips HY5PS12621BFP-C4 from HYNIX
1048bd522ceSDave Liu  */
1058bd522ceSDave Liu #define CFG_DDR_SIZE		128 /* MB */
1068bd522ceSDave Liu #define CFG_DDR_CS0_BNDS	0x00000007
1078bd522ceSDave Liu #define CFG_DDR_CS0_CONFIG	( CSCONFIG_EN \
1088bd522ceSDave Liu 				| 0x00010000  /* ODT_WR to CSn */ \
1098bd522ceSDave Liu 				| CSCONFIG_ROW_BIT_13 | CSCONFIG_COL_BIT_10 )
1108bd522ceSDave Liu 				/* 0x80010102 */
1118bd522ceSDave Liu #define CFG_DDR_TIMING_3	0x00000000
1128bd522ceSDave Liu #define CFG_DDR_TIMING_0	( ( 0 << TIMING_CFG0_RWT_SHIFT ) \
1138bd522ceSDave Liu 				| ( 0 << TIMING_CFG0_WRT_SHIFT ) \
1148bd522ceSDave Liu 				| ( 0 << TIMING_CFG0_RRT_SHIFT ) \
1158bd522ceSDave Liu 				| ( 0 << TIMING_CFG0_WWT_SHIFT ) \
1168bd522ceSDave Liu 				| ( 2 << TIMING_CFG0_ACT_PD_EXIT_SHIFT ) \
1178bd522ceSDave Liu 				| ( 2 << TIMING_CFG0_PRE_PD_EXIT_SHIFT ) \
1188bd522ceSDave Liu 				| ( 8 << TIMING_CFG0_ODT_PD_EXIT_SHIFT ) \
1198bd522ceSDave Liu 				| ( 2 << TIMING_CFG0_MRS_CYC_SHIFT ) )
1208bd522ceSDave Liu 				/* 0x00220802 */
1218bd522ceSDave Liu #define CFG_DDR_TIMING_1	( ( 3 << TIMING_CFG1_PRETOACT_SHIFT ) \
1228bd522ceSDave Liu 				| ( 9 << TIMING_CFG1_ACTTOPRE_SHIFT ) \
1238bd522ceSDave Liu 				| ( 3 << TIMING_CFG1_ACTTORW_SHIFT ) \
1248bd522ceSDave Liu 				| ( 5 << TIMING_CFG1_CASLAT_SHIFT ) \
1258bd522ceSDave Liu 				| ( 6 << TIMING_CFG1_REFREC_SHIFT ) \
1268bd522ceSDave Liu 				| ( 2 << TIMING_CFG1_WRREC_SHIFT ) \
1278bd522ceSDave Liu 				| ( 2 << TIMING_CFG1_ACTTOACT_SHIFT ) \
1288bd522ceSDave Liu 				| ( 2 << TIMING_CFG1_WRTORD_SHIFT ) )
1298bd522ceSDave Liu 				/* 0x39356222 */
1308bd522ceSDave Liu #define CFG_DDR_TIMING_2	( ( 1 << TIMING_CFG2_ADD_LAT_SHIFT ) \
1318bd522ceSDave Liu 				| ( 4 << TIMING_CFG2_CPO_SHIFT ) \
1328bd522ceSDave Liu 				| ( 2 << TIMING_CFG2_WR_LAT_DELAY_SHIFT ) \
1338bd522ceSDave Liu 				| ( 2 << TIMING_CFG2_RD_TO_PRE_SHIFT ) \
1348bd522ceSDave Liu 				| ( 2 << TIMING_CFG2_WR_DATA_DELAY_SHIFT ) \
1358bd522ceSDave Liu 				| ( 3 << TIMING_CFG2_CKE_PLS_SHIFT ) \
1368bd522ceSDave Liu 				| ( 7 << TIMING_CFG2_FOUR_ACT_SHIFT) )
1378bd522ceSDave Liu 				/* 0x121048c7 */
1388bd522ceSDave Liu #define CFG_DDR_INTERVAL	( ( 0x0360 << SDRAM_INTERVAL_REFINT_SHIFT ) \
1398bd522ceSDave Liu 				| ( 0x0100 << SDRAM_INTERVAL_BSTOPRE_SHIFT ) )
1408bd522ceSDave Liu 				/* 0x03600100 */
1418bd522ceSDave Liu #define CFG_DDR_SDRAM_CFG	( SDRAM_CFG_SREN \
1428bd522ceSDave Liu 				| SDRAM_CFG_SDRAM_TYPE_DDR2 \
1438bd522ceSDave Liu 				| SDRAM_CFG_32_BE )
1448bd522ceSDave Liu 				/* 0x43080000 */
1458bd522ceSDave Liu #define CFG_DDR_SDRAM_CFG2	0x00401000 /* 1 posted refresh */
1468bd522ceSDave Liu #define CFG_DDR_MODE		( ( 0x0448 << SDRAM_MODE_ESD_SHIFT ) \
1478bd522ceSDave Liu 				| ( 0x0232 << SDRAM_MODE_SD_SHIFT ) )
1488bd522ceSDave Liu 				/* ODT 150ohm CL=3, AL=1 on SDRAM */
1498bd522ceSDave Liu #define CFG_DDR_MODE2		0x00000000
1508bd522ceSDave Liu 
1518bd522ceSDave Liu /*
1528bd522ceSDave Liu  * Memory test
1538bd522ceSDave Liu  */
1548bd522ceSDave Liu #undef CFG_DRAM_TEST		/* memory test, takes time */
1558bd522ceSDave Liu #define CFG_MEMTEST_START	0x00040000 /* memtest region */
1568bd522ceSDave Liu #define CFG_MEMTEST_END		0x00140000
1578bd522ceSDave Liu 
1588bd522ceSDave Liu /*
1598bd522ceSDave Liu  * The reserved memory
1608bd522ceSDave Liu  */
1618bd522ceSDave Liu #define CFG_MONITOR_BASE	TEXT_BASE /* start of monitor */
1628bd522ceSDave Liu 
1638bd522ceSDave Liu #if (CFG_MONITOR_BASE < CFG_FLASH_BASE)
1648bd522ceSDave Liu #define CFG_RAMBOOT
1658bd522ceSDave Liu #else
1668bd522ceSDave Liu #undef CFG_RAMBOOT
1678bd522ceSDave Liu #endif
1688bd522ceSDave Liu 
1698bd522ceSDave Liu #define CFG_MONITOR_LEN		(256 * 1024) /* Reserve 256 kB for Mon */
1708bd522ceSDave Liu #define CFG_MALLOC_LEN		(512 * 1024) /* Reserved for malloc */
1718bd522ceSDave Liu 
1728bd522ceSDave Liu /*
1738bd522ceSDave Liu  * Initial RAM Base Address Setup
1748bd522ceSDave Liu  */
1758bd522ceSDave Liu #define CFG_INIT_RAM_LOCK	1
1768bd522ceSDave Liu #define CFG_INIT_RAM_ADDR	0xE6000000 /* Initial RAM address */
1778bd522ceSDave Liu #define CFG_INIT_RAM_END	0x1000 /* End of used area in RAM */
1788bd522ceSDave Liu #define CFG_GBL_DATA_SIZE	0x100 /* num bytes initial data */
1798bd522ceSDave Liu #define CFG_GBL_DATA_OFFSET	(CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE)
1808bd522ceSDave Liu 
1818bd522ceSDave Liu /*
1828bd522ceSDave Liu  * Local Bus Configuration & Clock Setup
1838bd522ceSDave Liu  */
1848bd522ceSDave Liu #define CFG_LCRR		(LCRR_DBYP | LCRR_CLKDIV_2)
1858bd522ceSDave Liu #define CFG_LBC_LBCR		0x00040000
1868bd522ceSDave Liu 
1878bd522ceSDave Liu /*
1888bd522ceSDave Liu  * FLASH on the Local Bus
1898bd522ceSDave Liu  */
1908bd522ceSDave Liu #define CFG_FLASH_CFI		/* use the Common Flash Interface */
1918bd522ceSDave Liu #define CFG_FLASH_CFI_DRIVER	/* use the CFI driver */
1928bd522ceSDave Liu #define CFG_FLASH_CFI_WIDTH	FLASH_CFI_16BIT
1938bd522ceSDave Liu 
1948bd522ceSDave Liu #define CFG_FLASH_BASE		0xFE000000 /* FLASH base address */
1958bd522ceSDave Liu #define CFG_FLASH_SIZE		8 /* FLASH size is 8M */
1968bd522ceSDave Liu 
1978bd522ceSDave Liu #define CFG_LBLAWBAR0_PRELIM	CFG_FLASH_BASE /* Window base at flash base */
1988bd522ceSDave Liu #define CFG_LBLAWAR0_PRELIM	0x80000016 /* 8MB window size */
1998bd522ceSDave Liu 
2008bd522ceSDave Liu #define CFG_BR0_PRELIM		( CFG_FLASH_BASE	/* Flash Base address */ \
2018bd522ceSDave Liu 				| (2 << BR_PS_SHIFT)	/* 16 bit port size */ \
2028bd522ceSDave Liu 				| BR_V )		/* valid */
2038bd522ceSDave Liu #define CFG_OR0_PRELIM		( (~(CFG_FLASH_SIZE - 1) << 20) \
2048bd522ceSDave Liu 				| OR_UPM_XAM \
2058bd522ceSDave Liu 				| OR_GPCM_CSNT \
206*f9023afbSAnton Vorontsov 				| OR_GPCM_ACS_DIV2 \
2078bd522ceSDave Liu 				| OR_GPCM_XACS \
2088bd522ceSDave Liu 				| OR_GPCM_SCY_15 \
2098bd522ceSDave Liu 				| OR_GPCM_TRLX \
2108bd522ceSDave Liu 				| OR_GPCM_EHTR \
2118bd522ceSDave Liu 				| OR_GPCM_EAD )
2128bd522ceSDave Liu 
2138bd522ceSDave Liu #define CFG_MAX_FLASH_BANKS	1 /* number of banks */
2148bd522ceSDave Liu #define CFG_MAX_FLASH_SECT	135 /* 127 64KB sectors and 8 8KB top sectors per device */
2158bd522ceSDave Liu 
2168bd522ceSDave Liu #undef CFG_FLASH_CHECKSUM
2178bd522ceSDave Liu #define CFG_FLASH_ERASE_TOUT	60000 /* Flash Erase Timeout (ms) */
2188bd522ceSDave Liu #define CFG_FLASH_WRITE_TOUT	500 /* Flash Write Timeout (ms) */
2198bd522ceSDave Liu 
2208bd522ceSDave Liu /*
2218bd522ceSDave Liu  * NAND Flash on the Local Bus
2228bd522ceSDave Liu  */
2238bd522ceSDave Liu #define CFG_NAND_BASE		0xE0600000	/* 0xE0600000 */
2248bd522ceSDave Liu #define CFG_MAX_NAND_DEVICE	1
2258bd522ceSDave Liu #define NAND_MAX_CHIPS		1
2268bd522ceSDave Liu #define CONFIG_MTD_NAND_VERIFY_WRITE
2278bd522ceSDave Liu 
2288bd522ceSDave Liu #define CFG_BR1_PRELIM		( CFG_NAND_BASE \
2298bd522ceSDave Liu 				| (2<<BR_DECC_SHIFT)	/* Use HW ECC */ \
2308bd522ceSDave Liu 				| BR_PS_8		/* Port Size = 8 bit */ \
2318bd522ceSDave Liu 				| BR_MS_FCM		/* MSEL = FCM */ \
2328bd522ceSDave Liu 				| BR_V )		/* valid */
2338bd522ceSDave Liu #define CFG_OR1_PRELIM		( 0xFFFF8000		/* length 32K */ \
2348bd522ceSDave Liu 				| OR_FCM_CSCT \
2358bd522ceSDave Liu 				| OR_FCM_CST \
2368bd522ceSDave Liu 				| OR_FCM_CHT \
2378bd522ceSDave Liu 				| OR_FCM_SCY_1 \
2388bd522ceSDave Liu 				| OR_FCM_TRLX \
2398bd522ceSDave Liu 				| OR_FCM_EHTR )
2408bd522ceSDave Liu 				/* 0xFFFF8396 */
2418bd522ceSDave Liu 
2428bd522ceSDave Liu #define CFG_LBLAWBAR1_PRELIM	CFG_NAND_BASE
2438bd522ceSDave Liu #define CFG_LBLAWAR1_PRELIM	0x8000000E	/* 32KB  */
2448bd522ceSDave Liu 
2458bd522ceSDave Liu /*
2468bd522ceSDave Liu  * Serial Port
2478bd522ceSDave Liu  */
2488bd522ceSDave Liu #define CONFIG_CONS_INDEX	1
2498bd522ceSDave Liu #undef CONFIG_SERIAL_SOFTWARE_FIFO
2508bd522ceSDave Liu #define CFG_NS16550
2518bd522ceSDave Liu #define CFG_NS16550_SERIAL
2528bd522ceSDave Liu #define CFG_NS16550_REG_SIZE	1
2538bd522ceSDave Liu #define CFG_NS16550_CLK		get_bus_freq(0)
2548bd522ceSDave Liu 
2558bd522ceSDave Liu #define CFG_BAUDRATE_TABLE  \
2568bd522ceSDave Liu 	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200}
2578bd522ceSDave Liu 
2588bd522ceSDave Liu #define CFG_NS16550_COM1	(CFG_IMMR+0x4500)
2598bd522ceSDave Liu #define CFG_NS16550_COM2	(CFG_IMMR+0x4600)
2608bd522ceSDave Liu 
2618bd522ceSDave Liu /* Use the HUSH parser */
2628bd522ceSDave Liu #define CFG_HUSH_PARSER
2638bd522ceSDave Liu #ifdef CFG_HUSH_PARSER
2648bd522ceSDave Liu #define CFG_PROMPT_HUSH_PS2 "> "
2658bd522ceSDave Liu #endif
2668bd522ceSDave Liu 
2678bd522ceSDave Liu /* Pass open firmware flat tree */
2688bd522ceSDave Liu #define CONFIG_OF_LIBFDT	1
2698bd522ceSDave Liu #define CONFIG_OF_BOARD_SETUP	1
2708bd522ceSDave Liu #define CONFIG_OF_STDOUT_VIA_ALIAS	1
2718bd522ceSDave Liu 
2728bd522ceSDave Liu /* I2C */
2738bd522ceSDave Liu #define CONFIG_HARD_I2C		/* I2C with hardware support */
2748bd522ceSDave Liu #define CONFIG_FSL_I2C
2758bd522ceSDave Liu #define CFG_I2C_SPEED		400000 /* I2C speed and slave address */
2768bd522ceSDave Liu #define CFG_I2C_SLAVE		0x7F
2778bd522ceSDave Liu #define CFG_I2C_NOPROBES	{0x51} /* Don't probe these addrs */
2788bd522ceSDave Liu #define CFG_I2C_OFFSET		0x3000
2798bd522ceSDave Liu #define CFG_I2C2_OFFSET		0x3100
2808bd522ceSDave Liu 
2818bd522ceSDave Liu /*
2828bd522ceSDave Liu  * Board info - revision and where boot from
2838bd522ceSDave Liu  */
2848bd522ceSDave Liu #define CFG_I2C_PCF8574A_ADDR	0x39
2858bd522ceSDave Liu 
2868bd522ceSDave Liu /*
2878bd522ceSDave Liu  * Config on-board RTC
2888bd522ceSDave Liu  */
2898bd522ceSDave Liu #define CONFIG_RTC_DS1337	/* ds1339 on board, use ds1337 rtc via i2c */
2908bd522ceSDave Liu #define CFG_I2C_RTC_ADDR	0x68 /* at address 0x68 */
2918bd522ceSDave Liu 
2928bd522ceSDave Liu /*
2938bd522ceSDave Liu  * General PCI
2948bd522ceSDave Liu  * Addresses are mapped 1-1.
2958bd522ceSDave Liu  */
2968bd522ceSDave Liu #define CFG_PCI_MEM_BASE	0x80000000
2978bd522ceSDave Liu #define CFG_PCI_MEM_PHYS	CFG_PCI_MEM_BASE
2988bd522ceSDave Liu #define CFG_PCI_MEM_SIZE	0x10000000 /* 256M */
2998bd522ceSDave Liu #define CFG_PCI_MMIO_BASE	0x90000000
3008bd522ceSDave Liu #define CFG_PCI_MMIO_PHYS	CFG_PCI_MMIO_BASE
3018bd522ceSDave Liu #define CFG_PCI_MMIO_SIZE	0x10000000 /* 256M */
302a7ba32d4SScott Wood #define CFG_PCI_IO_BASE		0x00000000
3038bd522ceSDave Liu #define CFG_PCI_IO_PHYS		0xE0300000
3048bd522ceSDave Liu #define CFG_PCI_IO_SIZE		0x100000 /* 1M */
3058bd522ceSDave Liu 
3068bd522ceSDave Liu #define CFG_PCI_SLV_MEM_LOCAL	CFG_SDRAM_BASE
3078bd522ceSDave Liu #define CFG_PCI_SLV_MEM_BUS	0x00000000
3088bd522ceSDave Liu #define CFG_PCI_SLV_MEM_SIZE	0x80000000
3098bd522ceSDave Liu 
3108bd522ceSDave Liu #define CONFIG_PCI
3118bd522ceSDave Liu #define CONFIG_83XX_GENERIC_PCI	1 /* Use generic PCI setup */
3128bd522ceSDave Liu 
3138bd522ceSDave Liu #define CONFIG_NET_MULTI
3148bd522ceSDave Liu #define CONFIG_PCI_PNP		/* do pci plug-and-play */
3158bd522ceSDave Liu 
3168bd522ceSDave Liu #define CONFIG_EEPRO100
3178bd522ceSDave Liu #undef CONFIG_PCI_SCAN_SHOW	/* show pci devices on startup */
3188bd522ceSDave Liu #define CFG_PCI_SUBSYS_VENDORID 0x1957	/* Freescale */
3198bd522ceSDave Liu 
3208bd522ceSDave Liu #ifndef CONFIG_NET_MULTI
3218bd522ceSDave Liu #define CONFIG_NET_MULTI	1
3228bd522ceSDave Liu #endif
3238bd522ceSDave Liu 
3248bd522ceSDave Liu /*
3258bd522ceSDave Liu  * TSEC
3268bd522ceSDave Liu  */
3278bd522ceSDave Liu #define CONFIG_TSEC_ENET	/* TSEC ethernet support */
3288bd522ceSDave Liu #define CFG_TSEC1_OFFSET	0x24000
3298bd522ceSDave Liu #define CFG_TSEC1		(CFG_IMMR+CFG_TSEC1_OFFSET)
3308bd522ceSDave Liu #define CFG_TSEC2_OFFSET	0x25000
3318bd522ceSDave Liu #define CFG_TSEC2		(CFG_IMMR+CFG_TSEC2_OFFSET)
3328bd522ceSDave Liu 
3338bd522ceSDave Liu /*
3348bd522ceSDave Liu  * TSEC ethernet configuration
3358bd522ceSDave Liu  */
3368bd522ceSDave Liu #define CONFIG_MII		1 /* MII PHY management */
3378bd522ceSDave Liu #define CONFIG_TSEC1		1
3388bd522ceSDave Liu #define CONFIG_TSEC1_NAME	"eTSEC0"
3398bd522ceSDave Liu #define CONFIG_TSEC2		1
3408bd522ceSDave Liu #define CONFIG_TSEC2_NAME	"eTSEC1"
3418bd522ceSDave Liu #define TSEC1_PHY_ADDR		0
3428bd522ceSDave Liu #define TSEC2_PHY_ADDR		1
3438bd522ceSDave Liu #define TSEC1_PHYIDX		0
3448bd522ceSDave Liu #define TSEC2_PHYIDX		0
3458bd522ceSDave Liu #define TSEC1_FLAGS		TSEC_GIGABIT
3468bd522ceSDave Liu #define TSEC2_FLAGS		TSEC_GIGABIT
3478bd522ceSDave Liu 
3488bd522ceSDave Liu /* Options are: eTSEC[0-1] */
3498bd522ceSDave Liu #define CONFIG_ETHPRIME		"eTSEC1"
3508bd522ceSDave Liu 
3518bd522ceSDave Liu /*
352730e7929SKim Phillips  * SATA
353730e7929SKim Phillips  */
354730e7929SKim Phillips #define CONFIG_LIBATA
355730e7929SKim Phillips #define CONFIG_FSL_SATA
356730e7929SKim Phillips 
357730e7929SKim Phillips #define CFG_SATA_MAX_DEVICE	2
358730e7929SKim Phillips #define CONFIG_SATA1
359730e7929SKim Phillips #define CFG_SATA1_OFFSET	0x18000
360730e7929SKim Phillips #define CFG_SATA1		(CFG_IMMR + CFG_SATA1_OFFSET)
361730e7929SKim Phillips #define CFG_SATA1_FLAGS		FLAGS_DMA
362730e7929SKim Phillips #define CONFIG_SATA2
363730e7929SKim Phillips #define CFG_SATA2_OFFSET	0x19000
364730e7929SKim Phillips #define CFG_SATA2		(CFG_IMMR + CFG_SATA2_OFFSET)
365730e7929SKim Phillips #define CFG_SATA2_FLAGS		FLAGS_DMA
366730e7929SKim Phillips 
367730e7929SKim Phillips #ifdef CONFIG_FSL_SATA
368730e7929SKim Phillips #define CONFIG_LBA48
369730e7929SKim Phillips #define CONFIG_CMD_SATA
370730e7929SKim Phillips #define CONFIG_DOS_PARTITION
371730e7929SKim Phillips #define CONFIG_CMD_EXT2
372730e7929SKim Phillips #endif
373730e7929SKim Phillips 
374730e7929SKim Phillips /*
3758bd522ceSDave Liu  * Environment
3768bd522ceSDave Liu  */
3778bd522ceSDave Liu #ifndef CFG_RAMBOOT
3788bd522ceSDave Liu 	#define CFG_ENV_IS_IN_FLASH	1
3798bd522ceSDave Liu 	#define CFG_ENV_ADDR		(CFG_MONITOR_BASE + CFG_MONITOR_LEN)
3808bd522ceSDave Liu 	#define CFG_ENV_SECT_SIZE	0x10000 /* 64K(one sector) for env */
3818bd522ceSDave Liu 	#define CFG_ENV_SIZE		0x2000
3828bd522ceSDave Liu #else
3838bd522ceSDave Liu 	#define CFG_NO_FLASH		1	/* Flash is not usable now */
3848bd522ceSDave Liu 	#define CFG_ENV_IS_NOWHERE	1	/* Store ENV in memory only */
3858bd522ceSDave Liu 	#define CFG_ENV_ADDR		(CFG_MONITOR_BASE - 0x1000)
3868bd522ceSDave Liu 	#define CFG_ENV_SIZE		0x2000
3878bd522ceSDave Liu #endif
3888bd522ceSDave Liu 
3898bd522ceSDave Liu #define CONFIG_LOADS_ECHO	1	/* echo on for serial download */
3908bd522ceSDave Liu #define CFG_LOADS_BAUD_CHANGE	1	/* allow baudrate change */
3918bd522ceSDave Liu 
3928bd522ceSDave Liu /*
3938bd522ceSDave Liu  * BOOTP options
3948bd522ceSDave Liu  */
3958bd522ceSDave Liu #define CONFIG_BOOTP_BOOTFILESIZE
3968bd522ceSDave Liu #define CONFIG_BOOTP_BOOTPATH
3978bd522ceSDave Liu #define CONFIG_BOOTP_GATEWAY
3988bd522ceSDave Liu #define CONFIG_BOOTP_HOSTNAME
3998bd522ceSDave Liu 
4008bd522ceSDave Liu /*
4018bd522ceSDave Liu  * Command line configuration.
4028bd522ceSDave Liu  */
4038bd522ceSDave Liu #include <config_cmd_default.h>
4048bd522ceSDave Liu 
4058bd522ceSDave Liu #define CONFIG_CMD_PING
4068bd522ceSDave Liu #define CONFIG_CMD_I2C
4078bd522ceSDave Liu #define CONFIG_CMD_MII
4088bd522ceSDave Liu #define CONFIG_CMD_DATE
4098bd522ceSDave Liu #define CONFIG_CMD_PCI
4108bd522ceSDave Liu 
4118bd522ceSDave Liu #if defined(CFG_RAMBOOT)
4128bd522ceSDave Liu     #undef CONFIG_CMD_ENV
4138bd522ceSDave Liu     #undef CONFIG_CMD_LOADS
4148bd522ceSDave Liu #endif
4158bd522ceSDave Liu 
4168bd522ceSDave Liu #define CONFIG_CMDLINE_EDITING	1	/* add command line history */
4178bd522ceSDave Liu 
4188bd522ceSDave Liu #undef CONFIG_WATCHDOG		/* watchdog disabled */
4198bd522ceSDave Liu 
4208bd522ceSDave Liu /*
4218bd522ceSDave Liu  * Miscellaneous configurable options
4228bd522ceSDave Liu  */
4238bd522ceSDave Liu #define CFG_LONGHELP		/* undef to save memory */
4248bd522ceSDave Liu #define CFG_LOAD_ADDR		0x2000000 /* default load address */
4258bd522ceSDave Liu #define CFG_PROMPT		"=> "	/* Monitor Command Prompt */
4268bd522ceSDave Liu 
4278bd522ceSDave Liu #if defined(CONFIG_CMD_KGDB)
4288bd522ceSDave Liu 	#define CFG_CBSIZE	1024 /* Console I/O Buffer Size */
4298bd522ceSDave Liu #else
4308bd522ceSDave Liu 	#define CFG_CBSIZE	256 /* Console I/O Buffer Size */
4318bd522ceSDave Liu #endif
4328bd522ceSDave Liu 
4338bd522ceSDave Liu #define CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16) /* Print Buffer Size */
4348bd522ceSDave Liu #define CFG_MAXARGS	16		/* max number of command args */
4358bd522ceSDave Liu #define CFG_BARGSIZE	CFG_CBSIZE	/* Boot Argument Buffer Size */
4368bd522ceSDave Liu #define CFG_HZ		1000		/* decrementer freq: 1ms ticks */
4378bd522ceSDave Liu 
4388bd522ceSDave Liu /*
4398bd522ceSDave Liu  * For booting Linux, the board info and command line data
4408bd522ceSDave Liu  * have to be in the first 8 MB of memory, since this is
4418bd522ceSDave Liu  * the maximum mapped by the Linux kernel during initialization.
4428bd522ceSDave Liu  */
4438bd522ceSDave Liu #define CFG_BOOTMAPSZ		(8 << 20) /* Initial Memory map for Linux */
4448bd522ceSDave Liu 
4458bd522ceSDave Liu /*
4468bd522ceSDave Liu  * Core HID Setup
4478bd522ceSDave Liu  */
4488bd522ceSDave Liu #define CFG_HID0_INIT		0x000000000
4498bd522ceSDave Liu #define CFG_HID0_FINAL		(HID0_ENABLE_MACHINE_CHECK | \
4508bd522ceSDave Liu 				 HID0_ENABLE_DYNAMIC_POWER_MANAGMENT)
4518bd522ceSDave Liu #define CFG_HID2		HID2_HBE
4528bd522ceSDave Liu 
4538bd522ceSDave Liu /*
4548bd522ceSDave Liu  * MMU Setup
4558bd522ceSDave Liu  */
45631d82672SBecky Bruce #define CONFIG_HIGH_BATS	1	/* High BATs supported */
4578bd522ceSDave Liu 
4588bd522ceSDave Liu /* DDR: cache cacheable */
4598bd522ceSDave Liu #define CFG_IBAT0L	(CFG_SDRAM_BASE | BATL_PP_10 | BATL_MEMCOHERENCE)
4608bd522ceSDave Liu #define CFG_IBAT0U	(CFG_SDRAM_BASE | BATU_BL_128M | BATU_VS | BATU_VP)
4618bd522ceSDave Liu #define CFG_DBAT0L	CFG_IBAT0L
4628bd522ceSDave Liu #define CFG_DBAT0U	CFG_IBAT0U
4638bd522ceSDave Liu 
4648bd522ceSDave Liu /* IMMRBAR, PCI IO and NAND: cache-inhibit and guarded */
4658bd522ceSDave Liu #define CFG_IBAT1L	(CFG_IMMR | BATL_PP_10 | \
4668bd522ceSDave Liu 			BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
4678bd522ceSDave Liu #define CFG_IBAT1U	(CFG_IMMR | BATU_BL_8M | BATU_VS | BATU_VP)
4688bd522ceSDave Liu #define CFG_DBAT1L	CFG_IBAT1L
4698bd522ceSDave Liu #define CFG_DBAT1U	CFG_IBAT1U
4708bd522ceSDave Liu 
4718bd522ceSDave Liu /* FLASH: icache cacheable, but dcache-inhibit and guarded */
4728bd522ceSDave Liu #define CFG_IBAT2L	(CFG_FLASH_BASE | BATL_PP_10 | BATL_MEMCOHERENCE)
4738bd522ceSDave Liu #define CFG_IBAT2U	(CFG_FLASH_BASE | BATU_BL_8M | BATU_VS | BATU_VP)
4748bd522ceSDave Liu #define CFG_DBAT2L	(CFG_FLASH_BASE | BATL_PP_10 | \
4758bd522ceSDave Liu 			BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
4768bd522ceSDave Liu #define CFG_DBAT2U	CFG_IBAT2U
4778bd522ceSDave Liu 
4788bd522ceSDave Liu /* Stack in dcache: cacheable, no memory coherence */
4798bd522ceSDave Liu #define CFG_IBAT3L	(CFG_INIT_RAM_ADDR | BATL_PP_10)
4808bd522ceSDave Liu #define CFG_IBAT3U	(CFG_INIT_RAM_ADDR | BATU_BL_128K | BATU_VS | BATU_VP)
4818bd522ceSDave Liu #define CFG_DBAT3L	CFG_IBAT3L
4828bd522ceSDave Liu #define CFG_DBAT3U	CFG_IBAT3U
4838bd522ceSDave Liu 
4848bd522ceSDave Liu /* PCI MEM space: cacheable */
4858bd522ceSDave Liu #define CFG_IBAT4L	(CFG_PCI_MEM_PHYS | BATL_PP_10 | BATL_MEMCOHERENCE)
4868bd522ceSDave Liu #define CFG_IBAT4U	(CFG_PCI_MEM_PHYS | BATU_BL_256M | BATU_VS | BATU_VP)
4878bd522ceSDave Liu #define CFG_DBAT4L	CFG_IBAT4L
4888bd522ceSDave Liu #define CFG_DBAT4U	CFG_IBAT4U
4898bd522ceSDave Liu 
4908bd522ceSDave Liu /* PCI MMIO space: cache-inhibit and guarded */
4918bd522ceSDave Liu #define CFG_IBAT5L	(CFG_PCI_MMIO_PHYS | BATL_PP_10 | \
4928bd522ceSDave Liu 			BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
4938bd522ceSDave Liu #define CFG_IBAT5U	(CFG_PCI_MMIO_PHYS | BATU_BL_256M | BATU_VS | BATU_VP)
4948bd522ceSDave Liu #define CFG_DBAT5L	CFG_IBAT5L
4958bd522ceSDave Liu #define CFG_DBAT5U	CFG_IBAT5U
4968bd522ceSDave Liu 
4978bd522ceSDave Liu #define CFG_IBAT6L	0
4988bd522ceSDave Liu #define CFG_IBAT6U	0
4998bd522ceSDave Liu #define CFG_DBAT6L	CFG_IBAT6L
5008bd522ceSDave Liu #define CFG_DBAT6U	CFG_IBAT6U
5018bd522ceSDave Liu 
5028bd522ceSDave Liu #define CFG_IBAT7L	0
5038bd522ceSDave Liu #define CFG_IBAT7U	0
5048bd522ceSDave Liu #define CFG_DBAT7L	CFG_IBAT7L
5058bd522ceSDave Liu #define CFG_DBAT7U	CFG_IBAT7U
5068bd522ceSDave Liu 
5078bd522ceSDave Liu /*
5088bd522ceSDave Liu  * Internal Definitions
5098bd522ceSDave Liu  *
5108bd522ceSDave Liu  * Boot Flags
5118bd522ceSDave Liu  */
5128bd522ceSDave Liu #define BOOTFLAG_COLD	0x01 /* Normal Power-On: Boot from FLASH */
5138bd522ceSDave Liu #define BOOTFLAG_WARM	0x02 /* Software reboot */
5148bd522ceSDave Liu 
5158bd522ceSDave Liu #if defined(CONFIG_CMD_KGDB)
5168bd522ceSDave Liu #define CONFIG_KGDB_BAUDRATE	230400	/* speed of kgdb serial port */
5178bd522ceSDave Liu #define CONFIG_KGDB_SER_INDEX	2	/* which serial port to use */
5188bd522ceSDave Liu #endif
5198bd522ceSDave Liu 
5208bd522ceSDave Liu /*
5218bd522ceSDave Liu  * Environment Configuration
5228bd522ceSDave Liu  */
5238bd522ceSDave Liu 
5248bd522ceSDave Liu #define CONFIG_ENV_OVERWRITE
5258bd522ceSDave Liu 
5268bd522ceSDave Liu #if defined(CONFIG_TSEC_ENET)
5278bd522ceSDave Liu #define CONFIG_HAS_ETH0
5288bd522ceSDave Liu #define CONFIG_ETHADDR		04:00:00:00:00:0A
5298bd522ceSDave Liu #define CONFIG_HAS_ETH1
5308bd522ceSDave Liu #define CONFIG_ETH1ADDR		04:00:00:00:00:0B
5318bd522ceSDave Liu #endif
5328bd522ceSDave Liu 
5338bd522ceSDave Liu #define CONFIG_BAUDRATE 115200
5348bd522ceSDave Liu 
535b2115757SKim Phillips #define CONFIG_LOADADDR 500000	/* default location for tftp and bootm */
5368bd522ceSDave Liu 
5378bd522ceSDave Liu #define CONFIG_BOOTDELAY 6	/* -1 disables auto-boot */
5388bd522ceSDave Liu #undef CONFIG_BOOTARGS		/* the boot command will set bootargs */
5398bd522ceSDave Liu 
5408bd522ceSDave Liu #define CONFIG_EXTRA_ENV_SETTINGS					\
5418bd522ceSDave Liu    "netdev=eth0\0"							\
5428bd522ceSDave Liu    "consoledev=ttyS0\0"							\
5438bd522ceSDave Liu    "ramdiskaddr=1000000\0"						\
5448bd522ceSDave Liu    "ramdiskfile=ramfs.83xx\0"						\
5458bd522ceSDave Liu    "fdtaddr=400000\0"							\
5468bd522ceSDave Liu    "fdtfile=mpc8315erdb.dtb\0"						\
5478bd522ceSDave Liu    ""
5488bd522ceSDave Liu 
5498bd522ceSDave Liu #define CONFIG_NFSBOOTCOMMAND						\
5508bd522ceSDave Liu    "setenv bootargs root=/dev/nfs rw "					\
5518bd522ceSDave Liu       "nfsroot=$serverip:$rootpath "					\
5528bd522ceSDave Liu       "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \
5538bd522ceSDave Liu       "console=$consoledev,$baudrate $othbootargs;"			\
5548bd522ceSDave Liu    "tftp $loadaddr $bootfile;"						\
5558bd522ceSDave Liu    "tftp $fdtaddr $fdtfile;"						\
5568bd522ceSDave Liu    "bootm $loadaddr - $fdtaddr"
5578bd522ceSDave Liu 
5588bd522ceSDave Liu #define CONFIG_RAMBOOTCOMMAND						\
5598bd522ceSDave Liu    "setenv bootargs root=/dev/ram rw "					\
5608bd522ceSDave Liu       "console=$consoledev,$baudrate $othbootargs;"			\
5618bd522ceSDave Liu    "tftp $ramdiskaddr $ramdiskfile;"					\
5628bd522ceSDave Liu    "tftp $loadaddr $bootfile;"						\
5638bd522ceSDave Liu    "tftp $fdtaddr $fdtfile;"						\
5648bd522ceSDave Liu    "bootm $loadaddr $ramdiskaddr $fdtaddr"
5658bd522ceSDave Liu 
5668bd522ceSDave Liu 
5678bd522ceSDave Liu #define CONFIG_BOOTCOMMAND CONFIG_NFSBOOTCOMMAND
5688bd522ceSDave Liu 
5698bd522ceSDave Liu #endif	/* __CONFIG_H */
570