xref: /rk3399_rockchip-uboot/include/configs/advantech_dms-ba16.h (revision e090579d0a2d1aa38eab94b98877de9bcdd4f31d)
1ff383220SAkshay Bhat /*
2ff383220SAkshay Bhat  * Copyright (C) 2016 Timesys Corporation
3ff383220SAkshay Bhat  * Copyright (C) 2016 Advantech Corporation
4ff383220SAkshay Bhat  * Copyright (C) 2012 Freescale Semiconductor, Inc.
5ff383220SAkshay Bhat  *
6ff383220SAkshay Bhat  * SPDX-License-Identifier:	GPL-2.0+
7ff383220SAkshay Bhat  */
8ff383220SAkshay Bhat 
9ff383220SAkshay Bhat #ifndef __ADVANTECH_DMSBA16_CONFIG_H
10ff383220SAkshay Bhat #define __ADVANTECH_DMSBA16_CONFIG_H
11ff383220SAkshay Bhat 
12ff383220SAkshay Bhat #include <asm/arch/imx-regs.h>
13*552a848eSStefano Babic #include <asm/mach-imx/gpio.h>
14ff383220SAkshay Bhat 
15ff383220SAkshay Bhat #define CONFIG_BOARD_NAME	"Advantech DMS-BA16"
16ff383220SAkshay Bhat 
17ff383220SAkshay Bhat #define CONFIG_MXC_UART_BASE	UART4_BASE
1812ca05a3SSimon Glass #define CONSOLE_DEV	"ttymxc3"
19ff383220SAkshay Bhat #define CONFIG_EXTRA_BOOTARGS	"panic=10"
20ff383220SAkshay Bhat 
21ff383220SAkshay Bhat #define CONFIG_BOOT_DIR	""
22ff383220SAkshay Bhat #define CONFIG_LOADCMD "fatload"
23ff383220SAkshay Bhat #define CONFIG_RFSPART "2"
24ff383220SAkshay Bhat 
25ff383220SAkshay Bhat #define CONFIG_SUPPORT_EMMC_BOOT
26ff383220SAkshay Bhat 
27ff383220SAkshay Bhat #include "mx6_common.h"
28ff383220SAkshay Bhat #include <linux/sizes.h>
29ff383220SAkshay Bhat 
30ff383220SAkshay Bhat #define CONFIG_CMDLINE_TAG
31ff383220SAkshay Bhat #define CONFIG_SETUP_MEMORY_TAGS
32ff383220SAkshay Bhat #define CONFIG_INITRD_TAG
33ff383220SAkshay Bhat #define CONFIG_REVISION_TAG
34ff383220SAkshay Bhat #define CONFIG_SYS_MALLOC_LEN		(10 * SZ_1M)
35ff383220SAkshay Bhat 
36ff383220SAkshay Bhat #define CONFIG_MXC_GPIO
37ff383220SAkshay Bhat #define CONFIG_MXC_UART
38ff383220SAkshay Bhat 
39ff383220SAkshay Bhat #define CONFIG_MXC_OCOTP
40ff383220SAkshay Bhat 
41ff383220SAkshay Bhat /* SATA Configs */
42ff383220SAkshay Bhat #define CONFIG_DWC_AHSATA
43ff383220SAkshay Bhat #define CONFIG_SYS_SATA_MAX_DEVICE	1
44ff383220SAkshay Bhat #define CONFIG_DWC_AHSATA_PORT_ID	0
45ff383220SAkshay Bhat #define CONFIG_DWC_AHSATA_BASE_ADDR	SATA_ARB_BASE_ADDR
46ff383220SAkshay Bhat #define CONFIG_LBA48
47ff383220SAkshay Bhat #define CONFIG_LIBATA
48ff383220SAkshay Bhat 
49ff383220SAkshay Bhat /* MMC Configs */
50ff383220SAkshay Bhat #define CONFIG_FSL_ESDHC
51ff383220SAkshay Bhat #define CONFIG_FSL_USDHC
52ff383220SAkshay Bhat #define CONFIG_SYS_FSL_ESDHC_ADDR      0
53ff383220SAkshay Bhat #define CONFIG_BOUNCE_BUFFER
54ff383220SAkshay Bhat 
55ff383220SAkshay Bhat /* USB Configs */
56ff383220SAkshay Bhat #define CONFIG_USB_MAX_CONTROLLER_COUNT 2
57ff383220SAkshay Bhat #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
58ff383220SAkshay Bhat #define CONFIG_MXC_USB_PORTSC	(PORT_PTS_UTMI | PORT_PTS_PTW)
59ff383220SAkshay Bhat #define CONFIG_MXC_USB_FLAGS	0
60ff383220SAkshay Bhat 
61ff383220SAkshay Bhat #define CONFIG_USBD_HS
62ff383220SAkshay Bhat #define CONFIG_USB_FUNCTION_MASS_STORAGE
63ff383220SAkshay Bhat 
64ff383220SAkshay Bhat /* Networking Configs */
65ff383220SAkshay Bhat #define CONFIG_FEC_MXC
66ff383220SAkshay Bhat #define CONFIG_MII
67ff383220SAkshay Bhat #define IMX_FEC_BASE			ENET_BASE_ADDR
68ff383220SAkshay Bhat #define CONFIG_FEC_XCV_TYPE		RGMII
69ff383220SAkshay Bhat #define CONFIG_ETHPRIME		"FEC"
70ff383220SAkshay Bhat #define CONFIG_FEC_MXC_PHYADDR		4
71ff383220SAkshay Bhat #define CONFIG_PHY_ATHEROS
72ff383220SAkshay Bhat 
73ff383220SAkshay Bhat /* Serial Flash */
74ff383220SAkshay Bhat #ifdef CONFIG_CMD_SF
75ff383220SAkshay Bhat #define CONFIG_MXC_SPI
76ff383220SAkshay Bhat #define CONFIG_SF_DEFAULT_BUS		0
77ff383220SAkshay Bhat #define CONFIG_SF_DEFAULT_CS		0
78ff383220SAkshay Bhat #define CONFIG_SF_DEFAULT_SPEED	20000000
79ff383220SAkshay Bhat #define CONFIG_SF_DEFAULT_MODE		SPI_MODE_0
80ff383220SAkshay Bhat #endif
81ff383220SAkshay Bhat 
82ff383220SAkshay Bhat /* allow to overwrite serial and ethaddr */
83ff383220SAkshay Bhat #define CONFIG_ENV_OVERWRITE
84ff383220SAkshay Bhat #define CONFIG_CONS_INDEX	1
85ff383220SAkshay Bhat 
86ff383220SAkshay Bhat #define CONFIG_LOADADDR	0x12000000
87ff383220SAkshay Bhat #define CONFIG_SYS_TEXT_BASE	0x17800000
88ff383220SAkshay Bhat 
89ff383220SAkshay Bhat #define CONFIG_EXTRA_ENV_SETTINGS \
90ff383220SAkshay Bhat 	"script=boot.scr\0" \
91ff383220SAkshay Bhat 	"image=" CONFIG_BOOT_DIR "/uImage\0" \
92ff383220SAkshay Bhat 	"uboot=u-boot.imx\0" \
93ff383220SAkshay Bhat 	"fdt_file=" CONFIG_BOOT_DIR "/" CONFIG_DEFAULT_FDT_FILE "\0" \
94ff383220SAkshay Bhat 	"fdt_addr=0x18000000\0" \
95ff383220SAkshay Bhat 	"boot_fdt=yes\0" \
96ff383220SAkshay Bhat 	"ip_dyn=yes\0" \
9712ca05a3SSimon Glass 	"console=" CONSOLE_DEV "\0" \
98ff383220SAkshay Bhat 	"fdt_high=0xffffffff\0"	  \
99ff383220SAkshay Bhat 	"initrd_high=0xffffffff\0" \
100ff383220SAkshay Bhat 	"sddev=0\0" \
101ff383220SAkshay Bhat 	"emmcdev=1\0" \
102ff383220SAkshay Bhat 	"partnum=1\0" \
103ff383220SAkshay Bhat 	"loadcmd=" CONFIG_LOADCMD "\0" \
104ff383220SAkshay Bhat 	"rfspart=" CONFIG_RFSPART "\0" \
105ff383220SAkshay Bhat 	"update_sd_firmware=" \
106ff383220SAkshay Bhat 		"if test ${ip_dyn} = yes; then " \
107ff383220SAkshay Bhat 			"setenv get_cmd dhcp; " \
108ff383220SAkshay Bhat 		"else " \
109ff383220SAkshay Bhat 			"setenv get_cmd tftp; " \
110ff383220SAkshay Bhat 		"fi; " \
111ff383220SAkshay Bhat 		"if mmc dev ${mmcdev}; then "	\
112ff383220SAkshay Bhat 			"if ${get_cmd} ${update_sd_firmware_filename}; then " \
113ff383220SAkshay Bhat 				"setexpr fw_sz ${filesize} / 0x200; " \
114ff383220SAkshay Bhat 				"setexpr fw_sz ${fw_sz} + 1; "	\
115ff383220SAkshay Bhat 				"mmc write ${loadaddr} 0x2 ${fw_sz}; " \
116ff383220SAkshay Bhat 			"fi; "	\
117ff383220SAkshay Bhat 		"fi\0" \
118ff383220SAkshay Bhat 	"update_sf_uboot=" \
119ff383220SAkshay Bhat 		"if tftp $loadaddr $uboot; then " \
120ff383220SAkshay Bhat 			"sf probe; " \
121ff383220SAkshay Bhat 			"sf erase 0 0xC0000; " \
122ff383220SAkshay Bhat 			"sf write $loadaddr 0x400 $filesize; " \
123ff383220SAkshay Bhat 			"echo 'U-Boot upgraded. Please reset'; " \
124ff383220SAkshay Bhat 		"fi\0" \
125ff383220SAkshay Bhat 	"setargs=setenv bootargs console=${console},${baudrate} " \
126ff383220SAkshay Bhat 		"root=/dev/${rootdev} rw rootwait " CONFIG_EXTRA_BOOTARGS "\0" \
127ff383220SAkshay Bhat 	"loadbootscript=" \
128ff383220SAkshay Bhat 		"${loadcmd} ${dev} ${devnum}:${partnum} ${loadaddr} ${script};\0" \
129ff383220SAkshay Bhat 	"bootscript=echo Running bootscript from ${dev}:${devnum}:${partnum};" \
130ff383220SAkshay Bhat 		" source\0" \
131ff383220SAkshay Bhat 	"loadimage=" \
132ff383220SAkshay Bhat 		"${loadcmd} ${dev} ${devnum}:${partnum} ${loadaddr} ${image}\0" \
133ff383220SAkshay Bhat 	"loadfdt=${loadcmd} ${dev} ${devnum}:${partnum} ${fdt_addr} ${fdt_file}\0" \
134ff383220SAkshay Bhat 	"tryboot=" \
135ff383220SAkshay Bhat 		"if run loadbootscript; then " \
136ff383220SAkshay Bhat 			"run bootscript; " \
137ff383220SAkshay Bhat 		"else " \
138ff383220SAkshay Bhat 			"if run loadimage; then " \
139ff383220SAkshay Bhat 				"run doboot; " \
140ff383220SAkshay Bhat 			"fi; " \
141ff383220SAkshay Bhat 		"fi;\0" \
142ff383220SAkshay Bhat 	"doboot=echo Booting from ${dev}:${devnum}:${partnum} ...; " \
143ff383220SAkshay Bhat 		"run setargs; " \
144ff383220SAkshay Bhat 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
145ff383220SAkshay Bhat 			"if run loadfdt; then " \
146ff383220SAkshay Bhat 				"bootm ${loadaddr} - ${fdt_addr}; " \
147ff383220SAkshay Bhat 			"else " \
148ff383220SAkshay Bhat 				"if test ${boot_fdt} = try; then " \
149ff383220SAkshay Bhat 					"bootm; " \
150ff383220SAkshay Bhat 				"else " \
151ff383220SAkshay Bhat 					"echo WARN: Cannot load the DT; " \
152ff383220SAkshay Bhat 				"fi; " \
153ff383220SAkshay Bhat 			"fi; " \
154ff383220SAkshay Bhat 		"else " \
155ff383220SAkshay Bhat 			"bootm; " \
156ff383220SAkshay Bhat 		"fi;\0" \
157ff383220SAkshay Bhat 	"netargs=setenv bootargs console=${console},${baudrate} " \
158ff383220SAkshay Bhat 		"root=/dev/nfs " \
159ff383220SAkshay Bhat 		"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
160ff383220SAkshay Bhat 	"netboot=echo Booting from net ...; " \
161ff383220SAkshay Bhat 		"run netargs; " \
162ff383220SAkshay Bhat 		"if test ${ip_dyn} = yes; then " \
163ff383220SAkshay Bhat 			"setenv get_cmd dhcp; " \
164ff383220SAkshay Bhat 		"else " \
165ff383220SAkshay Bhat 			"setenv get_cmd tftp; " \
166ff383220SAkshay Bhat 		"fi; " \
167ff383220SAkshay Bhat 		"${get_cmd} ${image}; " \
168ff383220SAkshay Bhat 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
169ff383220SAkshay Bhat 			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
170ff383220SAkshay Bhat 				"bootm ${loadaddr} - ${fdt_addr}; " \
171ff383220SAkshay Bhat 			"else " \
172ff383220SAkshay Bhat 				"if test ${boot_fdt} = try; then " \
173ff383220SAkshay Bhat 					"bootm; " \
174ff383220SAkshay Bhat 				"else " \
175ff383220SAkshay Bhat 					"echo WARN: Cannot load the DT; " \
176ff383220SAkshay Bhat 				"fi; " \
177ff383220SAkshay Bhat 			"fi; " \
178ff383220SAkshay Bhat 		"else " \
179ff383220SAkshay Bhat 			"bootm; " \
180ff383220SAkshay Bhat 		"fi;\0" \
181ff383220SAkshay Bhat 
182ff383220SAkshay Bhat #define CONFIG_BOOTCOMMAND \
183ff383220SAkshay Bhat 	"usb start; " \
184ff383220SAkshay Bhat 	"setenv dev usb; " \
185ff383220SAkshay Bhat 	"setenv devnum 0; " \
186ff383220SAkshay Bhat 	"setenv rootdev sda${rfspart}; " \
187ff383220SAkshay Bhat 	"run tryboot; " \
188ff383220SAkshay Bhat 	\
189ff383220SAkshay Bhat 	"setenv dev mmc; " \
190ff383220SAkshay Bhat 	"setenv rootdev mmcblk0p${rfspart}; " \
191ff383220SAkshay Bhat 	\
192ff383220SAkshay Bhat 	"setenv devnum ${sddev}; " \
193ff383220SAkshay Bhat 	"if mmc dev ${devnum}; then " \
194ff383220SAkshay Bhat 		"run tryboot; " \
195ff383220SAkshay Bhat 	"fi; " \
196ff383220SAkshay Bhat 	\
197ff383220SAkshay Bhat 	"setenv devnum ${emmcdev}; " \
198ff383220SAkshay Bhat 	"setenv rootdev mmcblk${emmcdev}p${rfspart}; " \
199ff383220SAkshay Bhat 	"if mmc dev ${devnum}; then " \
200ff383220SAkshay Bhat 		"run tryboot; " \
201ff383220SAkshay Bhat 	"fi; " \
202ff383220SAkshay Bhat 	\
203ff383220SAkshay Bhat 	"bmode usb; " \
204ff383220SAkshay Bhat 
205ff383220SAkshay Bhat #define CONFIG_ARP_TIMEOUT     200UL
206ff383220SAkshay Bhat 
207ff383220SAkshay Bhat /* Miscellaneous configurable options */
208ff383220SAkshay Bhat #define CONFIG_SYS_LONGHELP
209ff383220SAkshay Bhat #define CONFIG_AUTO_COMPLETE
210ff383220SAkshay Bhat 
211ff383220SAkshay Bhat #define CONFIG_SYS_MEMTEST_START       0x10000000
212ff383220SAkshay Bhat #define CONFIG_SYS_MEMTEST_END         0x10010000
213ff383220SAkshay Bhat #define CONFIG_SYS_MEMTEST_SCRATCH     0x10800000
214ff383220SAkshay Bhat 
215ff383220SAkshay Bhat #define CONFIG_SYS_LOAD_ADDR           CONFIG_LOADADDR
216ff383220SAkshay Bhat 
217ff383220SAkshay Bhat #define CONFIG_CMDLINE_EDITING
218ff383220SAkshay Bhat 
219ff383220SAkshay Bhat /* Physical Memory Map */
220ff383220SAkshay Bhat #define CONFIG_NR_DRAM_BANKS           1
221ff383220SAkshay Bhat #define PHYS_SDRAM                     MMDC0_ARB_BASE_ADDR
222ff383220SAkshay Bhat 
223ff383220SAkshay Bhat #define CONFIG_SYS_SDRAM_BASE          PHYS_SDRAM
224ff383220SAkshay Bhat #define CONFIG_SYS_INIT_RAM_ADDR       IRAM_BASE_ADDR
225ff383220SAkshay Bhat #define CONFIG_SYS_INIT_RAM_SIZE       IRAM_SIZE
226ff383220SAkshay Bhat 
227ff383220SAkshay Bhat #define CONFIG_SYS_INIT_SP_OFFSET \
228ff383220SAkshay Bhat 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
229ff383220SAkshay Bhat #define CONFIG_SYS_INIT_SP_ADDR \
230ff383220SAkshay Bhat 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
231ff383220SAkshay Bhat 
232ff383220SAkshay Bhat /* FLASH and environment organization */
233ff383220SAkshay Bhat 
234ff383220SAkshay Bhat #define CONFIG_ENV_SIZE                 (8 * 1024)
235ff383220SAkshay Bhat #define CONFIG_ENV_OFFSET               (768 * 1024)
236ff383220SAkshay Bhat #define CONFIG_ENV_SECT_SIZE            (64 * 1024)
237ff383220SAkshay Bhat #define CONFIG_ENV_SPI_BUS              CONFIG_SF_DEFAULT_BUS
238ff383220SAkshay Bhat #define CONFIG_ENV_SPI_CS               CONFIG_SF_DEFAULT_CS
239ff383220SAkshay Bhat #define CONFIG_ENV_SPI_MODE             CONFIG_SF_DEFAULT_MODE
240ff383220SAkshay Bhat #define CONFIG_ENV_SPI_MAX_HZ           CONFIG_SF_DEFAULT_SPEED
241ff383220SAkshay Bhat 
242ff383220SAkshay Bhat #ifndef CONFIG_SYS_DCACHE_OFF
243ff383220SAkshay Bhat #endif
244ff383220SAkshay Bhat 
245ff383220SAkshay Bhat #define CONFIG_SYS_FSL_USDHC_NUM        3
246ff383220SAkshay Bhat 
247ff383220SAkshay Bhat /* Framebuffer */
248f6f7e73dSYung-Ching LIN #ifdef CONFIG_VIDEO
249ff383220SAkshay Bhat #define CONFIG_VIDEO_IPUV3
250ff383220SAkshay Bhat #define CONFIG_VIDEO_BMP_RLE8
251ff383220SAkshay Bhat #define CONFIG_SPLASH_SCREEN
252ff383220SAkshay Bhat #define CONFIG_SPLASH_SCREEN_ALIGN
253ff383220SAkshay Bhat #define CONFIG_BMP_16BPP
254ff383220SAkshay Bhat #define CONFIG_VIDEO_LOGO
255ff383220SAkshay Bhat #define CONFIG_VIDEO_BMP_LOGO
256ff383220SAkshay Bhat #define CONFIG_IPUV3_CLK                260000000
257ff383220SAkshay Bhat #define CONFIG_IMX_HDMI
258ff383220SAkshay Bhat #define CONFIG_IMX_VIDEO_SKIP
259f6f7e73dSYung-Ching LIN #endif
260ff383220SAkshay Bhat 
261ff383220SAkshay Bhat #define CONFIG_PWM_IMX
262ff383220SAkshay Bhat #define CONFIG_IMX6_PWM_PER_CLK         66000000
263ff383220SAkshay Bhat 
264ff383220SAkshay Bhat #ifdef CONFIG_CMD_PCI
265ff383220SAkshay Bhat #define CONFIG_PCI_SCAN_SHOW
266ff383220SAkshay Bhat #define CONFIG_PCIE_IMX
267ff383220SAkshay Bhat #define CONFIG_PCIE_IMX_PERST_GPIO      IMX_GPIO_NR(7, 12)
268ff383220SAkshay Bhat #define CONFIG_PCIE_IMX_POWER_GPIO      IMX_GPIO_NR(1, 5)
269ff383220SAkshay Bhat #endif
270ff383220SAkshay Bhat 
271ff383220SAkshay Bhat /* I2C Configs */
272ff383220SAkshay Bhat #define CONFIG_SYS_I2C
273ff383220SAkshay Bhat #define CONFIG_SYS_I2C_MXC
274ff383220SAkshay Bhat #define CONFIG_SYS_I2C_SPEED            100000
275ff383220SAkshay Bhat #define CONFIG_SYS_I2C_MXC_I2C1
276ff383220SAkshay Bhat #define CONFIG_SYS_I2C_MXC_I2C2
277ff383220SAkshay Bhat #define CONFIG_SYS_I2C_MXC_I2C3
278ff383220SAkshay Bhat 
279ff383220SAkshay Bhat #endif	/* __ADVANTECH_DMSBA16_CONFIG_H */
280