]> git.sur5r.net Git - u-boot/blob - include/configs/kc1.h
kc1: OMAP4 reboot mode support
[u-boot] / include / configs / kc1.h
1 /*
2  * Amazon Kindle Fire (first generation) codename kc1 config
3  *
4  * Copyright (C) 2016 Paul Kocialkowski <contact@paulk.fr>
5  *
6  * SPDX-License-Identifier:     GPL-2.0+
7  */
8
9 #ifndef __CONFIG_H
10 #define __CONFIG_H
11
12 #include <asm/arch/cpu.h>
13 #include <asm/arch/omap.h>
14
15 /*
16  * Build
17  */
18
19 #define CONFIG_SYS_THUMB_BUILD
20
21 /*
22  * CPU
23  */
24
25 #define CONFIG_SYS_L2_PL310             1
26 #define CONFIG_SYS_PL310_BASE           0x48242000
27 #define CONFIG_SYS_CACHELINE_SIZE       32
28
29 /*
30  * Platform
31  */
32
33 #define CONFIG_OMAP
34 #define CONFIG_OMAP4430
35 #define CONFIG_OMAP_COMMON
36
37 /*
38  * Board
39  */
40
41 #define CONFIG_MISC_INIT_R
42
43 /*
44  * Clocks
45  */
46
47 #define CONFIG_SYS_TIMERBASE    GPT2_BASE
48 #define CONFIG_SYS_PTV          2
49
50 /*
51  * DRAM
52  */
53
54 #define CONFIG_NR_DRAM_BANKS    1
55
56 /*
57  * Memory
58  */
59
60 #define CONFIG_SYS_TEXT_BASE            0x80100000
61 #define CONFIG_SYS_SDRAM_BASE           0x80000000
62 #define CONFIG_SYS_INIT_SP_ADDR         (NON_SECURE_SRAM_END - \
63                                          GENERATED_GBL_DATA_SIZE)
64
65 #define CONFIG_SYS_MALLOC_LEN           (1024 * 1024 + CONFIG_ENV_SIZE)
66
67 /*
68  * GPIO
69  */
70
71 #define CONFIG_OMAP_GPIO
72
73 /*
74  * I2C
75  */
76
77 #define CONFIG_SYS_I2C
78 #define CONFIG_SYS_OMAP24_I2C_SPEED     400000
79 #define CONFIG_SYS_OMAP24_I2C_SLAVE     1
80 #define CONFIG_SYS_I2C_OMAP24XX
81 #define CONFIG_I2C_MULTI_BUS
82
83 #define CONFIG_CMD_I2C
84
85 /*
86  * Flash
87  */
88
89 #define CONFIG_SYS_NO_FLASH
90
91 /*
92  * MMC
93  */
94
95 #define CONFIG_MMC
96 #define CONFIG_GENERIC_MMC
97 #define CONFIG_OMAP_HSMMC
98
99 #define CONFIG_CMD_MMC
100
101 /*
102  * Power
103  */
104
105 #define CONFIG_TWL6030_POWER
106
107 /*
108  * Partitions
109  */
110
111 #define CONFIG_PARTITION_UUIDS
112 #define CONFIG_CMD_PART
113
114 /*
115  * SPL
116  */
117
118 #define CONFIG_SPL_FRAMEWORK
119
120 #define CONFIG_SPL_TEXT_BASE            0x40300000
121 #define CONFIG_SPL_MAX_SIZE             (48 * 1024)
122 #define CONFIG_SPL_BSS_START_ADDR       0x80000000
123 #define CONFIG_SPL_BSS_MAX_SIZE         (512 * 1024)
124 #define CONFIG_SYS_SPL_MALLOC_START     0x80208000
125 #define CONFIG_SYS_SPL_MALLOC_SIZE      (1024 * 1024)
126
127 #define CONFIG_SPL_LDSCRIPT             "$(CPUDIR)/omap-common/u-boot-spl.lds"
128 #define CONFIG_SPL_BOARD_INIT
129
130 #define CONFIG_SPL_LIBGENERIC_SUPPORT
131 #define CONFIG_SPL_LIBCOMMON_SUPPORT
132 #define CONFIG_SPL_LIBDISK_SUPPORT
133 #define CONFIG_SPL_SERIAL_SUPPORT
134 #define CONFIG_SPL_POWER_SUPPORT
135 #define CONFIG_SPL_GPIO_SUPPORT
136 #define CONFIG_SPL_I2C_SUPPORT
137 #define CONFIG_SPL_MMC_SUPPORT
138
139 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION      2
140
141 /*
142  * Console
143  */
144
145 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
146
147 #define CONFIG_DISPLAY_CPUINFO
148 #define CONFIG_DISPLAY_BOARDINFO
149
150 #define CONFIG_AUTO_COMPLETE
151
152 #define CONFIG_SYS_LONGHELP
153 #define CONFIG_SYS_HUSH_PARSER
154
155 #define CONFIG_SYS_MAXARGS      16
156 #define CONFIG_SYS_CBSIZE       512
157 #define CONFIG_SYS_PBSIZE       (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) \
158                                  + 16)
159
160 /*
161  * Serial
162  */
163
164 #define CONFIG_SYS_NS16550_SERIAL
165 #define CONFIG_SYS_NS16550_REG_SIZE     (-4)
166 #define CONFIG_SYS_NS16550_CLK          48000000
167 #define CONFIG_SYS_NS16550_COM3         UART3_BASE
168 #define CONFIG_CONS_INDEX               3
169
170 #define CONFIG_BAUDRATE                 115200
171 #define CONFIG_SYS_BAUDRATE_TABLE       { 4800, 9600, 19200, 38400, 57600, \
172                                           115200 }
173
174 /*
175  * USB gadget
176  */
177
178 #define CONFIG_USB_MUSB_PIO_ONLY
179 #define CONFIG_USB_MUSB_OMAP2PLUS
180
181 #define CONFIG_USB_GADGET
182 #define CONFIG_USB_GADGET_DUALSPEED
183 #define CONFIG_USB_GADGET_VBUS_DRAW     0
184
185 /*
186  * Download
187  */
188
189 #define CONFIG_USB_GADGET_DOWNLOAD
190
191 #define CONFIG_G_DNL_VENDOR_NUM         0x0451
192 #define CONFIG_G_DNL_PRODUCT_NUM        0xd022
193 #define CONFIG_G_DNL_MANUFACTURER       "Texas Instruments"
194
195 /*
196  * Fastboot
197  */
198
199 #define CONFIG_USB_FUNCTION_FASTBOOT
200
201 #define CONFIG_FASTBOOT_BUF_ADDR        CONFIG_SYS_LOAD_ADDR
202 #define CONFIG_FASTBOOT_BUF_SIZE        0x2000000
203
204 #define CONFIG_FASTBOOT_FLASH
205 #define CONFIG_FASTBOOT_FLASH_MMC_DEV   0
206
207 #define CONFIG_CMD_FASTBOOT
208
209 /*
210  * Environment
211  */
212
213 #define CONFIG_ENV_SIZE         (128 * 1024)
214 #define CONFIG_ENV_IS_NOWHERE
215
216 #define CONFIG_ENV_OVERWRITE
217
218 #define CONFIG_EXTRA_ENV_SETTINGS \
219         "kernel_addr_r=0x82000000\0" \
220         "loadaddr=0x82000000\0" \
221         "fdt_addr_r=0x88000000\0" \
222         "fdtaddr=0x88000000\0" \
223         "ramdisk_addr_r=0x88080000\0" \
224         "pxefile_addr_r=0x80100000\0" \
225         "scriptaddr=0x80000000\0" \
226         "bootm_size=0x10000000\0" \
227         "boot_mmc_dev=0\0" \
228         "kernel_mmc_part=7\0" \
229         "recovery_mmc_part=5\0" \
230         "bootargs=mem=512M console=ttyO2\0"
231
232 /*
233  * ATAGs
234  */
235
236 #define CONFIG_SETUP_MEMORY_TAGS
237 #define CONFIG_CMDLINE_TAG
238 #define CONFIG_INITRD_TAG
239 #define CONFIG_REVISION_TAG
240 #define CONFIG_SERIAL_TAG
241
242 /*
243  * Boot
244  */
245
246 #define CONFIG_SYS_LOAD_ADDR    0x82000000
247
248 #define CONFIG_ANDROID_BOOT_IMAGE
249
250 #define CONFIG_BOOTCOMMAND \
251         "setenv boot_mmc_part ${kernel_mmc_part}; " \
252         "if test reboot-${reboot-mode} = reboot-r; then " \
253         "echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; " \
254         "if test reboot-${reboot-mode} = reboot-b; then " \
255         "echo fastboot; fastboot 0; fi; " \
256         "part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; " \
257         "part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; " \
258         "mmc dev ${boot_mmc_dev}; " \
259         "mmc read ${kernel_addr_r} ${boot_mmc_start} ${boot_mmc_size} && " \
260         "bootm ${kernel_addr_r};"
261
262 /*
263  * Defaults
264  */
265
266 #include <config_defaults.h>
267 #include <config_distro_defaults.h>
268
269 #endif