xref: /rk3399_rockchip-uboot/include/configs/mx6ul_14x14_evk.h (revision d9cbb264e8c277af0ae8c55bac01b8564dfc3f9c)
1f0ff57b0SPeng Fan /*
2f0ff57b0SPeng Fan  * Copyright (C) 2015 Freescale Semiconductor, Inc.
3f0ff57b0SPeng Fan  *
4f0ff57b0SPeng Fan  * Configuration settings for the Freescale i.MX6UL 14x14 EVK board.
5f0ff57b0SPeng Fan  *
6f0ff57b0SPeng Fan  * SPDX-License-Identifier:	GPL-2.0+
7f0ff57b0SPeng Fan  */
8f0ff57b0SPeng Fan #ifndef __MX6UL_14X14_EVK_CONFIG_H
9f0ff57b0SPeng Fan #define __MX6UL_14X14_EVK_CONFIG_H
10f0ff57b0SPeng Fan 
11f0ff57b0SPeng Fan 
12f0ff57b0SPeng Fan #include <asm/arch/imx-regs.h>
13f0ff57b0SPeng Fan #include <linux/sizes.h>
14f0ff57b0SPeng Fan #include "mx6_common.h"
15f0ff57b0SPeng Fan #include <asm/imx-common/gpio.h>
16f0ff57b0SPeng Fan 
17*d9cbb264SPeng Fan #define is_mx6ul_9x9_evk()	CONFIG_IS_ENABLED(TARGET_MX6UL_9X9_EVK)
18*d9cbb264SPeng Fan 
19f0ff57b0SPeng Fan /* SPL options */
20f0ff57b0SPeng Fan #define CONFIG_SPL_LIBCOMMON_SUPPORT
21f0ff57b0SPeng Fan #define CONFIG_SPL_MMC_SUPPORT
22f0ff57b0SPeng Fan #define CONFIG_SPL_FAT_SUPPORT
23f0ff57b0SPeng Fan #include "imx6_spl.h"
24f0ff57b0SPeng Fan 
25*d9cbb264SPeng Fan #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
26*d9cbb264SPeng Fan 
27f0ff57b0SPeng Fan #define CONFIG_ROM_UNIFIED_SECTIONS
28f0ff57b0SPeng Fan #define CONFIG_SYS_GENERIC_BOARD
29f0ff57b0SPeng Fan #define CONFIG_DISPLAY_CPUINFO
30f0ff57b0SPeng Fan #define CONFIG_DISPLAY_BOARDINFO
31f0ff57b0SPeng Fan 
32f0ff57b0SPeng Fan /* Size of malloc() pool */
33f0ff57b0SPeng Fan #define CONFIG_SYS_MALLOC_LEN		(16 * SZ_1M)
34f0ff57b0SPeng Fan 
35f0ff57b0SPeng Fan #define CONFIG_BOARD_EARLY_INIT_F
36f0ff57b0SPeng Fan #define CONFIG_BOARD_LATE_INIT
37f0ff57b0SPeng Fan 
38f0ff57b0SPeng Fan #define CONFIG_MXC_UART
39f0ff57b0SPeng Fan #define CONFIG_MXC_UART_BASE		UART1_BASE
40f0ff57b0SPeng Fan 
41f0ff57b0SPeng Fan /* MMC Configs */
42f0ff57b0SPeng Fan #ifdef CONFIG_FSL_USDHC
43f0ff57b0SPeng Fan #define CONFIG_SYS_FSL_ESDHC_ADDR	USDHC2_BASE_ADDR
44f0ff57b0SPeng Fan 
45f0ff57b0SPeng Fan /* NAND pin conflicts with usdhc2 */
46f0ff57b0SPeng Fan #ifdef CONFIG_NAND_MXS
47f0ff57b0SPeng Fan #define CONFIG_SYS_FSL_USDHC_NUM	1
48f0ff57b0SPeng Fan #else
49f0ff57b0SPeng Fan #define CONFIG_SYS_FSL_USDHC_NUM	2
50f0ff57b0SPeng Fan #endif
51f0ff57b0SPeng Fan 
52f0ff57b0SPeng Fan #define CONFIG_SUPPORT_EMMC_BOOT /* eMMC specific */
53f0ff57b0SPeng Fan #endif
54f0ff57b0SPeng Fan 
55f0ff57b0SPeng Fan #undef CONFIG_BOOTM_NETBSD
56f0ff57b0SPeng Fan #undef CONFIG_BOOTM_PLAN9
57f0ff57b0SPeng Fan #undef CONFIG_BOOTM_RTEMS
58f0ff57b0SPeng Fan 
59f0ff57b0SPeng Fan #undef CONFIG_CMD_EXPORTENV
60f0ff57b0SPeng Fan #undef CONFIG_CMD_IMPORTENV
61f0ff57b0SPeng Fan 
62f0ff57b0SPeng Fan /* I2C configs */
63f0ff57b0SPeng Fan #define CONFIG_CMD_I2C
64f0ff57b0SPeng Fan #ifdef CONFIG_CMD_I2C
65f0ff57b0SPeng Fan #define CONFIG_SYS_I2C
66f0ff57b0SPeng Fan #define CONFIG_SYS_I2C_MXC
67f0ff57b0SPeng Fan #define CONFIG_SYS_I2C_SPEED		100000
68f0ff57b0SPeng Fan 
69*d9cbb264SPeng Fan /* PMIC only for 9X9 EVK */
70*d9cbb264SPeng Fan #define CONFIG_POWER
71*d9cbb264SPeng Fan #define CONFIG_POWER_I2C
72*d9cbb264SPeng Fan #define CONFIG_POWER_PFUZE3000
73*d9cbb264SPeng Fan #define CONFIG_POWER_PFUZE3000_I2C_ADDR  0x08
74*d9cbb264SPeng Fan #endif
75f0ff57b0SPeng Fan 
76f0ff57b0SPeng Fan #undef CONFIG_CMD_IMLS
77f0ff57b0SPeng Fan 
78f0ff57b0SPeng Fan #define CONFIG_SYS_MMC_IMG_LOAD_PART	1
79f0ff57b0SPeng Fan 
80f0ff57b0SPeng Fan #define CONFIG_EXTRA_ENV_SETTINGS \
81f0ff57b0SPeng Fan 	"script=boot.scr\0" \
82f0ff57b0SPeng Fan 	"image=zImage\0" \
83f0ff57b0SPeng Fan 	"console=ttymxc0\0" \
84f0ff57b0SPeng Fan 	"fdt_high=0xffffffff\0" \
85f0ff57b0SPeng Fan 	"initrd_high=0xffffffff\0" \
86*d9cbb264SPeng Fan 	"fdt_file=undefined\0" \
87f0ff57b0SPeng Fan 	"fdt_addr=0x83000000\0" \
88f0ff57b0SPeng Fan 	"boot_fdt=try\0" \
89f0ff57b0SPeng Fan 	"ip_dyn=yes\0" \
90f0ff57b0SPeng Fan 	"mmcdev="__stringify(CONFIG_SYS_MMC_ENV_DEV)"\0" \
91f0ff57b0SPeng Fan 	"mmcpart=" __stringify(CONFIG_SYS_MMC_IMG_LOAD_PART) "\0" \
92f0ff57b0SPeng Fan 	"mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \
93f0ff57b0SPeng Fan 	"mmcautodetect=yes\0" \
94f0ff57b0SPeng Fan 	"mmcargs=setenv bootargs console=${console},${baudrate} " \
95f0ff57b0SPeng Fan 		"root=${mmcroot}\0" \
96f0ff57b0SPeng Fan 	"loadbootscript=" \
97f0ff57b0SPeng Fan 		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
98f0ff57b0SPeng Fan 	"bootscript=echo Running bootscript from mmc ...; " \
99f0ff57b0SPeng Fan 		"source\0" \
100f0ff57b0SPeng Fan 	"loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
101f0ff57b0SPeng Fan 	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
102f0ff57b0SPeng Fan 	"mmcboot=echo Booting from mmc ...; " \
103f0ff57b0SPeng Fan 		"run mmcargs; " \
104f0ff57b0SPeng Fan 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
105f0ff57b0SPeng Fan 			"if run loadfdt; then " \
106f0ff57b0SPeng Fan 				"bootz ${loadaddr} - ${fdt_addr}; " \
107f0ff57b0SPeng Fan 			"else " \
108f0ff57b0SPeng Fan 				"if test ${boot_fdt} = try; then " \
109f0ff57b0SPeng Fan 					"bootz; " \
110f0ff57b0SPeng Fan 				"else " \
111f0ff57b0SPeng Fan 					"echo WARN: Cannot load the DT; " \
112f0ff57b0SPeng Fan 				"fi; " \
113f0ff57b0SPeng Fan 			"fi; " \
114f0ff57b0SPeng Fan 		"else " \
115f0ff57b0SPeng Fan 			"bootz; " \
116f0ff57b0SPeng Fan 		"fi;\0" \
117f0ff57b0SPeng Fan 	"netargs=setenv bootargs console=${console},${baudrate} " \
118f0ff57b0SPeng Fan 		"root=/dev/nfs " \
119f0ff57b0SPeng Fan 	"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
120f0ff57b0SPeng Fan 		"netboot=echo Booting from net ...; " \
121f0ff57b0SPeng Fan 		"run netargs; " \
122f0ff57b0SPeng Fan 		"if test ${ip_dyn} = yes; then " \
123f0ff57b0SPeng Fan 			"setenv get_cmd dhcp; " \
124f0ff57b0SPeng Fan 		"else " \
125f0ff57b0SPeng Fan 			"setenv get_cmd tftp; " \
126f0ff57b0SPeng Fan 		"fi; " \
127f0ff57b0SPeng Fan 		"${get_cmd} ${image}; " \
128f0ff57b0SPeng Fan 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
129f0ff57b0SPeng Fan 			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
130f0ff57b0SPeng Fan 				"bootz ${loadaddr} - ${fdt_addr}; " \
131f0ff57b0SPeng Fan 			"else " \
132f0ff57b0SPeng Fan 				"if test ${boot_fdt} = try; then " \
133f0ff57b0SPeng Fan 					"bootz; " \
134f0ff57b0SPeng Fan 				"else " \
135f0ff57b0SPeng Fan 					"echo WARN: Cannot load the DT; " \
136f0ff57b0SPeng Fan 				"fi; " \
137f0ff57b0SPeng Fan 			"fi; " \
138f0ff57b0SPeng Fan 		"else " \
139f0ff57b0SPeng Fan 			"bootz; " \
140*d9cbb264SPeng Fan 		"fi;\0" \
141*d9cbb264SPeng Fan 		"findfdt="\
142*d9cbb264SPeng Fan 			"if test $fdt_file = undefined; then " \
143*d9cbb264SPeng Fan 				"if test $board_name = EVK && test $board_rev = 9X9; then " \
144*d9cbb264SPeng Fan 					"setenv fdt_file imx6ul-9x9-evk.dtb; fi; " \
145*d9cbb264SPeng Fan 				"if test $board_name = EVK && test $board_rev = 14X14; then " \
146*d9cbb264SPeng Fan 					"setenv fdt_file imx6ul-14x14-evk.dtb; fi; " \
147*d9cbb264SPeng Fan 				"if test $fdt_file = undefined; then " \
148*d9cbb264SPeng Fan 					"echo WARNING: Could not determine dtb to use; fi; " \
149*d9cbb264SPeng Fan 			"fi;\0" \
150f0ff57b0SPeng Fan 
151f0ff57b0SPeng Fan #define CONFIG_BOOTCOMMAND \
152*d9cbb264SPeng Fan 	   "run findfdt;" \
153f0ff57b0SPeng Fan 	   "mmc dev ${mmcdev};" \
154f0ff57b0SPeng Fan 	   "mmc dev ${mmcdev}; if mmc rescan; then " \
155f0ff57b0SPeng Fan 		   "if run loadbootscript; then " \
156f0ff57b0SPeng Fan 			   "run bootscript; " \
157f0ff57b0SPeng Fan 		   "else " \
158f0ff57b0SPeng Fan 			   "if run loadimage; then " \
159f0ff57b0SPeng Fan 				   "run mmcboot; " \
160f0ff57b0SPeng Fan 			   "else run netboot; " \
161f0ff57b0SPeng Fan 			   "fi; " \
162f0ff57b0SPeng Fan 		   "fi; " \
163f0ff57b0SPeng Fan 	   "else run netboot; fi"
164f0ff57b0SPeng Fan 
165f0ff57b0SPeng Fan /* Miscellaneous configurable options */
166f0ff57b0SPeng Fan /* Print Buffer Size */
167f0ff57b0SPeng Fan #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
168f0ff57b0SPeng Fan 
169f0ff57b0SPeng Fan #define CONFIG_CMD_MEMTEST
170f0ff57b0SPeng Fan #define CONFIG_SYS_MEMTEST_START	0x80000000
171f0ff57b0SPeng Fan #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START + 0x10000000)
172f0ff57b0SPeng Fan 
173f0ff57b0SPeng Fan #define CONFIG_SYS_LOAD_ADDR		CONFIG_LOADADDR
174f0ff57b0SPeng Fan #define CONFIG_SYS_HZ			1000
175f0ff57b0SPeng Fan 
176f0ff57b0SPeng Fan #define CONFIG_CMDLINE_EDITING
177f0ff57b0SPeng Fan #define CONFIG_STACKSIZE		SZ_128K
178f0ff57b0SPeng Fan 
179f0ff57b0SPeng Fan /* Physical Memory Map */
180f0ff57b0SPeng Fan #define CONFIG_NR_DRAM_BANKS		1
181f0ff57b0SPeng Fan #define PHYS_SDRAM			MMDC0_ARB_BASE_ADDR
182f0ff57b0SPeng Fan 
183f0ff57b0SPeng Fan #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM
184f0ff57b0SPeng Fan #define CONFIG_SYS_INIT_RAM_ADDR	IRAM_BASE_ADDR
185f0ff57b0SPeng Fan #define CONFIG_SYS_INIT_RAM_SIZE	IRAM_SIZE
186f0ff57b0SPeng Fan 
187f0ff57b0SPeng Fan #define CONFIG_SYS_INIT_SP_OFFSET \
188f0ff57b0SPeng Fan 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
189f0ff57b0SPeng Fan #define CONFIG_SYS_INIT_SP_ADDR \
190f0ff57b0SPeng Fan 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
191f0ff57b0SPeng Fan 
192f0ff57b0SPeng Fan /* FLASH and environment organization */
193f0ff57b0SPeng Fan #define CONFIG_SYS_NO_FLASH
194f0ff57b0SPeng Fan 
195f0ff57b0SPeng Fan #define CONFIG_ENV_SIZE			SZ_8K
196f0ff57b0SPeng Fan #define CONFIG_ENV_IS_IN_MMC
197f0ff57b0SPeng Fan #define CONFIG_ENV_OFFSET		(8 * SZ_64K)
198f0ff57b0SPeng Fan #define CONFIG_SYS_MMC_ENV_DEV		1   /* USDHC2 */
199f0ff57b0SPeng Fan #define CONFIG_SYS_MMC_ENV_PART		0	/* user area */
200f0ff57b0SPeng Fan #define CONFIG_MMCROOT			"/dev/mmcblk1p2"  /* USDHC2 */
201f0ff57b0SPeng Fan 
202f0ff57b0SPeng Fan #define CONFIG_OF_LIBFDT
203f0ff57b0SPeng Fan #define CONFIG_CMD_BOOTZ
204f0ff57b0SPeng Fan #define CONFIG_CMD_BMODE
205f0ff57b0SPeng Fan 
206f0ff57b0SPeng Fan #ifndef CONFIG_SYS_DCACHE_OFF
207f0ff57b0SPeng Fan #define CONFIG_CMD_CACHE
208f0ff57b0SPeng Fan #endif
209f0ff57b0SPeng Fan 
210f0ff57b0SPeng Fan #define CONFIG_FSL_QSPI
211f0ff57b0SPeng Fan #ifdef CONFIG_FSL_QSPI
212f0ff57b0SPeng Fan #define CONFIG_CMD_SF
213f0ff57b0SPeng Fan #define CONFIG_SPI_FLASH
214f0ff57b0SPeng Fan #define CONFIG_SPI_FLASH_STMICRO
215f0ff57b0SPeng Fan #define CONFIG_SPI_FLASH_BAR
216f0ff57b0SPeng Fan #define CONFIG_SF_DEFAULT_BUS		0
217f0ff57b0SPeng Fan #define CONFIG_SF_DEFAULT_CS		0
218f0ff57b0SPeng Fan #define CONFIG_SF_DEFAULT_SPEED	40000000
219f0ff57b0SPeng Fan #define CONFIG_SF_DEFAULT_MODE		SPI_MODE_0
220f0ff57b0SPeng Fan #define FSL_QSPI_FLASH_NUM		1
221f0ff57b0SPeng Fan #define FSL_QSPI_FLASH_SIZE		SZ_32M
222f0ff57b0SPeng Fan #endif
223f0ff57b0SPeng Fan 
224f0ff57b0SPeng Fan /* USB Configs */
225f0ff57b0SPeng Fan #define CONFIG_CMD_USB
226f0ff57b0SPeng Fan #ifdef CONFIG_CMD_USB
227f0ff57b0SPeng Fan #define CONFIG_USB_EHCI
228f0ff57b0SPeng Fan #define CONFIG_USB_EHCI_MX6
229f0ff57b0SPeng Fan #define CONFIG_USB_STORAGE
230f0ff57b0SPeng Fan #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
231f0ff57b0SPeng Fan #define CONFIG_MXC_USB_PORTSC  (PORT_PTS_UTMI | PORT_PTS_PTW)
232f0ff57b0SPeng Fan #define CONFIG_MXC_USB_FLAGS   0
233f0ff57b0SPeng Fan #define CONFIG_USB_MAX_CONTROLLER_COUNT 2
234f0ff57b0SPeng Fan #endif
235f0ff57b0SPeng Fan 
2360d4cdb56SPeng Fan #ifdef CONFIG_CMD_NET
2370d4cdb56SPeng Fan #define CONFIG_FEC_MXC
2380d4cdb56SPeng Fan #define CONFIG_MII
2390d4cdb56SPeng Fan #define CONFIG_FEC_ENET_DEV		1
2400d4cdb56SPeng Fan 
2410d4cdb56SPeng Fan #if (CONFIG_FEC_ENET_DEV == 0)
2420d4cdb56SPeng Fan #define IMX_FEC_BASE			ENET_BASE_ADDR
2430d4cdb56SPeng Fan #define CONFIG_FEC_MXC_PHYADDR          0x2
2440d4cdb56SPeng Fan #define CONFIG_FEC_XCV_TYPE             RMII
2450d4cdb56SPeng Fan #elif (CONFIG_FEC_ENET_DEV == 1)
2460d4cdb56SPeng Fan #define IMX_FEC_BASE			ENET2_BASE_ADDR
2470d4cdb56SPeng Fan #define CONFIG_FEC_MXC_PHYADDR		0x1
2480d4cdb56SPeng Fan #define CONFIG_FEC_XCV_TYPE		RMII
2490d4cdb56SPeng Fan #endif
2500d4cdb56SPeng Fan #define CONFIG_ETHPRIME			"FEC"
2510d4cdb56SPeng Fan 
2520d4cdb56SPeng Fan #define CONFIG_PHYLIB
2530d4cdb56SPeng Fan #define CONFIG_PHY_MICREL
2540d4cdb56SPeng Fan #define CONFIG_FEC_DMA_MINALIGN		64
2550d4cdb56SPeng Fan #endif
2560d4cdb56SPeng Fan 
2571368f993SAdrian Alonso #define CONFIG_IMX_THERMAL
258f0ff57b0SPeng Fan 
259f0ff57b0SPeng Fan #endif
260