1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (C) 2013 Freescale Semiconductor, Inc.
4  *
5  * Configuration settings for Udoo board.
6  */
7 
8 #ifndef __CONFIG_H
9 #define __CONFIG_H
10 
11 #include "mx6_common.h"
12 
13 #include "imx6_spl.h"
14 
15 /* Provide the MACH_TYPE value that the vendor kernel requires. */
16 #define CONFIG_MACH_TYPE		4800
17 
18 /* Size of malloc() pool */
19 #define CONFIG_SYS_MALLOC_LEN		(2 * SZ_1M)
20 
21 #define CONFIG_MXC_UART_BASE		UART2_BASE
22 
23 /* SATA Configs */
24 
25 #ifdef CONFIG_CMD_SATA
26 #define CONFIG_SYS_SATA_MAX_DEVICE	1
27 #define CONFIG_DWC_AHSATA_PORT_ID	0
28 #define CONFIG_DWC_AHSATA_BASE_ADDR	SATA_ARB_BASE_ADDR
29 #define CONFIG_LBA48
30 #endif
31 
32 /* Network support */
33 
34 #define CONFIG_FEC_MXC
35 #define IMX_FEC_BASE                    ENET_BASE_ADDR
36 #define CONFIG_FEC_XCV_TYPE             RGMII
37 #define CONFIG_ETHPRIME                 "FEC"
38 #define CONFIG_FEC_MXC_PHYADDR          6
39 
40 /* MMC Configuration */
41 #define CONFIG_SYS_FSL_ESDHC_ADDR	0
42 
43 #define CONFIG_EXTRA_ENV_SETTINGS \
44 	"console=ttymxc1,115200\0" \
45 	"fdt_high=0xffffffff\0" \
46 	"initrd_high=0xffffffff\0" \
47 	"fdtfile=undefined\0" \
48 	"fdt_addr=0x18000000\0" \
49 	"fdt_addr_r=0x18000000\0" \
50 	"ip_dyn=yes\0" \
51 	"mmcdev=0\0" \
52 	"mmcrootfstype=ext4\0" \
53 	"findfdt="\
54 		"if test ${board_rev} = MX6Q; then " \
55 			"setenv fdtfile imx6q-udoo.dtb; fi; " \
56 		"if test ${board_rev} = MX6DL; then " \
57 			"setenv fdtfile imx6dl-udoo.dtb; fi; " \
58 		"if test ${fdtfile} = undefined; then " \
59 			"echo WARNING: Could not determine dtb to use; fi\0" \
60 	"kernel_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \
61 	"pxefile_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \
62 	"ramdisk_addr_r=0x13000000\0" \
63 	"scriptaddr=" __stringify(CONFIG_LOADADDR) "\0" \
64 	BOOTENV
65 
66 #define BOOT_TARGET_DEVICES(func) \
67 	func(MMC, mmc, 0) \
68 	func(SATA, sata, 0) \
69 	func(DHCP, dhcp, na)
70 
71 #include <config_distro_bootcmd.h>
72 #include <linux/stringify.h>
73 
74 /* Physical Memory Map */
75 #define PHYS_SDRAM			MMDC0_ARB_BASE_ADDR
76 
77 #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM
78 #define CONFIG_SYS_INIT_RAM_ADDR	IRAM_BASE_ADDR
79 #define CONFIG_SYS_INIT_RAM_SIZE	IRAM_SIZE
80 
81 #define CONFIG_SYS_INIT_SP_OFFSET \
82 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
83 #define CONFIG_SYS_INIT_SP_ADDR \
84 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
85 
86 /* Environment organization */
87 
88 #endif			       /* __CONFIG_H * */
89