xref: /rk3399_rockchip-uboot/include/configs/mx6sxsabresd.h (revision 3fe0b104604e267aadc8d9197097421cc02ca103)
114a16131SFabio Estevam /*
214a16131SFabio Estevam  * Copyright 2014 Freescale Semiconductor, Inc.
314a16131SFabio Estevam  *
414a16131SFabio Estevam  * Configuration settings for the Freescale i.MX6SX Sabresd board.
514a16131SFabio Estevam  *
614a16131SFabio Estevam  * SPDX-License-Identifier:	GPL-2.0+
714a16131SFabio Estevam  */
814a16131SFabio Estevam 
914a16131SFabio Estevam 
1014a16131SFabio Estevam #ifndef __CONFIG_H
1114a16131SFabio Estevam #define __CONFIG_H
1214a16131SFabio Estevam 
1314a16131SFabio Estevam #include "mx6_common.h"
1414a16131SFabio Estevam 
1571abf19bSPeng Fan #ifdef CONFIG_SPL
1671abf19bSPeng Fan #define CONFIG_SPL_LIBCOMMON_SUPPORT
1771abf19bSPeng Fan #define CONFIG_SPL_MMC_SUPPORT
1871abf19bSPeng Fan #include "imx6_spl.h"
1971abf19bSPeng Fan #endif
2071abf19bSPeng Fan 
2114a16131SFabio Estevam /* Size of malloc() pool */
2214a16131SFabio Estevam #define CONFIG_SYS_MALLOC_LEN		(3 * SZ_1M)
2314a16131SFabio Estevam 
2414a16131SFabio Estevam #define CONFIG_BOARD_EARLY_INIT_F
2514a16131SFabio Estevam 
2614a16131SFabio Estevam #define CONFIG_MXC_UART
2714a16131SFabio Estevam #define CONFIG_MXC_UART_BASE		UART1_BASE
2814a16131SFabio Estevam 
29*3fe0b104SPeng Fan #ifdef CONFIG_IMX_BOOTAUX
30*3fe0b104SPeng Fan /* Set to QSPI2 B flash at default */
31*3fe0b104SPeng Fan #define CONFIG_SYS_AUXCORE_BOOTDATA 0x78000000
32*3fe0b104SPeng Fan #define CONFIG_CMD_SETEXPR
33*3fe0b104SPeng Fan 
34*3fe0b104SPeng Fan #define UPDATE_M4_ENV \
35*3fe0b104SPeng Fan 	"m4image=m4_qspi.bin\0" \
36*3fe0b104SPeng Fan 	"loadm4image=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${m4image}\0" \
37*3fe0b104SPeng Fan 	"update_m4_from_sd=" \
38*3fe0b104SPeng Fan 		"if sf probe 1:0; then " \
39*3fe0b104SPeng Fan 			"if run loadm4image; then " \
40*3fe0b104SPeng Fan 				"setexpr fw_sz ${filesize} + 0xffff; " \
41*3fe0b104SPeng Fan 				"setexpr fw_sz ${fw_sz} / 0x10000; "	\
42*3fe0b104SPeng Fan 				"setexpr fw_sz ${fw_sz} * 0x10000; "	\
43*3fe0b104SPeng Fan 				"sf erase 0x0 ${fw_sz}; " \
44*3fe0b104SPeng Fan 				"sf write ${loadaddr} 0x0 ${filesize}; " \
45*3fe0b104SPeng Fan 			"fi; " \
46*3fe0b104SPeng Fan 		"fi\0" \
47*3fe0b104SPeng Fan 	"m4boot=sf probe 1:0; bootaux "__stringify(CONFIG_SYS_AUXCORE_BOOTDATA)"\0"
48*3fe0b104SPeng Fan #else
49*3fe0b104SPeng Fan #define UPDATE_M4_ENV ""
50*3fe0b104SPeng Fan #endif
51*3fe0b104SPeng Fan 
5214a16131SFabio Estevam #define CONFIG_EXTRA_ENV_SETTINGS \
53*3fe0b104SPeng Fan 	UPDATE_M4_ENV \
5414a16131SFabio Estevam 	"script=boot.scr\0" \
5514a16131SFabio Estevam 	"image=zImage\0" \
5614a16131SFabio Estevam 	"console=ttymxc0\0" \
5714a16131SFabio Estevam 	"fdt_high=0xffffffff\0" \
5814a16131SFabio Estevam 	"initrd_high=0xffffffff\0" \
5914a16131SFabio Estevam 	"fdt_file=imx6sx-sdb.dtb\0" \
6014a16131SFabio Estevam 	"fdt_addr=0x88000000\0" \
6114a16131SFabio Estevam 	"boot_fdt=try\0" \
6214a16131SFabio Estevam 	"ip_dyn=yes\0" \
6385eb0952SYe Li 	"videomode=video=ctfb:x:800,y:480,depth:24,pclk:29850,le:89,ri:164,up:23,lo:10,hs:10,vs:10,sync:0,vmode:0\0" \
64d0fbca2aSYe.Li 	"mmcdev=2\0" \
6514a16131SFabio Estevam 	"mmcpart=1\0" \
6614a16131SFabio Estevam 	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
6714a16131SFabio Estevam 	"mmcargs=setenv bootargs console=${console},${baudrate} " \
6814a16131SFabio Estevam 		"root=${mmcroot}\0" \
6914a16131SFabio Estevam 	"loadbootscript=" \
7014a16131SFabio Estevam 		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
7114a16131SFabio Estevam 	"bootscript=echo Running bootscript from mmc ...; " \
7214a16131SFabio Estevam 		"source\0" \
7314a16131SFabio Estevam 	"loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
7414a16131SFabio Estevam 	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
7514a16131SFabio Estevam 	"mmcboot=echo Booting from mmc ...; " \
7614a16131SFabio Estevam 		"run mmcargs; " \
7714a16131SFabio Estevam 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
7814a16131SFabio Estevam 			"if run loadfdt; then " \
7914a16131SFabio Estevam 				"bootz ${loadaddr} - ${fdt_addr}; " \
8014a16131SFabio Estevam 			"else " \
8114a16131SFabio Estevam 				"if test ${boot_fdt} = try; then " \
8214a16131SFabio Estevam 					"bootz; " \
8314a16131SFabio Estevam 				"else " \
8414a16131SFabio Estevam 					"echo WARN: Cannot load the DT; " \
8514a16131SFabio Estevam 				"fi; " \
8614a16131SFabio Estevam 			"fi; " \
8714a16131SFabio Estevam 		"else " \
8814a16131SFabio Estevam 			"bootz; " \
8914a16131SFabio Estevam 		"fi;\0" \
9014a16131SFabio Estevam 	"netargs=setenv bootargs console=${console},${baudrate} " \
9114a16131SFabio Estevam 		"root=/dev/nfs " \
9214a16131SFabio Estevam 	"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
9314a16131SFabio Estevam 		"netboot=echo Booting from net ...; " \
9414a16131SFabio Estevam 		"run netargs; " \
9514a16131SFabio Estevam 		"if test ${ip_dyn} = yes; then " \
9614a16131SFabio Estevam 			"setenv get_cmd dhcp; " \
9714a16131SFabio Estevam 		"else " \
9814a16131SFabio Estevam 			"setenv get_cmd tftp; " \
9914a16131SFabio Estevam 		"fi; " \
10014a16131SFabio Estevam 		"${get_cmd} ${image}; " \
10114a16131SFabio Estevam 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
10214a16131SFabio Estevam 			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
10314a16131SFabio Estevam 				"bootz ${loadaddr} - ${fdt_addr}; " \
10414a16131SFabio Estevam 			"else " \
10514a16131SFabio Estevam 				"if test ${boot_fdt} = try; then " \
10614a16131SFabio Estevam 					"bootz; " \
10714a16131SFabio Estevam 				"else " \
10814a16131SFabio Estevam 					"echo WARN: Cannot load the DT; " \
10914a16131SFabio Estevam 				"fi; " \
11014a16131SFabio Estevam 			"fi; " \
11114a16131SFabio Estevam 		"else " \
11214a16131SFabio Estevam 			"bootz; " \
11314a16131SFabio Estevam 		"fi;\0"
11414a16131SFabio Estevam 
11514a16131SFabio Estevam #define CONFIG_BOOTCOMMAND \
11614a16131SFabio Estevam 	   "mmc dev ${mmcdev};" \
11714a16131SFabio Estevam 	   "mmc dev ${mmcdev}; if mmc rescan; then " \
11814a16131SFabio Estevam 		   "if run loadbootscript; then " \
11914a16131SFabio Estevam 			   "run bootscript; " \
12014a16131SFabio Estevam 		   "else " \
12114a16131SFabio Estevam 			   "if run loadimage; then " \
12214a16131SFabio Estevam 				   "run mmcboot; " \
12314a16131SFabio Estevam 			   "else run netboot; " \
12414a16131SFabio Estevam 			   "fi; " \
12514a16131SFabio Estevam 		   "fi; " \
12614a16131SFabio Estevam 	   "else run netboot; fi"
12714a16131SFabio Estevam 
12814a16131SFabio Estevam /* Miscellaneous configurable options */
12914a16131SFabio Estevam #define CONFIG_SYS_MEMTEST_START	0x80000000
13014a16131SFabio Estevam #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START + 0x10000)
13114a16131SFabio Estevam 
13214a16131SFabio Estevam #define CONFIG_STACKSIZE		SZ_128K
13314a16131SFabio Estevam 
13414a16131SFabio Estevam /* Physical Memory Map */
13514a16131SFabio Estevam #define CONFIG_NR_DRAM_BANKS		1
13614a16131SFabio Estevam #define PHYS_SDRAM			MMDC0_ARB_BASE_ADDR
13714a16131SFabio Estevam #define PHYS_SDRAM_SIZE			SZ_1G
13814a16131SFabio Estevam 
13914a16131SFabio Estevam #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM
14014a16131SFabio Estevam #define CONFIG_SYS_INIT_RAM_ADDR	IRAM_BASE_ADDR
14114a16131SFabio Estevam #define CONFIG_SYS_INIT_RAM_SIZE	IRAM_SIZE
14214a16131SFabio Estevam 
14314a16131SFabio Estevam #define CONFIG_SYS_INIT_SP_OFFSET \
14414a16131SFabio Estevam 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
14514a16131SFabio Estevam #define CONFIG_SYS_INIT_SP_ADDR \
14614a16131SFabio Estevam 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
14714a16131SFabio Estevam 
14814a16131SFabio Estevam /* MMC Configuration */
149152adee1SPeng Fan #define CONFIG_SYS_FSL_ESDHC_ADDR	USDHC4_BASE_ADDR
15014a16131SFabio Estevam 
151fa8cf317SFabio Estevam /* I2C Configs */
152fa8cf317SFabio Estevam #define CONFIG_CMD_I2C
153fa8cf317SFabio Estevam #define CONFIG_SYS_I2C
154fa8cf317SFabio Estevam #define CONFIG_SYS_I2C_MXC
15503544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C1		/* enable I2C bus 1 */
15603544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C2		/* enable I2C bus 2 */
157f8cb101eSYork Sun #define CONFIG_SYS_I2C_MXC_I2C3		/* enable I2C bus 3 */
158fa8cf317SFabio Estevam #define CONFIG_SYS_I2C_SPEED		  100000
159fa8cf317SFabio Estevam 
160fa8cf317SFabio Estevam /* PMIC */
161fa8cf317SFabio Estevam #define CONFIG_POWER
162fa8cf317SFabio Estevam #define CONFIG_POWER_I2C
163fa8cf317SFabio Estevam #define CONFIG_POWER_PFUZE100
164fa8cf317SFabio Estevam #define CONFIG_POWER_PFUZE100_I2C_ADDR	0x08
165fa8cf317SFabio Estevam 
166d145878dSFabio Estevam /* Network */
167d145878dSFabio Estevam #define CONFIG_CMD_PING
168d145878dSFabio Estevam #define CONFIG_CMD_DHCP
169d145878dSFabio Estevam #define CONFIG_CMD_MII
170d145878dSFabio Estevam #define CONFIG_FEC_MXC
171d145878dSFabio Estevam #define CONFIG_MII
172d145878dSFabio Estevam 
173d145878dSFabio Estevam #define IMX_FEC_BASE			ENET_BASE_ADDR
174d145878dSFabio Estevam #define CONFIG_FEC_MXC_PHYADDR          0x1
175d145878dSFabio Estevam 
176d145878dSFabio Estevam #define CONFIG_FEC_XCV_TYPE             RGMII
177d145878dSFabio Estevam #define CONFIG_ETHPRIME                 "FEC"
178d145878dSFabio Estevam 
179d145878dSFabio Estevam #define CONFIG_PHYLIB
180d145878dSFabio Estevam #define CONFIG_PHY_ATHEROS
181d145878dSFabio Estevam 
182a511a3e0SPeng Fan 
183a511a3e0SPeng Fan #define CONFIG_CMD_USB
184a511a3e0SPeng Fan #ifdef CONFIG_CMD_USB
185a511a3e0SPeng Fan #define CONFIG_USB_EHCI
186a511a3e0SPeng Fan #define CONFIG_USB_EHCI_MX6
187a511a3e0SPeng Fan #define CONFIG_USB_STORAGE
188a511a3e0SPeng Fan #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
189a511a3e0SPeng Fan #define CONFIG_USB_HOST_ETHER
190a511a3e0SPeng Fan #define CONFIG_USB_ETHER_ASIX
191a511a3e0SPeng Fan #define CONFIG_MXC_USB_PORTSC  (PORT_PTS_UTMI | PORT_PTS_PTW)
192a511a3e0SPeng Fan #define CONFIG_MXC_USB_FLAGS   0
193a511a3e0SPeng Fan #define CONFIG_USB_MAX_CONTROLLER_COUNT 2
194a511a3e0SPeng Fan #endif
195a511a3e0SPeng Fan 
196c860eed1SFabio Estevam #define CONFIG_CMD_PCI
197c860eed1SFabio Estevam #ifdef CONFIG_CMD_PCI
198c860eed1SFabio Estevam #define CONFIG_PCI
199c860eed1SFabio Estevam #define CONFIG_PCI_PNP
200c860eed1SFabio Estevam #define CONFIG_PCI_SCAN_SHOW
201c860eed1SFabio Estevam #define CONFIG_PCIE_IMX
202fb6f86c4SFabio Estevam #define CONFIG_PCIE_IMX_PERST_GPIO	IMX_GPIO_NR(2, 0)
203fb6f86c4SFabio Estevam #define CONFIG_PCIE_IMX_POWER_GPIO	IMX_GPIO_NR(2, 1)
204c860eed1SFabio Estevam #endif
205c860eed1SFabio Estevam 
2061368f993SAdrian Alonso #define CONFIG_IMX_THERMAL
2074b16fd22SFabio Estevam 
208adc0fabfSPeng Fan #define CONFIG_CMD_TIME
209adc0fabfSPeng Fan 
210fad7d735SPeng Fan 
211fad7d735SPeng Fan #ifdef CONFIG_FSL_QSPI
212fad7d735SPeng Fan #define CONFIG_CMD_SF
213fad7d735SPeng Fan #define CONFIG_SYS_FSL_QSPI_LE
214adc0fabfSPeng Fan #define CONFIG_SYS_FSL_QSPI_AHB
215d87cbeccSPeng Fan #ifdef CONFIG_MX6SX_SABRESD_REVA
216fad7d735SPeng Fan #define FSL_QSPI_FLASH_SIZE		SZ_16M
217d87cbeccSPeng Fan #else
218d87cbeccSPeng Fan #define FSL_QSPI_FLASH_SIZE		SZ_32M
219d87cbeccSPeng Fan #endif
220fad7d735SPeng Fan #define FSL_QSPI_FLASH_NUM		2
221fad7d735SPeng Fan #endif
222fad7d735SPeng Fan 
22385eb0952SYe Li #ifndef CONFIG_SPL_BUILD
22485eb0952SYe Li #define CONFIG_VIDEO
22585eb0952SYe Li #ifdef CONFIG_VIDEO
22685eb0952SYe Li #define CONFIG_CFB_CONSOLE
22785eb0952SYe Li #define CONFIG_VIDEO_MXS
22885eb0952SYe Li #define CONFIG_VIDEO_LOGO
22985eb0952SYe Li #define CONFIG_VIDEO_SW_CURSOR
23085eb0952SYe Li #define CONFIG_VGA_AS_SINGLE_DEVICE
23185eb0952SYe Li #define CONFIG_SYS_CONSOLE_IS_IN_ENV
23285eb0952SYe Li #define CONFIG_SPLASH_SCREEN
23385eb0952SYe Li #define CONFIG_SPLASH_SCREEN_ALIGN
23485eb0952SYe Li #define CONFIG_CMD_BMP
23585eb0952SYe Li #define CONFIG_BMP_16BPP
23685eb0952SYe Li #define CONFIG_VIDEO_BMP_RLE8
23785eb0952SYe Li #define CONFIG_VIDEO_BMP_LOGO
23885eb0952SYe Li #define MXS_LCDIF_BASE MX6SX_LCDIF1_BASE_ADDR
23985eb0952SYe Li #endif
24085eb0952SYe Li #endif
24185eb0952SYe Li 
2420da040bfSYe.Li #define CONFIG_ENV_OFFSET		(8 * SZ_64K)
24314a16131SFabio Estevam #define CONFIG_ENV_SIZE			SZ_8K
24414a16131SFabio Estevam #define CONFIG_ENV_IS_IN_MMC
24514a16131SFabio Estevam 
246d0fbca2aSYe.Li #define CONFIG_SYS_FSL_USDHC_NUM	3
247d0fbca2aSYe.Li #if defined(CONFIG_ENV_IS_IN_MMC)
248d0fbca2aSYe.Li #define CONFIG_SYS_MMC_ENV_DEV		2  /*USDHC4*/
249d0fbca2aSYe.Li #endif
250d0fbca2aSYe.Li 
25114a16131SFabio Estevam #endif				/* __CONFIG_H */
252