xref: /OK3568_Linux_fs/u-boot/include/configs/pfla02.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /*
2*4882a593Smuzhiyun  * Copyright (C) Stefano Babic <sbabic@denx.de>
3*4882a593Smuzhiyun  *
4*4882a593Smuzhiyun  * SPDX-License-Identifier:	GPL-2.0+
5*4882a593Smuzhiyun  */
6*4882a593Smuzhiyun 
7*4882a593Smuzhiyun 
8*4882a593Smuzhiyun #ifndef __PCM058_CONFIG_H
9*4882a593Smuzhiyun #define __PCM058_CONFIG_H
10*4882a593Smuzhiyun 
11*4882a593Smuzhiyun #include <config_distro_defaults.h>
12*4882a593Smuzhiyun 
13*4882a593Smuzhiyun #ifdef CONFIG_SPL
14*4882a593Smuzhiyun #define CONFIG_SPL_SPI_LOAD
15*4882a593Smuzhiyun #define CONFIG_SYS_SPI_U_BOOT_OFFS	(64 * 1024)
16*4882a593Smuzhiyun #include "imx6_spl.h"
17*4882a593Smuzhiyun #endif
18*4882a593Smuzhiyun 
19*4882a593Smuzhiyun #include "mx6_common.h"
20*4882a593Smuzhiyun 
21*4882a593Smuzhiyun /* Thermal */
22*4882a593Smuzhiyun #define CONFIG_IMX_THERMAL
23*4882a593Smuzhiyun 
24*4882a593Smuzhiyun /* Serial */
25*4882a593Smuzhiyun #define CONFIG_MXC_UART
26*4882a593Smuzhiyun #define CONFIG_MXC_UART_BASE	       UART4_BASE
27*4882a593Smuzhiyun #define CONSOLE_DEV		"ttymxc3"
28*4882a593Smuzhiyun 
29*4882a593Smuzhiyun /* Early setup */
30*4882a593Smuzhiyun #define CONFIG_DISPLAY_BOARDINFO_LATE
31*4882a593Smuzhiyun 
32*4882a593Smuzhiyun 
33*4882a593Smuzhiyun /* Size of malloc() pool */
34*4882a593Smuzhiyun #define CONFIG_SYS_MALLOC_LEN		(8 * SZ_1M)
35*4882a593Smuzhiyun 
36*4882a593Smuzhiyun /* Ethernet */
37*4882a593Smuzhiyun #define CONFIG_MII
38*4882a593Smuzhiyun #define IMX_FEC_BASE			ENET_BASE_ADDR
39*4882a593Smuzhiyun #define CONFIG_FEC_XCV_TYPE		RGMII
40*4882a593Smuzhiyun #define CONFIG_ETHPRIME			"FEC"
41*4882a593Smuzhiyun #define CONFIG_FEC_MXC_PHYADDR		3
42*4882a593Smuzhiyun 
43*4882a593Smuzhiyun /* SPI Flash */
44*4882a593Smuzhiyun #define CONFIG_MXC_SPI
45*4882a593Smuzhiyun #define CONFIG_SF_DEFAULT_BUS		2
46*4882a593Smuzhiyun #define CONFIG_SF_DEFAULT_CS		0
47*4882a593Smuzhiyun #define CONFIG_SF_DEFAULT_SPEED		20000000
48*4882a593Smuzhiyun #define CONFIG_SF_DEFAULT_MODE		SPI_MODE_0
49*4882a593Smuzhiyun 
50*4882a593Smuzhiyun /* I2C Configs */
51*4882a593Smuzhiyun #define CONFIG_SYS_I2C
52*4882a593Smuzhiyun #define CONFIG_SYS_I2C_MXC
53*4882a593Smuzhiyun #define CONFIG_SYS_I2C_MXC_I2C1		/* enable I2C bus 0 */
54*4882a593Smuzhiyun #define CONFIG_SYS_I2C_SPEED		  100000
55*4882a593Smuzhiyun 
56*4882a593Smuzhiyun #ifndef CONFIG_SPL_BUILD
57*4882a593Smuzhiyun #define CONFIG_CMD_NAND
58*4882a593Smuzhiyun /* Enable NAND support */
59*4882a593Smuzhiyun #define CONFIG_CMD_NAND_TRIMFFS
60*4882a593Smuzhiyun #define CONFIG_SYS_MAX_NAND_DEVICE	1
61*4882a593Smuzhiyun #define CONFIG_SYS_NAND_BASE		0x40000000
62*4882a593Smuzhiyun #define CONFIG_SYS_NAND_5_ADDR_CYCLE
63*4882a593Smuzhiyun #define CONFIG_SYS_NAND_ONFI_DETECTION
64*4882a593Smuzhiyun #endif
65*4882a593Smuzhiyun 
66*4882a593Smuzhiyun /* DMA stuff, needed for GPMI/MXS NAND support */
67*4882a593Smuzhiyun 
68*4882a593Smuzhiyun /* Filesystem support */
69*4882a593Smuzhiyun 
70*4882a593Smuzhiyun /* Various command support */
71*4882a593Smuzhiyun 
72*4882a593Smuzhiyun /* Physical Memory Map */
73*4882a593Smuzhiyun #define CONFIG_NR_DRAM_BANKS           1
74*4882a593Smuzhiyun #define PHYS_SDRAM                     MMDC0_ARB_BASE_ADDR
75*4882a593Smuzhiyun 
76*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_BASE          PHYS_SDRAM
77*4882a593Smuzhiyun #define CONFIG_SYS_INIT_RAM_ADDR       IRAM_BASE_ADDR
78*4882a593Smuzhiyun #define CONFIG_SYS_INIT_RAM_SIZE       IRAM_SIZE
79*4882a593Smuzhiyun 
80*4882a593Smuzhiyun #define CONFIG_SYS_INIT_SP_OFFSET \
81*4882a593Smuzhiyun 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
82*4882a593Smuzhiyun #define CONFIG_SYS_INIT_SP_ADDR \
83*4882a593Smuzhiyun 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
84*4882a593Smuzhiyun 
85*4882a593Smuzhiyun /* MMC Configs */
86*4882a593Smuzhiyun #define CONFIG_SYS_FSL_ESDHC_ADDR	0
87*4882a593Smuzhiyun #define CONFIG_SYS_FSL_USDHC_NUM	2
88*4882a593Smuzhiyun 
89*4882a593Smuzhiyun /* Environment organization */
90*4882a593Smuzhiyun #define CONFIG_ENV_IS_IN_SPI_FLASH
91*4882a593Smuzhiyun #define CONFIG_ENV_SIZE                (16 * 1024)
92*4882a593Smuzhiyun #define CONFIG_ENV_OFFSET		(1024 * SZ_1K)
93*4882a593Smuzhiyun #define CONFIG_ENV_SECT_SIZE		(64 * SZ_1K)
94*4882a593Smuzhiyun #define CONFIG_ENV_SPI_BUS             CONFIG_SF_DEFAULT_BUS
95*4882a593Smuzhiyun #define CONFIG_ENV_SPI_CS              CONFIG_SF_DEFAULT_CS
96*4882a593Smuzhiyun #define CONFIG_ENV_SPI_MODE            CONFIG_SF_DEFAULT_MODE
97*4882a593Smuzhiyun #define CONFIG_ENV_SPI_MAX_HZ          CONFIG_SF_DEFAULT_SPEED
98*4882a593Smuzhiyun #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
99*4882a593Smuzhiyun #define CONFIG_ENV_OFFSET_REDUND       (CONFIG_ENV_OFFSET + \
100*4882a593Smuzhiyun 						CONFIG_ENV_SECT_SIZE)
101*4882a593Smuzhiyun #define CONFIG_ENV_SIZE_REDUND         CONFIG_ENV_SIZE
102*4882a593Smuzhiyun 
103*4882a593Smuzhiyun #ifdef CONFIG_ENV_IS_IN_NAND
104*4882a593Smuzhiyun #define CONFIG_ENV_OFFSET              (0x1E0000)
105*4882a593Smuzhiyun #define CONFIG_ENV_SECT_SIZE           (128 * SZ_1K)
106*4882a593Smuzhiyun #endif
107*4882a593Smuzhiyun 
108*4882a593Smuzhiyun /* Default environment */
109*4882a593Smuzhiyun #define CONFIG_EXTRA_ENV_SETTINGS \
110*4882a593Smuzhiyun 	"addcons=setenv bootargs ${bootargs} "				\
111*4882a593Smuzhiyun 		"console=${console},${baudrate}\0"			\
112*4882a593Smuzhiyun 	"addip=setenv bootargs ${bootargs} "				\
113*4882a593Smuzhiyun 		"ip=${ipaddr}:${serverip}:${gatewayip}:"		\
114*4882a593Smuzhiyun 		"${netmask}:${hostname}:${netdev}:off\0"		\
115*4882a593Smuzhiyun 	"addmisc=setenv bootargs ${bootargs} ${miscargs}\0"		\
116*4882a593Smuzhiyun 	"addmtd=run mtdnand;run mtdspi;"				\
117*4882a593Smuzhiyun 		"setenv bootargs ${bootargs} ${mtdparts}\0"		\
118*4882a593Smuzhiyun 	"mtdnand=setenv mtdparts mtdparts=gpmi-nand:"			\
119*4882a593Smuzhiyun 		"40m(Kernels),400m(root),-(nand)\0"			\
120*4882a593Smuzhiyun 	"mtdspi=setenv mtdparts ${mtdparts}"				\
121*4882a593Smuzhiyun 		"';spi2.0:1024k(bootloader),"				\
122*4882a593Smuzhiyun 			"64k(env1),64k(env2),-(rescue)'\0"		\
123*4882a593Smuzhiyun 	"bootcmd=if test -n ${rescue};"					\
124*4882a593Smuzhiyun 		"then run swupdate;fi;run nandboot;run swupdate\0"	\
125*4882a593Smuzhiyun 	"bootfile=uImage\0"						\
126*4882a593Smuzhiyun 	"bootimage=uImage\0"						\
127*4882a593Smuzhiyun 	"console=ttymxc3\0"						\
128*4882a593Smuzhiyun 	"fdt_addr_r=0x18000000\0"					\
129*4882a593Smuzhiyun 	"fdt_file=pfla02.dtb\0"						\
130*4882a593Smuzhiyun 	"fdt_high=0xffffffff\0"						\
131*4882a593Smuzhiyun 	"initrd_high=0xffffffff\0"					\
132*4882a593Smuzhiyun 	"kernel_addr_r=" __stringify(CONFIG_LOADADDR) "\0"		\
133*4882a593Smuzhiyun 	"miscargs=panic=1 quiet\0"					\
134*4882a593Smuzhiyun 	"mmcargs=setenv bootargs root=${mmcroot} rw rootwait\0"		\
135*4882a593Smuzhiyun 	"mmcboot=if run mmcload;then "					\
136*4882a593Smuzhiyun 		"run mmcargs addcons addmisc;"				\
137*4882a593Smuzhiyun 			"bootm;fi\0"					\
138*4882a593Smuzhiyun 	"mmcload=mmc rescan;"						\
139*4882a593Smuzhiyun 		"load mmc 0:${mmcpart} ${kernel_addr_r} boot/fitImage\0"\
140*4882a593Smuzhiyun 	"mmcpart=1\0"							\
141*4882a593Smuzhiyun 	"mmcroot=/dev/mmcblk0p1\0"					\
142*4882a593Smuzhiyun 	"ubiroot=1\0"							\
143*4882a593Smuzhiyun 	"nandargs=setenv bootargs ubi.mtd=1 "				\
144*4882a593Smuzhiyun 		"root=ubi0:rootfs${ubiroot} rootfstype=ubifs\0"		\
145*4882a593Smuzhiyun 	"nandboot=run mtdnand;ubi part nand0,0;"			\
146*4882a593Smuzhiyun 		"ubi readvol ${kernel_addr_r} kernel${ubiroot};"	\
147*4882a593Smuzhiyun 		"run nandargs addip addcons addmtd addmisc;"		\
148*4882a593Smuzhiyun 		"bootm ${kernel_addr_r}\0"				\
149*4882a593Smuzhiyun 	"net_nfs=tftp ${kernel_addr_r} ${board_name}/${bootfile};"	\
150*4882a593Smuzhiyun 		"tftp ${fdt_addr_r} ${board_name}/${fdt_file};"		\
151*4882a593Smuzhiyun 		"run nfsargs addip addcons addmtd addmisc;"		\
152*4882a593Smuzhiyun 		"bootm ${kernel_addr_r} - ${fdt_addr_r}\0"		\
153*4882a593Smuzhiyun 	"net_nfs_fit=tftp ${kernel_addr_r} ${board_name}/${fitfile};"	\
154*4882a593Smuzhiyun 		"run nfsargs addip addcons addmtd addmisc;"		\
155*4882a593Smuzhiyun 		"bootm ${kernel_addr_r}\0"				\
156*4882a593Smuzhiyun 	"nfsargs=setenv bootargs root=/dev/nfs"				\
157*4882a593Smuzhiyun 		" nfsroot=${serverip}:${nfsroot},v3 panic=1\0"		\
158*4882a593Smuzhiyun 	"swupdate=setenv bootargs root=/dev/ram;"			\
159*4882a593Smuzhiyun 		"run addip addcons addmtd addmisc;"			\
160*4882a593Smuzhiyun 		"sf probe;"						\
161*4882a593Smuzhiyun 		"sf read ${kernel_addr_r} 120000 600000;"		\
162*4882a593Smuzhiyun 		"sf read 14000000 730000 800000;"			\
163*4882a593Smuzhiyun 		"bootm ${kernel_addr_r} 14000000\0"
164*4882a593Smuzhiyun 
165*4882a593Smuzhiyun #endif
166