]>
Commit | Line | Data |
---|---|---|
6b3943f1 HS |
1 | /* |
2 | * (C) Copyright 2013 Siemens Schweiz AG | |
3 | * (C) Heiko Schocher, DENX Software Engineering, hs@denx.de. | |
4 | * | |
5 | * Based on: | |
6 | * U-Boot file:/include/configs/am335x_evm.h | |
7 | * | |
8 | * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ | |
9 | * | |
10 | * SPDX-License-Identifier: GPL-2.0+ | |
11 | */ | |
12 | ||
13 | #ifndef __CONFIG_ETAMIN_H | |
14 | #define __CONFIG_ETAMIN_H | |
15 | ||
16 | #include "siemens-am33x-common.h" | |
17 | /* NAND specific changes for etamin due to different page size */ | |
18 | #undef CONFIG_SYS_NAND_PAGE_SIZE | |
19 | #undef CONFIG_SYS_NAND_OOBSIZE | |
20 | #undef CONFIG_SYS_NAND_BLOCK_SIZE | |
21 | #undef CONFIG_SYS_NAND_ECCPOS | |
22 | #undef CONFIG_SYS_NAND_U_BOOT_OFFS | |
23 | #undef CONFIG_SYS_ENV_SECT_SIZE | |
24 | #undef CONFIG_ENV_OFFSET | |
25 | #undef CONFIG_NAND_OMAP_ECCSCHEME | |
26 | #define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH16_CODE_HW | |
27 | ||
28 | #define CONFIG_ENV_OFFSET 0x980000 | |
29 | #define CONFIG_SYS_ENV_SECT_SIZE (512 << 10) /* 512 KiB */ | |
30 | #define CONFIG_SYS_NAND_PAGE_SIZE 4096 | |
31 | #define CONFIG_SYS_NAND_OOBSIZE 224 | |
32 | #define CONFIG_SYS_NAND_BLOCK_SIZE (128 * CONFIG_SYS_NAND_PAGE_SIZE) | |
33 | #define CONFIG_SYS_NAND_ECCPOS { 2, 3, 4, 5, 6, 7, 8, 9, \ | |
34 | 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, \ | |
35 | 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, \ | |
36 | 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, \ | |
37 | 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, \ | |
38 | 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, \ | |
39 | 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, \ | |
40 | 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, \ | |
41 | 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, \ | |
42 | 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, \ | |
43 | 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, \ | |
44 | 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, \ | |
45 | 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, \ | |
46 | 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, \ | |
47 | 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, \ | |
48 | 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, \ | |
49 | 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, \ | |
50 | 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, \ | |
51 | 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, \ | |
52 | 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, \ | |
53 | 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, \ | |
54 | } | |
55 | ||
56 | #undef CONFIG_SYS_NAND_ECCSIZE | |
57 | #undef CONFIG_SYS_NAND_ECCBYTES | |
58 | #define CONFIG_SYS_NAND_ECCSIZE 512 | |
59 | #define CONFIG_SYS_NAND_ECCBYTES 26 | |
60 | ||
61 | #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x200000 | |
62 | ||
63 | #define CONFIG_SYS_NAND_MAX_CHIPS 1 | |
64 | ||
65 | #undef CONFIG_SYS_MAX_NAND_DEVICE | |
66 | #define CONFIG_SYS_MAX_NAND_DEVICE 3 | |
67 | #define CONFIG_SYS_NAND_BASE2 (0x18000000) /* physical address */ | |
68 | #define CONFIG_SYS_NAND_BASE_LIST {CONFIG_SYS_NAND_BASE, \ | |
69 | CONFIG_SYS_NAND_BASE2} | |
70 | ||
71 | #define CONFIG_SYS_NAND_ONFI_DETECTION | |
72 | #define CONFIG_DISPLAY_CPUINFO | |
73 | #define CONFIG_SYS_MPUCLK 300 | |
74 | #define DDR_PLL_FREQ 303 | |
75 | #undef CONFIG_SPL_AM33XX_ENABLE_RTC32K_OSC | |
76 | ||
77 | /* FWD Button = 27 | |
78 | * SRV Button = 87 */ | |
79 | #define BOARD_DFU_BUTTON_GPIO 27 | |
80 | #define GPIO_LAN9303_NRST 88 /* GPIO2_24 = gpio88 */ | |
81 | /* In dfu mode keep led1 on */ | |
82 | #define CONFIG_ENV_SETTINGS_BUTTONS_AND_LEDS \ | |
83 | "button_dfu0=27\0" \ | |
84 | "button_dfu1=87\0" \ | |
85 | "led0=3,0,1\0" \ | |
86 | "led1=4,0,0\0" \ | |
87 | "led2=5,0,1\0" \ | |
88 | "led3=87,0,1\0" \ | |
89 | "led4=60,0,1\0" \ | |
90 | "led5=63,0,1\0" | |
91 | ||
92 | #undef CONFIG_DOS_PARTITION | |
93 | #undef CONFIG_CMD_FAT | |
94 | ||
95 | #define CONFIG_BOARD_LATE_INIT | |
96 | ||
97 | /* Physical Memory Map */ | |
98 | #define CONFIG_MAX_RAM_BANK_SIZE (1024 << 20) /* 1GB */ | |
99 | ||
100 | /* I2C Configuration */ | |
101 | #define CONFIG_SYS_I2C_SPEED 100000 | |
102 | ||
103 | #define CONFIG_SYS_I2C_EEPROM_ADDR 0x50 | |
104 | #define EEPROM_ADDR_DDR3 0x90 | |
105 | #define EEPROM_ADDR_CHIP 0x120 | |
106 | ||
107 | #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x300 | |
108 | ||
109 | #undef CONFIG_SPL_NET_SUPPORT | |
6b3943f1 HS |
110 | |
111 | #undef CONFIG_MII | |
112 | #undef CONFIG_PHY_GIGE | |
113 | #define CONFIG_PHY_SMSC | |
114 | ||
115 | #define CONFIG_FACTORYSET | |
116 | ||
117 | /* use both define to compile a SPL compliance test */ | |
118 | /* | |
119 | #define CONFIG_SPL_CMT | |
120 | #define CONFIG_SPL_CMT_DEBUG | |
121 | */ | |
122 | ||
123 | /* nedded by compliance test in read mode */ | |
124 | #if defined(CONFIG_SPL_CMT) | |
125 | #define CONFIG_SYS_DCACHE_OFF | |
126 | #endif | |
127 | ||
128 | /* Watchdog */ | |
129 | #define CONFIG_OMAP_WATCHDOG | |
130 | ||
131 | /* Define own nand partitions */ | |
132 | #define CONFIG_ENV_OFFSET_REDUND 0xB80000 | |
133 | #define CONFIG_ENV_SIZE_REDUND CONFIG_ENV_SIZE | |
134 | #define CONFIG_ENV_RANGE (4 * CONFIG_SYS_ENV_SECT_SIZE) | |
135 | ||
136 | ||
137 | ||
138 | #define CONFIG_DFU_MTD | |
139 | #undef COMMON_ENV_DFU_ARGS | |
140 | #define COMMON_ENV_DFU_ARGS "dfu_args=run bootargs_defaults;" \ | |
141 | "setenv bootargs ${bootargs};" \ | |
142 | "mtdparts default;" \ | |
143 | "draco_led 1;" \ | |
144 | "dfu 0 mtd 0;" \ | |
145 | "draco_led 0;\0" \ | |
146 | ||
147 | #undef DFU_ALT_INFO_NAND_V2 | |
148 | #define DFU_ALT_INFO_NAND_V2 \ | |
149 | "spl mtddev;" \ | |
150 | "spl.backup1 mtddev;" \ | |
151 | "spl.backup2 mtddev;" \ | |
152 | "spl.backup3 mtddev;" \ | |
153 | "u-boot mtddev;" \ | |
154 | "u-boot.env0 mtddev;" \ | |
155 | "u-boot.env1 mtddev;" \ | |
156 | "rootfs mtddevubi" \ | |
157 | ||
158 | #undef MTDIDS_NAME_STR | |
159 | #define MTDIDS_NAME_STR "omap2-nand_concat" | |
160 | #undef MTDIDS_DEFAULT | |
161 | #define MTDIDS_DEFAULT "nand2=" MTDIDS_NAME_STR | |
162 | ||
163 | #undef MTDPARTS_DEFAULT_V2 | |
164 | #define MTDPARTS_DEFAULT_V2 "mtdparts=" MTDIDS_NAME_STR ":" \ | |
165 | "512k(spl)," \ | |
166 | "512k(spl.backup1)," \ | |
167 | "512k(spl.backup2)," \ | |
168 | "512k(spl.backup3)," \ | |
169 | "7680k(u-boot)," \ | |
170 | "2048k(u-boot.env0)," \ | |
171 | "2048k(u-boot.env1)," \ | |
172 | "2048k(mtdoops)," \ | |
173 | "-(rootfs)" | |
174 | ||
175 | #undef MTDPARTS_DEFAULT | |
176 | #define MTDPARTS_DEFAULT MTDPARTS_DEFAULT_V2 | |
177 | ||
178 | #undef CONFIG_ENV_SETTINGS_NAND_V2 | |
179 | #define CONFIG_ENV_SETTINGS_NAND_V2 \ | |
180 | "nand_active_ubi_vol=rootfs_a\0" \ | |
181 | "rootfs_name=rootfs\0" \ | |
182 | "kernel_name=uImage\0"\ | |
183 | "nand_root_fs_type=ubifs rootwait=1\0" \ | |
184 | "nand_args=run bootargs_defaults;" \ | |
185 | "mtdparts default;" \ | |
186 | "setenv ${partitionset_active} true;" \ | |
187 | "if test -n ${A}; then " \ | |
188 | "setenv nand_active_ubi_vol ${rootfs_name}_a;" \ | |
189 | "fi;" \ | |
190 | "if test -n ${B}; then " \ | |
191 | "setenv nand_active_ubi_vol ${rootfs_name}_b;" \ | |
192 | "fi;" \ | |
193 | "setenv nand_root ubi0:${nand_active_ubi_vol} rw " \ | |
194 | "ubi.mtd=rootfs,${ubi_off};" \ | |
195 | "setenv bootargs ${bootargs} " \ | |
196 | "root=${nand_root} noinitrd ${mtdparts} " \ | |
197 | "rootfstype=${nand_root_fs_type} ip=${ip_method} " \ | |
198 | "console=ttyMTD,mtdoops console=ttyO0,115200n8 mtdoops.mtddev" \ | |
199 | "=mtdoops\0" \ | |
200 | COMMON_ENV_DFU_ARGS \ | |
201 | "dfu_alt_info=" DFU_ALT_INFO_NAND_V2 "\0" \ | |
202 | COMMON_ENV_NAND_BOOT \ | |
203 | "ubi part rootfs ${ubi_off};" \ | |
204 | "ubifsmount ubi0:${nand_active_ubi_vol};" \ | |
205 | "ubifsload ${kloadaddr} boot/${kernel_name};" \ | |
206 | "ubifsload ${loadaddr} boot/${dtb_name}.dtb;" \ | |
207 | "bootm ${kloadaddr} - ${loadaddr}\0" \ | |
208 | "nand_boot_backup=ubifsload ${loadaddr} boot/am335x-draco.dtb;" \ | |
209 | "bootm ${kloadaddr} - ${loadaddr}\0" \ | |
210 | COMMON_ENV_NAND_CMDS | |
211 | ||
212 | #ifndef CONFIG_SPL_BUILD | |
213 | ||
214 | #define CONFIG_NAND_CS_INIT | |
215 | #define ETAMIN_NAND_GPMC_CONFIG1 0x00000800 | |
216 | #define ETAMIN_NAND_GPMC_CONFIG2 0x001e1e00 | |
217 | #define ETAMIN_NAND_GPMC_CONFIG3 0x001e1e00 | |
218 | #define ETAMIN_NAND_GPMC_CONFIG4 0x16051807 | |
219 | #define ETAMIN_NAND_GPMC_CONFIG5 0x00151e1e | |
220 | #define ETAMIN_NAND_GPMC_CONFIG6 0x16000f80 | |
221 | #define CONFIG_MTD_CONCAT | |
222 | ||
223 | /* Default env settings */ | |
224 | #define CONFIG_EXTRA_ENV_SETTINGS \ | |
225 | "hostname=etamin\0" \ | |
226 | "ubi_off=4096\0"\ | |
227 | "nand_img_size=0x400000\0" \ | |
228 | "optargs=\0" \ | |
229 | "preboot=draco_led 0\0" \ | |
230 | CONFIG_ENV_SETTINGS_BUTTONS_AND_LEDS \ | |
231 | CONFIG_ENV_SETTINGS_V2 \ | |
232 | CONFIG_ENV_SETTINGS_NAND_V2 | |
233 | ||
234 | #ifndef CONFIG_RESTORE_FLASH | |
235 | ||
236 | #define CONFIG_BOOTCOMMAND \ | |
237 | "if dfubutton; then " \ | |
238 | "run dfu_start; " \ | |
239 | "reset; " \ | |
240 | "fi;" \ | |
241 | "run nand_boot;" \ | |
242 | "run nand_boot_backup;" \ | |
243 | "reset;" | |
244 | ||
245 | ||
246 | #else | |
247 | #define CONFIG_BOOTCOMMAND \ | |
248 | "setenv autoload no; " \ | |
249 | "dhcp; " \ | |
250 | "if tftp 80000000 debrick.scr; then " \ | |
251 | "source 80000000; " \ | |
252 | "fi" | |
253 | #endif | |
254 | #endif /* CONFIG_SPL_BUILD */ | |
255 | #endif /* ! __CONFIG_ETAMIN_H */ |