1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (C) 2016 Freescale Semiconductor, Inc.
4  *
5  * Configuration settings for the Embedded Artists i.MX7ULP COM board.
6  */
7 
8 #ifndef __MX7ULP_COM_CONFIG_H
9 #define __MX7ULP_COM_CONFIG_H
10 
11 #include <linux/sizes.h>
12 #include <asm/arch/imx-regs.h>
13 
14 #define CONFIG_BOARD_POSTCLK_INIT
15 #define CONFIG_SYS_BOOTM_LEN		0x1000000
16 
17 /*
18  * Detect overlap between U-Boot image and environment area in build-time
19  *
20  * CONFIG_BOARD_SIZE_LIMIT = CONFIG_ENV_OFFSET - u-boot-dtb.imx offset
21  * CONFIG_BOARD_SIZE_LIMIT = 768k - 1k = 767k = 785408
22  *
23  * Currently CONFIG_BOARD_SIZE_LIMIT does not handle expressions, so
24  * write the direct value here
25  */
26 #define CONFIG_BOARD_SIZE_LIMIT		785408
27 #define CONFIG_MMCROOT			"/dev/mmcblk0p2"
28 #define CONFIG_SYS_MMC_IMG_LOAD_PART	1
29 
30 /* Using ULP WDOG for reset */
31 #define WDOG_BASE_ADDR			WDG1_RBASE
32 
33 #define CONFIG_SYS_HZ_CLOCK		1000000 /* Fixed at 1MHz from TSTMR */
34 
35 /* UART */
36 #define LPUART_BASE			LPUART4_RBASE
37 
38 /* Physical Memory Map */
39 
40 #define PHYS_SDRAM			0x60000000
41 #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM
42 
43 #define CONFIG_EXTRA_ENV_SETTINGS \
44 	"image=zImage\0" \
45 	"console=ttyLP0\0" \
46 	"fdt_high=0xffffffff\0" \
47 	"initrd_high=0xffffffff\0" \
48 	"fdt_file=imx7ulp-com.dtb\0" \
49 	"fdt_addr=0x63000000\0" \
50 	"mmcdev="__stringify(CONFIG_SYS_MMC_ENV_DEV)"\0" \
51 	"mmcpart=" __stringify(CONFIG_SYS_MMC_IMG_LOAD_PART) "\0" \
52 	"mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \
53 	"mmcargs=setenv bootargs console=${console},${baudrate} " \
54 		"root=${mmcroot}\0" \
55 	"loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
56 	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
57 	"mmcboot=echo Booting from mmc ...; " \
58 		"run mmcargs; " \
59 		"if run loadfdt; then " \
60 			"bootz ${loadaddr} - ${fdt_addr}; " \
61 		"fi;\0" \
62 
63 #define CONFIG_SYS_INIT_RAM_ADDR	IRAM_BASE_ADDR
64 #define CONFIG_SYS_INIT_RAM_SIZE	SZ_256K
65 
66 #define CONFIG_SYS_INIT_SP_OFFSET \
67 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
68 #define CONFIG_SYS_INIT_SP_ADDR \
69 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
70 
71 #define CONFIG_MXC_USB_PORTSC		(PORT_PTS_UTMI | PORT_PTS_PTW)
72 #endif	/* __CONFIG_H */
73