xref: /rk3399_rockchip-uboot/include/configs/nitrogen6x.h (revision 1a4f6af8bfd44c8ae6e87a81ff125eed47042cc5)
1d67b0d97SEric Nelson /*
2d67b0d97SEric Nelson  * Copyright (C) 2010-2011 Freescale Semiconductor, Inc.
3d67b0d97SEric Nelson  *
4d67b0d97SEric Nelson  * Configuration settings for the Boundary Devices Nitrogen6X
5d67b0d97SEric Nelson  * and Freescale i.MX6Q Sabre Lite boards.
6d67b0d97SEric Nelson  *
71a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
8d67b0d97SEric Nelson  */
9d67b0d97SEric Nelson 
10d67b0d97SEric Nelson #ifndef __CONFIG_H
11d67b0d97SEric Nelson #define __CONFIG_H
12d67b0d97SEric Nelson 
1302824dc7SEric Nelson #include "mx6_common.h"
14d67b0d97SEric Nelson 
15d67b0d97SEric Nelson #define CONFIG_MACH_TYPE	3769
16d67b0d97SEric Nelson 
17d67b0d97SEric Nelson /* Size of malloc() pool */
18d67b0d97SEric Nelson #define CONFIG_SYS_MALLOC_LEN		(10 * 1024 * 1024)
19d67b0d97SEric Nelson 
20d67b0d97SEric Nelson #define CONFIG_MISC_INIT_R
21f3d7cff5STroy Kisky #define CONFIG_USBD_HS
22f3d7cff5STroy Kisky #define CONFIG_NETCONSOLE
23d67b0d97SEric Nelson 
24d67b0d97SEric Nelson #define CONFIG_MXC_UART
25d67b0d97SEric Nelson #define CONFIG_MXC_UART_BASE	       UART2_BASE
26d67b0d97SEric Nelson 
27d67b0d97SEric Nelson #ifdef CONFIG_CMD_SF
28d67b0d97SEric Nelson #define CONFIG_MXC_SPI
29d67b0d97SEric Nelson #define CONFIG_SF_DEFAULT_BUS  0
30155fa9afSNikita Kiryanov #define CONFIG_SF_DEFAULT_CS   0
31d67b0d97SEric Nelson #define CONFIG_SF_DEFAULT_SPEED 25000000
32d67b0d97SEric Nelson #define CONFIG_SF_DEFAULT_MODE (SPI_MODE_0)
33d67b0d97SEric Nelson #endif
34d67b0d97SEric Nelson 
35d67b0d97SEric Nelson /* I2C Configs */
36b089d039Strem #define CONFIG_SYS_I2C
37b089d039Strem #define CONFIG_SYS_I2C_MXC
3803544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C1		/* enable I2C bus 1 */
3903544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C2		/* enable I2C bus 2 */
40f8cb101eSYork Sun #define CONFIG_SYS_I2C_MXC_I2C3		/* enable I2C bus 3 */
41d67b0d97SEric Nelson #define CONFIG_SYS_I2C_SPEED		100000
425dbdc3cfSEric Nelson #define CONFIG_I2C_EDID
43d67b0d97SEric Nelson 
44d67b0d97SEric Nelson /* MMC Configs */
45d67b0d97SEric Nelson #define CONFIG_SYS_FSL_ESDHC_ADDR      0
46d67b0d97SEric Nelson #define CONFIG_SYS_FSL_USDHC_NUM       2
47d67b0d97SEric Nelson 
48d67b0d97SEric Nelson /*
49d67b0d97SEric Nelson  * SATA Configs
50d67b0d97SEric Nelson  */
51d67b0d97SEric Nelson #ifdef CONFIG_CMD_SATA
52d67b0d97SEric Nelson #define CONFIG_DWC_AHSATA
53d67b0d97SEric Nelson #define CONFIG_SYS_SATA_MAX_DEVICE	1
54d67b0d97SEric Nelson #define CONFIG_DWC_AHSATA_PORT_ID	0
55d67b0d97SEric Nelson #define CONFIG_DWC_AHSATA_BASE_ADDR	SATA_ARB_BASE_ADDR
56d67b0d97SEric Nelson #define CONFIG_LBA48
57d67b0d97SEric Nelson #define CONFIG_LIBATA
58d67b0d97SEric Nelson #endif
59d67b0d97SEric Nelson 
60d67b0d97SEric Nelson #define CONFIG_FEC_MXC
61d67b0d97SEric Nelson #define CONFIG_MII
62d67b0d97SEric Nelson #define IMX_FEC_BASE			ENET_BASE_ADDR
63d67b0d97SEric Nelson #define CONFIG_FEC_XCV_TYPE		RGMII
64d67b0d97SEric Nelson #define CONFIG_ETHPRIME			"FEC"
65d67b0d97SEric Nelson #define CONFIG_FEC_MXC_PHYADDR		6
66d67b0d97SEric Nelson 
67d67b0d97SEric Nelson /* USB Configs */
68d1a52860STroy Kisky #define CONFIG_USB_MAX_CONTROLLER_COUNT 2
69d1a52860STroy Kisky #define CONFIG_EHCI_HCD_INIT_AFTER_RESET	/* For OTG port */
70d67b0d97SEric Nelson #define CONFIG_MXC_USB_PORTSC	(PORT_PTS_UTMI | PORT_PTS_PTW)
71d67b0d97SEric Nelson #define CONFIG_MXC_USB_FLAGS	0
72d67b0d97SEric Nelson 
73d67b0d97SEric Nelson /* Framebuffer and LCD */
74d67b0d97SEric Nelson #define CONFIG_VIDEO_IPUV3
75d67b0d97SEric Nelson #define CONFIG_VIDEO_BMP_RLE8
76d67b0d97SEric Nelson #define CONFIG_SPLASH_SCREEN
77761bc195SEric Nelson #define CONFIG_SPLASH_SCREEN_ALIGN
78761bc195SEric Nelson #define CONFIG_VIDEO_BMP_GZIP
79761bc195SEric Nelson #define CONFIG_SYS_VIDEO_LOGO_MAX_SIZE (6 * 1024 * 1024)
80d67b0d97SEric Nelson #define CONFIG_BMP_16BPP
81d67b0d97SEric Nelson #define CONFIG_IPUV3_CLK 260000000
825ea7f0e3SPardeep Kumar Singla #define CONFIG_IMX_HDMI
83a47e4495SEric Benard #define CONFIG_IMX_VIDEO_SKIP
84d67b0d97SEric Nelson 
85d67b0d97SEric Nelson #define CONFIG_PREBOOT                 ""
86d67b0d97SEric Nelson 
87d67b0d97SEric Nelson #ifdef CONFIG_CMD_SATA
88d67b0d97SEric Nelson #define CONFIG_DRIVE_SATA "sata "
89d67b0d97SEric Nelson #else
90d67b0d97SEric Nelson #define CONFIG_DRIVE_SATA
91d67b0d97SEric Nelson #endif
92d67b0d97SEric Nelson 
93d67b0d97SEric Nelson #ifdef CONFIG_CMD_MMC
94d67b0d97SEric Nelson #define CONFIG_DRIVE_MMC "mmc "
95d67b0d97SEric Nelson #else
96d67b0d97SEric Nelson #define CONFIG_DRIVE_MMC
97d67b0d97SEric Nelson #endif
98d67b0d97SEric Nelson 
995b7103e0SDiego Rondini #ifdef CONFIG_USB_STORAGE
1005b7103e0SDiego Rondini #define CONFIG_DRIVE_USB "usb "
1015b7103e0SDiego Rondini #else
1025b7103e0SDiego Rondini #define CONFIG_DRIVE_USB
1035b7103e0SDiego Rondini #endif
1045b7103e0SDiego Rondini 
1055b7103e0SDiego Rondini #define CONFIG_DRIVE_TYPES CONFIG_DRIVE_SATA CONFIG_DRIVE_MMC CONFIG_DRIVE_USB
1068d97b3adSEric Nelson #define CONFIG_UMSDEVS CONFIG_DRIVE_SATA CONFIG_DRIVE_MMC
107d67b0d97SEric Nelson 
108f8b1e86dSFabio Estevam #if defined(CONFIG_SABRELITE)
109f8b1e86dSFabio Estevam #define CONFIG_EXTRA_ENV_SETTINGS \
110f8b1e86dSFabio Estevam 	"script=boot.scr\0" \
111f8b1e86dSFabio Estevam 	"uimage=uImage\0" \
112f8b1e86dSFabio Estevam 	"console=ttymxc1\0" \
113f8b1e86dSFabio Estevam 	"fdt_high=0xffffffff\0" \
114f8b1e86dSFabio Estevam 	"initrd_high=0xffffffff\0" \
115f8b1e86dSFabio Estevam 	"fdt_file=imx6q-sabrelite.dtb\0" \
1166584a1b5SOtavio Salvador 	"fdt_addr=0x18000000\0" \
117f8b1e86dSFabio Estevam 	"boot_fdt=try\0" \
118f8b1e86dSFabio Estevam 	"ip_dyn=yes\0" \
119*1c3e62d6SGary Bisson 	"usb_pgood_delay=2000\0" \
12005d1c245SGuillaume GARDET 	"mmcdevs=0 1\0" \
121f8b1e86dSFabio Estevam 	"mmcpart=1\0" \
122f8b1e86dSFabio Estevam 	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
123f8b1e86dSFabio Estevam 	"mmcargs=setenv bootargs console=${console},${baudrate} " \
124f8b1e86dSFabio Estevam 		"root=${mmcroot}\0" \
125f8b1e86dSFabio Estevam 	"loadbootscript=" \
1263ee96c7dSGuillaume GARDET 		"load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
127f8b1e86dSFabio Estevam 	"bootscript=echo Running bootscript from mmc ...; " \
128f8b1e86dSFabio Estevam 		"source\0" \
1293ee96c7dSGuillaume GARDET 	"loaduimage=load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
1303ee96c7dSGuillaume GARDET 	"loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
131f8b1e86dSFabio Estevam 	"mmcboot=echo Booting from mmc ...; " \
132f8b1e86dSFabio Estevam 		"run mmcargs; " \
133f8b1e86dSFabio Estevam 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
134f8b1e86dSFabio Estevam 			"if run loadfdt; then " \
135f8b1e86dSFabio Estevam 				"bootm ${loadaddr} - ${fdt_addr}; " \
136f8b1e86dSFabio Estevam 			"else " \
137f8b1e86dSFabio Estevam 				"if test ${boot_fdt} = try; then " \
138f8b1e86dSFabio Estevam 					"bootm; " \
139f8b1e86dSFabio Estevam 				"else " \
140f8b1e86dSFabio Estevam 					"echo WARN: Cannot load the DT; " \
141f8b1e86dSFabio Estevam 				"fi; " \
142f8b1e86dSFabio Estevam 			"fi; " \
143f8b1e86dSFabio Estevam 		"else " \
144f8b1e86dSFabio Estevam 			"bootm; " \
145f8b1e86dSFabio Estevam 		"fi;\0" \
146f8b1e86dSFabio Estevam 	"netargs=setenv bootargs console=${console},${baudrate} " \
147f8b1e86dSFabio Estevam 		"root=/dev/nfs " \
148f8b1e86dSFabio Estevam 	"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
149f8b1e86dSFabio Estevam 		"netboot=echo Booting from net ...; " \
150f8b1e86dSFabio Estevam 		"run netargs; " \
151f8b1e86dSFabio Estevam 		"if test ${ip_dyn} = yes; then " \
152f8b1e86dSFabio Estevam 			"setenv get_cmd dhcp; " \
153f8b1e86dSFabio Estevam 		"else " \
154f8b1e86dSFabio Estevam 			"setenv get_cmd tftp; " \
155f8b1e86dSFabio Estevam 		"fi; " \
156f8b1e86dSFabio Estevam 		"${get_cmd} ${uimage}; " \
157f8b1e86dSFabio Estevam 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
158f8b1e86dSFabio Estevam 			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
159f8b1e86dSFabio Estevam 				"bootm ${loadaddr} - ${fdt_addr}; " \
160f8b1e86dSFabio Estevam 			"else " \
161f8b1e86dSFabio Estevam 				"if test ${boot_fdt} = try; then " \
162f8b1e86dSFabio Estevam 					"bootm; " \
163f8b1e86dSFabio Estevam 				"else " \
164f8b1e86dSFabio Estevam 					"echo WARN: Cannot load the DT; " \
165f8b1e86dSFabio Estevam 				"fi; " \
166f8b1e86dSFabio Estevam 			"fi; " \
167f8b1e86dSFabio Estevam 		"else " \
168f8b1e86dSFabio Estevam 			"bootm; " \
169f8b1e86dSFabio Estevam 		"fi;\0"
170f8b1e86dSFabio Estevam 
171f8b1e86dSFabio Estevam #define CONFIG_BOOTCOMMAND \
17205d1c245SGuillaume GARDET 	"for mmcdev in ${mmcdevs}; do " \
17305d1c245SGuillaume GARDET 		"mmc dev ${mmcdev}; " \
17405d1c245SGuillaume GARDET 		"if mmc rescan; then " \
175f8b1e86dSFabio Estevam 			"if run loadbootscript; then " \
176f8b1e86dSFabio Estevam 				"run bootscript; " \
177f8b1e86dSFabio Estevam 			"else " \
178f8b1e86dSFabio Estevam 				"if run loaduimage; then " \
179f8b1e86dSFabio Estevam 					"run mmcboot; " \
180f8b1e86dSFabio Estevam 				"fi; " \
181f8b1e86dSFabio Estevam 			"fi; " \
18205d1c245SGuillaume GARDET 		"fi; " \
18305d1c245SGuillaume GARDET 	"done; " \
18405d1c245SGuillaume GARDET 	"run netboot; "
185f8b1e86dSFabio Estevam #else
186d67b0d97SEric Nelson #define CONFIG_EXTRA_ENV_SETTINGS \
1875b7103e0SDiego Rondini 	"bootdevs=" CONFIG_DRIVE_TYPES "\0" \
1888d97b3adSEric Nelson 	"umsdevs=" CONFIG_UMSDEVS "\0" \
189*1c3e62d6SGary Bisson 	"usb_pgood_delay=2000\0" \
190d67b0d97SEric Nelson 	"console=ttymxc1\0" \
191d67b0d97SEric Nelson 	"clearenv=if sf probe || sf probe || sf probe 1 ; then " \
192d67b0d97SEric Nelson 		"sf erase 0xc0000 0x2000 && " \
193d67b0d97SEric Nelson 		"echo restored environment to factory default ; fi\0" \
1945b7103e0SDiego Rondini 	"bootcmd=for dtype in ${bootdevs}" \
195d67b0d97SEric Nelson 		"; do " \
1965b7103e0SDiego Rondini 			"if itest.s \"xusb\" == \"x${dtype}\" ; then " \
1975b7103e0SDiego Rondini 				"usb start ;" \
1985b7103e0SDiego Rondini 			"fi; " \
199d67b0d97SEric Nelson 			"for disk in 0 1 ; do ${dtype} dev ${disk} ;" \
20043a3431cSKevin Mihelich 				"load " \
201d67b0d97SEric Nelson 					"${dtype} ${disk}:1 " \
202d67b0d97SEric Nelson 					"10008000 " \
203d67b0d97SEric Nelson 					"/6x_bootscript" \
204d67b0d97SEric Nelson 					"&& source 10008000 ; " \
205d67b0d97SEric Nelson 			"done ; " \
206d67b0d97SEric Nelson 		"done; " \
207d67b0d97SEric Nelson 		"setenv stdout serial,vga ; " \
208d67b0d97SEric Nelson 		"echo ; echo 6x_bootscript not found ; " \
209d67b0d97SEric Nelson 		"echo ; echo serial console at 115200, 8N1 ; echo ; " \
210d67b0d97SEric Nelson 		"echo details at http://boundarydevices.com/6q_bootscript ; " \
2118d97b3adSEric Nelson 		"setenv stdout serial;" \
2128d97b3adSEric Nelson 		"setenv stdin serial,usbkbd;" \
2138d97b3adSEric Nelson 		"for dtype in ${umsdevs} ; do " \
2148d97b3adSEric Nelson 			"if itest.s sata == ${dtype}; then " \
2158d97b3adSEric Nelson 				"initcmd='sata init' ;" \
2168d97b3adSEric Nelson 			"else " \
2178d97b3adSEric Nelson 				"initcmd='mmc rescan' ;" \
2188d97b3adSEric Nelson 			"fi; " \
2198d97b3adSEric Nelson 			"for disk in 0 1 ; do " \
2208d97b3adSEric Nelson 				"if $initcmd && $dtype dev $disk ; then " \
2218d97b3adSEric Nelson 					"setenv stdout serial,vga; " \
2228d97b3adSEric Nelson 					"echo expose ${dtype} ${disk} " \
2238d97b3adSEric Nelson 						"over USB; " \
2248d97b3adSEric Nelson 					"ums 0 $dtype $disk ;" \
2258d97b3adSEric Nelson 				"fi; " \
2268d97b3adSEric Nelson 		"	done; " \
2278d97b3adSEric Nelson 		"done ;" \
2288d97b3adSEric Nelson 		"setenv stdout serial,vga; " \
2298d97b3adSEric Nelson 		"echo no block devices found;" \
2308d97b3adSEric Nelson 		"\0" \
2318145ccc3SEric Nelson 	"initrd_high=0xffffffff\0" \
2325b7103e0SDiego Rondini 	"upgradeu=for dtype in ${bootdevs}" \
233d67b0d97SEric Nelson 		"; do " \
234d67b0d97SEric Nelson 		"for disk in 0 1 ; do ${dtype} dev ${disk} ;" \
23543a3431cSKevin Mihelich 			"load ${dtype} ${disk}:1 10008000 " \
236d67b0d97SEric Nelson 				"/6x_upgrade " \
237d67b0d97SEric Nelson 				"&& source 10008000 ; " \
238d67b0d97SEric Nelson 		"done ; " \
239d67b0d97SEric Nelson 	"done\0" \
240d67b0d97SEric Nelson 
241f8b1e86dSFabio Estevam #endif
242d67b0d97SEric Nelson /* Miscellaneous configurable options */
243d67b0d97SEric Nelson #define CONFIG_SYS_MEMTEST_START       0x10000000
244d67b0d97SEric Nelson #define CONFIG_SYS_MEMTEST_END	       0x10010000
245d67b0d97SEric Nelson #define CONFIG_SYS_MEMTEST_SCRATCH     0x10800000
246d67b0d97SEric Nelson 
247d67b0d97SEric Nelson /* Physical Memory Map */
248d67b0d97SEric Nelson #define CONFIG_NR_DRAM_BANKS	       1
249d67b0d97SEric Nelson #define PHYS_SDRAM		       MMDC0_ARB_BASE_ADDR
250d67b0d97SEric Nelson 
251d67b0d97SEric Nelson #define CONFIG_SYS_SDRAM_BASE	       PHYS_SDRAM
252d67b0d97SEric Nelson #define CONFIG_SYS_INIT_RAM_ADDR       IRAM_BASE_ADDR
253d67b0d97SEric Nelson #define CONFIG_SYS_INIT_RAM_SIZE       IRAM_SIZE
254d67b0d97SEric Nelson 
255d67b0d97SEric Nelson #define CONFIG_SYS_INIT_SP_OFFSET \
256d67b0d97SEric Nelson 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
257d67b0d97SEric Nelson #define CONFIG_SYS_INIT_SP_ADDR \
258d67b0d97SEric Nelson 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
259d67b0d97SEric Nelson 
260056845c2SPeter Robinson /* Environment organization */
261d67b0d97SEric Nelson #define CONFIG_ENV_SIZE			(8 * 1024)
262d67b0d97SEric Nelson 
263d67b0d97SEric Nelson #if defined(CONFIG_ENV_IS_IN_MMC)
264d67b0d97SEric Nelson #define CONFIG_ENV_OFFSET		(6 * 64 * 1024)
265d67b0d97SEric Nelson #define CONFIG_SYS_MMC_ENV_DEV		0
266d67b0d97SEric Nelson #elif defined(CONFIG_ENV_IS_IN_SPI_FLASH)
267d67b0d97SEric Nelson #define CONFIG_ENV_OFFSET		(768 * 1024)
268d67b0d97SEric Nelson #define CONFIG_ENV_SECT_SIZE		(8 * 1024)
269d67b0d97SEric Nelson #define CONFIG_ENV_SPI_BUS		CONFIG_SF_DEFAULT_BUS
270d67b0d97SEric Nelson #define CONFIG_ENV_SPI_CS		CONFIG_SF_DEFAULT_CS
271d67b0d97SEric Nelson #define CONFIG_ENV_SPI_MODE		CONFIG_SF_DEFAULT_MODE
272d67b0d97SEric Nelson #define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
273d67b0d97SEric Nelson #endif
274d67b0d97SEric Nelson 
275d67b0d97SEric Nelson #define CONFIG_SYS_ALT_MEMTEST
276d67b0d97SEric Nelson 
277147f8fa3SMarek Vasut /*
278147f8fa3SMarek Vasut  * PCI express
279147f8fa3SMarek Vasut  */
280147f8fa3SMarek Vasut #ifdef CONFIG_CMD_PCI
281147f8fa3SMarek Vasut #define CONFIG_PCI_SCAN_SHOW
282147f8fa3SMarek Vasut #define CONFIG_PCIE_IMX
283147f8fa3SMarek Vasut #endif
284147f8fa3SMarek Vasut 
28501acd6abSPaul Kocialkowski #define CONFIG_USB_FUNCTION_MASS_STORAGE
28684e2dc0cSEric Nelson 
287d67b0d97SEric Nelson #endif	       /* __CONFIG_H */
288