]>
Commit | Line | Data |
---|---|---|
e2d282a1 FE |
1 | /* |
2 | * Copyright (C) 2013 Freescale Semiconductor, Inc. | |
3 | * | |
4 | * Configuration settings for the Wandboard. | |
5 | * | |
1a459660 | 6 | * SPDX-License-Identifier: GPL-2.0+ |
e2d282a1 FE |
7 | */ |
8 | ||
9 | #ifndef __CONFIG_H | |
10 | #define __CONFIG_H | |
11 | ||
3d99e862 | 12 | #include <config_distro_defaults.h> |
02824dc7 | 13 | #include "mx6_common.h" |
e2d282a1 | 14 | |
0d1ea052 FE |
15 | #define CONFIG_SPL_LIBCOMMON_SUPPORT |
16 | #define CONFIG_SPL_MMC_SUPPORT | |
17 | #include "imx6_spl.h" | |
18 | ||
e2d282a1 FE |
19 | #define MACH_TYPE_WANDBOARD 4412 |
20 | #define CONFIG_MACH_TYPE MACH_TYPE_WANDBOARD | |
21 | ||
e2d282a1 | 22 | /* Size of malloc() pool */ |
7bcb983f | 23 | #define CONFIG_SYS_MALLOC_LEN (10 * SZ_1M) |
e2d282a1 FE |
24 | |
25 | #define CONFIG_BOARD_EARLY_INIT_F | |
eaffaa2d | 26 | #define CONFIG_BOARD_LATE_INIT |
e2d282a1 FE |
27 | |
28 | #define CONFIG_MXC_UART | |
29 | #define CONFIG_MXC_UART_BASE UART1_BASE | |
30 | ||
e355eec7 GC |
31 | /* SATA Configs */ |
32 | ||
33 | #define CONFIG_CMD_SATA | |
34 | #ifdef CONFIG_CMD_SATA | |
35 | #define CONFIG_DWC_AHSATA | |
36 | #define CONFIG_SYS_SATA_MAX_DEVICE 1 | |
37 | #define CONFIG_DWC_AHSATA_PORT_ID 0 | |
38 | #define CONFIG_DWC_AHSATA_BASE_ADDR SATA_ARB_BASE_ADDR | |
39 | #define CONFIG_LBA48 | |
40 | #define CONFIG_LIBATA | |
41 | #endif | |
42 | ||
e2d282a1 | 43 | /* Command definition */ |
eaffaa2d | 44 | #define CONFIG_CMD_BMODE |
0798d578 | 45 | |
e2d282a1 FE |
46 | #define CONFIG_SYS_MEMTEST_START 0x10000000 |
47 | #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + 500 * SZ_1M) | |
e2d282a1 | 48 | |
8bc7c487 | 49 | /* I2C Configs */ |
8bc7c487 OS |
50 | #define CONFIG_SYS_I2C |
51 | #define CONFIG_SYS_I2C_MXC | |
03544c66 AA |
52 | #define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */ |
53 | #define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */ | |
f8cb101e | 54 | #define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */ |
8bc7c487 OS |
55 | #define CONFIG_SYS_I2C_SPEED 100000 |
56 | ||
e2d282a1 | 57 | /* MMC Configuration */ |
5ed15738 | 58 | #define CONFIG_SYS_FSL_USDHC_NUM 2 |
e2d282a1 | 59 | #define CONFIG_SYS_FSL_ESDHC_ADDR 0 |
e2d282a1 | 60 | |
9df47577 | 61 | /* USB Configs */ |
9df47577 JH |
62 | #define CONFIG_USB_EHCI |
63 | #define CONFIG_USB_EHCI_MX6 | |
64 | #define CONFIG_USB_STORAGE | |
65 | #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 | |
66 | #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) | |
67 | #define CONFIG_MXC_USB_FLAGS 0 | |
68 | ||
e2d282a1 | 69 | /* Ethernet Configuration */ |
e2d282a1 FE |
70 | #define CONFIG_FEC_MXC |
71 | #define CONFIG_MII | |
72 | #define IMX_FEC_BASE ENET_BASE_ADDR | |
73 | #define CONFIG_FEC_XCV_TYPE RGMII | |
74 | #define CONFIG_ETHPRIME "FEC" | |
75 | #define CONFIG_FEC_MXC_PHYADDR 1 | |
76 | #define CONFIG_PHYLIB | |
77 | #define CONFIG_PHY_ATHEROS | |
78 | ||
7bcb983f FE |
79 | /* Framebuffer */ |
80 | #define CONFIG_VIDEO | |
81 | #define CONFIG_VIDEO_IPUV3 | |
82 | #define CONFIG_CFB_CONSOLE | |
83 | #define CONFIG_VGA_AS_SINGLE_DEVICE | |
84 | #define CONFIG_SYS_CONSOLE_IS_IN_ENV | |
85 | #define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE | |
86 | #define CONFIG_VIDEO_BMP_RLE8 | |
87 | #define CONFIG_SPLASH_SCREEN | |
a7efb026 | 88 | #define CONFIG_SPLASH_SCREEN_ALIGN |
7bcb983f FE |
89 | #define CONFIG_BMP_16BPP |
90 | #define CONFIG_VIDEO_LOGO | |
a7efb026 | 91 | #define CONFIG_VIDEO_BMP_LOGO |
7bcb983f | 92 | #define CONFIG_IPUV3_CLK 260000000 |
0ef797a5 | 93 | #define CONFIG_CMD_HDMIDETECT |
5ea7f0e3 | 94 | #define CONFIG_IMX_HDMI |
8bc7c487 | 95 | #define CONFIG_IMX_VIDEO_SKIP |
7bcb983f | 96 | |
0d1ea052 | 97 | #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG |
e2d282a1 | 98 | #define CONFIG_EXTRA_ENV_SETTINGS \ |
acc6bb56 | 99 | "console=ttymxc0,115200\0" \ |
d727ab3c | 100 | "splashpos=m,m\0" \ |
0d1ea052 | 101 | "fdtfile=undefined\0" \ |
e2d282a1 FE |
102 | "fdt_high=0xffffffff\0" \ |
103 | "initrd_high=0xffffffff\0" \ | |
acc6bb56 | 104 | "fdt_addr_r=0x18000000\0" \ |
6584a1b5 | 105 | "fdt_addr=0x18000000\0" \ |
e2d282a1 | 106 | "ip_dyn=yes\0" \ |
1e1cbde0 | 107 | "mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \ |
0798d578 OS |
108 | "update_sd_firmware_filename=u-boot.imx\0" \ |
109 | "update_sd_firmware=" \ | |
110 | "if test ${ip_dyn} = yes; then " \ | |
111 | "setenv get_cmd dhcp; " \ | |
112 | "else " \ | |
113 | "setenv get_cmd tftp; " \ | |
114 | "fi; " \ | |
115 | "if mmc dev ${mmcdev}; then " \ | |
116 | "if ${get_cmd} ${update_sd_firmware_filename}; then " \ | |
117 | "setexpr fw_sz ${filesize} / 0x200; " \ | |
118 | "setexpr fw_sz ${fw_sz} + 1; " \ | |
119 | "mmc write ${loadaddr} 0x2 ${fw_sz}; " \ | |
120 | "fi; " \ | |
121 | "fi\0" \ | |
0ef797a5 OS |
122 | "videoargs=" \ |
123 | "setenv nextcon 0; " \ | |
124 | "if hdmidet; then " \ | |
125 | "setenv bootargs ${bootargs} " \ | |
126 | "video=mxcfb${nextcon}:dev=hdmi,1280x720M@60," \ | |
127 | "if=RGB24; " \ | |
128 | "setenv fbmen fbmem=28M; " \ | |
129 | "setexpr nextcon ${nextcon} + 1; " \ | |
130 | "else " \ | |
131 | "echo - no HDMI monitor;" \ | |
132 | "fi; " \ | |
133 | "i2c dev 1; " \ | |
134 | "if i2c probe 0x10; then " \ | |
135 | "setenv bootargs ${bootargs} " \ | |
136 | "video=mxcfb${nextcon}:dev=lcd,800x480@60," \ | |
99c618ff | 137 | "if=RGB666,bpp=32; " \ |
0ef797a5 OS |
138 | "if test 0 -eq ${nextcon}; then " \ |
139 | "setenv fbmem fbmem=10M; " \ | |
140 | "else " \ | |
141 | "setenv fbmem ${fbmem},10M; " \ | |
142 | "fi; " \ | |
143 | "setexpr nextcon ${nextcon} + 1; " \ | |
144 | "else " \ | |
145 | "echo '- no FWBADAPT-7WVGA-LCD-F07A-0102 display';" \ | |
146 | "fi; " \ | |
147 | "setenv bootargs ${bootargs} ${fbmem}\0" \ | |
0d1ea052 | 148 | "findfdt="\ |
9a8804a8 | 149 | "if test $board_name = C1 && test $board_rev = MX6Q ; then " \ |
0d1ea052 | 150 | "setenv fdtfile imx6q-wandboard.dtb; fi; " \ |
9a8804a8 | 151 | "if test $board_name = C1 && test $board_rev = MX6DL ; then " \ |
0d1ea052 | 152 | "setenv fdtfile imx6dl-wandboard.dtb; fi; " \ |
9a8804a8 FE |
153 | "if test $board_name = B1 && test $board_rev = MX6Q ; then " \ |
154 | "setenv fdtfile imx6q-wandboard-revb1.dtb; fi; " \ | |
155 | "if test $board_name = B1 && test $board_rev = MX6DL ; then " \ | |
156 | "setenv fdtfile imx6dl-wandboard-revb1.dtb; fi; " \ | |
0d1ea052 FE |
157 | "if test $fdtfile = undefined; then " \ |
158 | "echo WARNING: Could not determine dtb to use; fi; \0" \ | |
acc6bb56 | 159 | "kernel_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \ |
d3b78e18 | 160 | "pxefile_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \ |
acc6bb56 VC |
161 | "ramdisk_addr_r=0x13000000\0" \ |
162 | "ramdiskaddr=0x13000000\0" \ | |
163 | "scriptaddr=" __stringify(CONFIG_LOADADDR) "\0" \ | |
164 | BOOTENV | |
165 | ||
166 | #define BOOT_TARGET_DEVICES(func) \ | |
167 | func(MMC, mmc, 0) \ | |
168 | func(MMC, mmc, 1) \ | |
169 | func(USB, usb, 0) \ | |
170 | func(PXE, pxe, na) \ | |
171 | func(DHCP, dhcp, na) | |
e2d282a1 FE |
172 | |
173 | #define CONFIG_BOOTCOMMAND \ | |
0d1ea052 | 174 | "run findfdt; " \ |
acc6bb56 VC |
175 | "run distro_bootcmd" |
176 | ||
acc6bb56 | 177 | #include <config_distro_bootcmd.h> |
e2d282a1 | 178 | |
e2d282a1 FE |
179 | /* Physical Memory Map */ |
180 | #define CONFIG_NR_DRAM_BANKS 1 | |
181 | #define PHYS_SDRAM MMDC0_ARB_BASE_ADDR | |
182 | ||
183 | #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM | |
184 | #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR | |
185 | #define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE | |
186 | ||
187 | #define CONFIG_SYS_INIT_SP_OFFSET \ | |
188 | (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) | |
189 | #define CONFIG_SYS_INIT_SP_ADDR \ | |
190 | (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) | |
191 | ||
056845c2 | 192 | /* Environment organization */ |
e2d282a1 FE |
193 | #define CONFIG_ENV_SIZE (8 * 1024) |
194 | ||
195 | #define CONFIG_ENV_IS_IN_MMC | |
196 | #define CONFIG_ENV_OFFSET (6 * 64 * 1024) | |
197 | #define CONFIG_SYS_MMC_ENV_DEV 0 | |
198 | ||
e2d282a1 | 199 | #endif /* __CONFIG_H * */ |