xref: /rk3399_rockchip-uboot/include/configs/embestmx6boards.h (revision c86efd85e99464f5dfe69b6477f9b0dfd7691063)
13cbeb0f0SEric Benard /*
23cbeb0f0SEric Benard  * Copyright (C) 2014 Eukréa Electromatique
33cbeb0f0SEric Benard  * Author: Eric Bénard <eric@eukrea.com>
43cbeb0f0SEric Benard  *
53cbeb0f0SEric Benard  * Configuration settings for the Embest RIoTboard
63cbeb0f0SEric Benard  *
73cbeb0f0SEric Benard  * based on mx6*sabre*.h which are :
83cbeb0f0SEric Benard  * Copyright (C) 2012 Freescale Semiconductor, Inc.
93cbeb0f0SEric Benard  *
103cbeb0f0SEric Benard  * SPDX-License-Identifier:	GPL-2.0+
113cbeb0f0SEric Benard  */
123cbeb0f0SEric Benard 
133cbeb0f0SEric Benard #ifndef __RIOTBOARD_CONFIG_H
143cbeb0f0SEric Benard #define __RIOTBOARD_CONFIG_H
153cbeb0f0SEric Benard 
163cbeb0f0SEric Benard #include <asm/arch/imx-regs.h>
173cbeb0f0SEric Benard #include <asm/imx-common/gpio.h>
183cbeb0f0SEric Benard 
193cbeb0f0SEric Benard #include "mx6_common.h"
203cbeb0f0SEric Benard #include <linux/sizes.h>
213cbeb0f0SEric Benard 
226ed9c7bbSIain Paton #define CONFIG_SYS_GENERIC_BOARD
236ed9c7bbSIain Paton 
243cbeb0f0SEric Benard #define CONFIG_MXC_UART_BASE		UART2_BASE
25fa4a7a43SFabio Estevam #define CONFIG_CONSOLE_DEV		"ttymxc1"
263cbeb0f0SEric Benard #define CONFIG_MMCROOT			"/dev/mmcblk1p2"
273cbeb0f0SEric Benard 
283cbeb0f0SEric Benard #define PHYS_SDRAM_SIZE		(1u * 1024 * 1024 * 1024)
293cbeb0f0SEric Benard 
303cbeb0f0SEric Benard #define CONFIG_MX6
313cbeb0f0SEric Benard 
323cbeb0f0SEric Benard #define CONFIG_DISPLAY_CPUINFO
333cbeb0f0SEric Benard #define CONFIG_DISPLAY_BOARDINFO
343cbeb0f0SEric Benard 
353cbeb0f0SEric Benard #define CONFIG_CMDLINE_TAG
363cbeb0f0SEric Benard #define CONFIG_SETUP_MEMORY_TAGS
373cbeb0f0SEric Benard #define CONFIG_INITRD_TAG
383cbeb0f0SEric Benard #define CONFIG_REVISION_TAG
393cbeb0f0SEric Benard 
403cbeb0f0SEric Benard /* Size of malloc() pool */
413cbeb0f0SEric Benard #define CONFIG_SYS_MALLOC_LEN		(10 * SZ_1M)
423cbeb0f0SEric Benard 
433cbeb0f0SEric Benard #define CONFIG_BOARD_EARLY_INIT_F
443cbeb0f0SEric Benard #define CONFIG_BOARD_LATE_INIT
453cbeb0f0SEric Benard #define CONFIG_MXC_GPIO
463cbeb0f0SEric Benard 
473cbeb0f0SEric Benard #define CONFIG_MXC_UART
483cbeb0f0SEric Benard 
493cbeb0f0SEric Benard #define CONFIG_CMD_FUSE
503cbeb0f0SEric Benard #ifdef CONFIG_CMD_FUSE
513cbeb0f0SEric Benard #define CONFIG_MXC_OCOTP
523cbeb0f0SEric Benard #endif
533cbeb0f0SEric Benard 
543cbeb0f0SEric Benard /* I2C Configs */
553cbeb0f0SEric Benard #define CONFIG_CMD_I2C
563cbeb0f0SEric Benard #define CONFIG_SYS_I2C
573cbeb0f0SEric Benard #define CONFIG_SYS_I2C_MXC
583cbeb0f0SEric Benard #define CONFIG_SYS_I2C_SPEED		100000
593cbeb0f0SEric Benard 
603cbeb0f0SEric Benard /* USB Configs */
613cbeb0f0SEric Benard #define CONFIG_CMD_USB
623cbeb0f0SEric Benard #define CONFIG_USB_EHCI
633cbeb0f0SEric Benard #define CONFIG_USB_EHCI_MX6
643cbeb0f0SEric Benard #define CONFIG_USB_STORAGE
653cbeb0f0SEric Benard #define CONFIG_USB_HOST_ETHER
663cbeb0f0SEric Benard #define CONFIG_USB_ETHER_ASIX
673cbeb0f0SEric Benard #define CONFIG_USB_MAX_CONTROLLER_COUNT 2
683cbeb0f0SEric Benard #define CONFIG_EHCI_HCD_INIT_AFTER_RESET	/* For OTG port */
693cbeb0f0SEric Benard #define CONFIG_MXC_USB_PORTSC	(PORT_PTS_UTMI | PORT_PTS_PTW)
703cbeb0f0SEric Benard #define CONFIG_MXC_USB_FLAGS	0
713cbeb0f0SEric Benard 
723cbeb0f0SEric Benard /* MMC Configs */
733cbeb0f0SEric Benard #define CONFIG_FSL_ESDHC
743cbeb0f0SEric Benard #define CONFIG_FSL_USDHC
753cbeb0f0SEric Benard #define CONFIG_SYS_FSL_ESDHC_ADDR      0
763cbeb0f0SEric Benard 
773cbeb0f0SEric Benard #define CONFIG_MMC
783cbeb0f0SEric Benard #define CONFIG_CMD_MMC
793cbeb0f0SEric Benard #define CONFIG_GENERIC_MMC
803cbeb0f0SEric Benard #define CONFIG_BOUNCE_BUFFER
813cbeb0f0SEric Benard 
823cbeb0f0SEric Benard #define CONFIG_FEC_MXC
833cbeb0f0SEric Benard #define CONFIG_MII
843cbeb0f0SEric Benard #define IMX_FEC_BASE			ENET_BASE_ADDR
853cbeb0f0SEric Benard #define CONFIG_FEC_XCV_TYPE		RGMII
863cbeb0f0SEric Benard #define CONFIG_ETHPRIME			"FEC"
873cbeb0f0SEric Benard #define CONFIG_FEC_MXC_PHYADDR		4
883cbeb0f0SEric Benard 
893cbeb0f0SEric Benard #define CONFIG_PHYLIB
903cbeb0f0SEric Benard #define CONFIG_PHY_ATHEROS
913cbeb0f0SEric Benard 
923cbeb0f0SEric Benard #define CONFIG_CMD_SF
933cbeb0f0SEric Benard #ifdef CONFIG_CMD_SF
943cbeb0f0SEric Benard #define CONFIG_SPI_FLASH
953cbeb0f0SEric Benard #define CONFIG_SPI_FLASH_SST
963cbeb0f0SEric Benard #define CONFIG_MXC_SPI
973cbeb0f0SEric Benard #define CONFIG_SF_DEFAULT_BUS		0
98155fa9afSNikita Kiryanov #define CONFIG_SF_DEFAULT_CS		0
993cbeb0f0SEric Benard #define CONFIG_SF_DEFAULT_SPEED		20000000
1003cbeb0f0SEric Benard #define CONFIG_SF_DEFAULT_MODE		SPI_MODE_0
1013cbeb0f0SEric Benard #endif
1023cbeb0f0SEric Benard 
1033cbeb0f0SEric Benard /* allow to overwrite serial and ethaddr */
1043cbeb0f0SEric Benard #define CONFIG_ENV_OVERWRITE
1053cbeb0f0SEric Benard #define CONFIG_CONS_INDEX              1
1063cbeb0f0SEric Benard #define CONFIG_BAUDRATE                        115200
1073cbeb0f0SEric Benard 
1083cbeb0f0SEric Benard /* Command definition */
1093cbeb0f0SEric Benard #include <config_cmd_default.h>
110729d2a34SIain Paton #undef CONFIG_CMD_FPGA
1113cbeb0f0SEric Benard 
1123cbeb0f0SEric Benard #define CONFIG_CMD_BMODE
1133cbeb0f0SEric Benard #define CONFIG_CMD_SETEXPR
1143cbeb0f0SEric Benard #undef CONFIG_CMD_IMLS
1153cbeb0f0SEric Benard 
1163cbeb0f0SEric Benard #define CONFIG_LOADADDR                        0x12000000
1173cbeb0f0SEric Benard #define CONFIG_SYS_TEXT_BASE           0x17800000
1183cbeb0f0SEric Benard 
1193cbeb0f0SEric Benard #define CONFIG_ARP_TIMEOUT     200UL
1203cbeb0f0SEric Benard 
1213cbeb0f0SEric Benard /* Miscellaneous configurable options */
1223cbeb0f0SEric Benard #define CONFIG_SYS_PROMPT_HUSH_PS2     "> "
1233cbeb0f0SEric Benard #define CONFIG_SYS_CBSIZE              256
1243cbeb0f0SEric Benard 
1253cbeb0f0SEric Benard /* Print Buffer Size */
1263cbeb0f0SEric Benard #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
1273cbeb0f0SEric Benard #define CONFIG_SYS_MAXARGS             16
1283cbeb0f0SEric Benard #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
1293cbeb0f0SEric Benard 
1303cbeb0f0SEric Benard #define CONFIG_SYS_MEMTEST_START       0x10000000
1313cbeb0f0SEric Benard #define CONFIG_SYS_MEMTEST_END         0x10010000
1323cbeb0f0SEric Benard #define CONFIG_SYS_MEMTEST_SCRATCH     0x10800000
1333cbeb0f0SEric Benard 
1343cbeb0f0SEric Benard #define CONFIG_SYS_LOAD_ADDR           CONFIG_LOADADDR
1353cbeb0f0SEric Benard 
1363cbeb0f0SEric Benard #define CONFIG_STACKSIZE               (128 * 1024)
1373cbeb0f0SEric Benard 
1383cbeb0f0SEric Benard /* Physical Memory Map */
1393cbeb0f0SEric Benard #define CONFIG_NR_DRAM_BANKS           1
1403cbeb0f0SEric Benard #define PHYS_SDRAM                     MMDC0_ARB_BASE_ADDR
1413cbeb0f0SEric Benard 
1423cbeb0f0SEric Benard #define CONFIG_SYS_SDRAM_BASE          PHYS_SDRAM
1433cbeb0f0SEric Benard #define CONFIG_SYS_INIT_RAM_ADDR       IRAM_BASE_ADDR
1443cbeb0f0SEric Benard #define CONFIG_SYS_INIT_RAM_SIZE       IRAM_SIZE
1453cbeb0f0SEric Benard 
1463cbeb0f0SEric Benard #define CONFIG_SYS_INIT_SP_OFFSET \
1473cbeb0f0SEric Benard 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
1483cbeb0f0SEric Benard #define CONFIG_SYS_INIT_SP_ADDR \
1493cbeb0f0SEric Benard 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
1503cbeb0f0SEric Benard 
1513cbeb0f0SEric Benard /* FLASH and environment organization */
1523cbeb0f0SEric Benard #define CONFIG_SYS_NO_FLASH
1533cbeb0f0SEric Benard 
1543cbeb0f0SEric Benard #define CONFIG_ENV_SIZE			(8 * 1024)
1553cbeb0f0SEric Benard 
1563cbeb0f0SEric Benard #if defined(CONFIG_ENV_IS_IN_MMC)
1573cbeb0f0SEric Benard /* RiOTboard */
158*c86efd85SIain Paton #define CONFIG_FDTFILE	"imx6dl-riotboard.dtb"
1593cbeb0f0SEric Benard #define CONFIG_SYS_FSL_USDHC_NUM	3
1603cbeb0f0SEric Benard #define CONFIG_SYS_MMC_ENV_DEV		2	/* SDHC4 */
1613cbeb0f0SEric Benard #define CONFIG_ENV_OFFSET		(6 * 64 * 1024)
1623cbeb0f0SEric Benard #define CONFIG_SUPPORT_EMMC_BOOT /* eMMC specific */
1633cbeb0f0SEric Benard #elif defined(CONFIG_ENV_IS_IN_SPI_FLASH)
1643cbeb0f0SEric Benard /* MarSBoard */
165*c86efd85SIain Paton #define CONFIG_FDTFILE	"imx6q-marsboard.dtb"
1663cbeb0f0SEric Benard #define CONFIG_SYS_FSL_USDHC_NUM	2
1673cbeb0f0SEric Benard #define CONFIG_ENV_OFFSET		(768 * 1024)
1683cbeb0f0SEric Benard #define CONFIG_ENV_SECT_SIZE		(8 * 1024)
1693cbeb0f0SEric Benard #define CONFIG_ENV_SPI_BUS		CONFIG_SF_DEFAULT_BUS
1703cbeb0f0SEric Benard #define CONFIG_ENV_SPI_CS		CONFIG_SF_DEFAULT_CS
1713cbeb0f0SEric Benard #define CONFIG_ENV_SPI_MODE		CONFIG_SF_DEFAULT_MODE
1723cbeb0f0SEric Benard #define CONFIG_ENV_SPI_MAX_HZ		CONFIG_SF_DEFAULT_SPEED
1733cbeb0f0SEric Benard #endif
1743cbeb0f0SEric Benard 
1753cbeb0f0SEric Benard #ifndef CONFIG_SYS_DCACHE_OFF
1763cbeb0f0SEric Benard #define CONFIG_CMD_CACHE
1773cbeb0f0SEric Benard #endif
1783cbeb0f0SEric Benard 
1793cbeb0f0SEric Benard /* Framebuffer */
1803cbeb0f0SEric Benard #define CONFIG_VIDEO
1813cbeb0f0SEric Benard #define CONFIG_VIDEO_IPUV3
1823cbeb0f0SEric Benard #define CONFIG_CFB_CONSOLE
1833cbeb0f0SEric Benard #define CONFIG_VGA_AS_SINGLE_DEVICE
1843cbeb0f0SEric Benard #define CONFIG_SYS_CONSOLE_IS_IN_ENV
1853cbeb0f0SEric Benard #define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE
1863cbeb0f0SEric Benard #define CONFIG_VIDEO_BMP_RLE8
1873cbeb0f0SEric Benard #define CONFIG_SPLASH_SCREEN
1883cbeb0f0SEric Benard #define CONFIG_SPLASH_SCREEN_ALIGN
1893cbeb0f0SEric Benard #define CONFIG_BMP_16BPP
1903cbeb0f0SEric Benard #define CONFIG_VIDEO_LOGO
1913cbeb0f0SEric Benard #define CONFIG_VIDEO_BMP_LOGO
1923cbeb0f0SEric Benard #define CONFIG_IPUV3_CLK 260000000
1933cbeb0f0SEric Benard #define CONFIG_IMX_HDMI
1943cbeb0f0SEric Benard #define CONFIG_IMX_VIDEO_SKIP
1953cbeb0f0SEric Benard 
196729d2a34SIain Paton #include <config_distro_defaults.h>
197729d2a34SIain Paton 
198*c86efd85SIain Paton /* 256M RAM (minimum), 32M uncompressed kernel, 16M compressed kernel, 1M fdt,
199*c86efd85SIain Paton  * 1M script, 1M pxe and the ramdisk at the end */
200*c86efd85SIain Paton #define MEM_LAYOUT_ENV_SETTINGS \
201*c86efd85SIain Paton 	"bootm_size=0x10000000\0" \
202*c86efd85SIain Paton 	"kernel_addr_r=0x12000000\0" \
203*c86efd85SIain Paton 	"fdt_addr_r=0x13000000\0" \
204*c86efd85SIain Paton 	"scriptaddr=0x13100000\0" \
205*c86efd85SIain Paton 	"pxefile_addr_r=0x13200000\0" \
206*c86efd85SIain Paton 	"ramdisk_addr_r=0x13300000\0"
207*c86efd85SIain Paton 
208*c86efd85SIain Paton #define BOOT_TARGET_DEVICES(func) \
209*c86efd85SIain Paton 	func(MMC, mmc, 0) \
210*c86efd85SIain Paton 	func(MMC, mmc, 1) \
211*c86efd85SIain Paton 	func(MMC, mmc, 2) \
212*c86efd85SIain Paton 	func(USB, usb, 0) \
213*c86efd85SIain Paton 	func(PXE, pxe, na) \
214*c86efd85SIain Paton 	func(DHCP, dhcp, na)
215*c86efd85SIain Paton 
216*c86efd85SIain Paton #include <config_distro_bootcmd.h>
217*c86efd85SIain Paton 
218*c86efd85SIain Paton #define CONSOLE_STDIN_SETTINGS \
219*c86efd85SIain Paton 	"stdin=serial\0"
220*c86efd85SIain Paton 
221*c86efd85SIain Paton #define CONSOLE_STDOUT_SETTINGS \
222*c86efd85SIain Paton 	"stdout=serial\0" \
223*c86efd85SIain Paton 	"stderr=serial\0"
224*c86efd85SIain Paton 
225*c86efd85SIain Paton #define CONSOLE_ENV_SETTINGS \
226*c86efd85SIain Paton 	CONSOLE_STDIN_SETTINGS \
227*c86efd85SIain Paton 	CONSOLE_STDOUT_SETTINGS
228*c86efd85SIain Paton 
229*c86efd85SIain Paton #define CONFIG_EXTRA_ENV_SETTINGS \
230*c86efd85SIain Paton 	CONSOLE_ENV_SETTINGS \
231*c86efd85SIain Paton 	MEM_LAYOUT_ENV_SETTINGS \
232*c86efd85SIain Paton 	"fdtfile=" CONFIG_FDTFILE "\0" \
233*c86efd85SIain Paton 	BOOTENV
234*c86efd85SIain Paton 
2353cbeb0f0SEric Benard #endif                         /* __RIOTBOARD_CONFIG_H */
236