xref: /openbmc/u-boot/include/configs/kc1.h (revision 9ecb0c41)
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  * Input
109  */
110 
111 #define CONFIG_TWL6030_INPUT
112 
113 /*
114  * Partitions
115  */
116 
117 #define CONFIG_PARTITION_UUIDS
118 #define CONFIG_CMD_PART
119 
120 /*
121  * SPL
122  */
123 
124 #define CONFIG_SPL_FRAMEWORK
125 
126 #define CONFIG_SPL_TEXT_BASE		0x40300000
127 #define CONFIG_SPL_MAX_SIZE		(48 * 1024)
128 #define CONFIG_SPL_BSS_START_ADDR	0x80000000
129 #define CONFIG_SPL_BSS_MAX_SIZE		(512 * 1024)
130 #define CONFIG_SYS_SPL_MALLOC_START	0x80208000
131 #define CONFIG_SYS_SPL_MALLOC_SIZE	(1024 * 1024)
132 
133 #define CONFIG_SPL_LDSCRIPT		"$(CPUDIR)/omap-common/u-boot-spl.lds"
134 #define CONFIG_SPL_BOARD_INIT
135 
136 #define CONFIG_SPL_LIBGENERIC_SUPPORT
137 #define CONFIG_SPL_LIBCOMMON_SUPPORT
138 #define CONFIG_SPL_LIBDISK_SUPPORT
139 #define CONFIG_SPL_SERIAL_SUPPORT
140 #define CONFIG_SPL_POWER_SUPPORT
141 #define CONFIG_SPL_GPIO_SUPPORT
142 #define CONFIG_SPL_I2C_SUPPORT
143 #define CONFIG_SPL_MMC_SUPPORT
144 
145 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION	2
146 
147 /*
148  * Console
149  */
150 
151 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
152 
153 #define CONFIG_DISPLAY_CPUINFO
154 #define CONFIG_DISPLAY_BOARDINFO
155 
156 #define CONFIG_AUTO_COMPLETE
157 
158 #define CONFIG_SYS_LONGHELP
159 #define CONFIG_SYS_HUSH_PARSER
160 
161 #define CONFIG_SYS_MAXARGS	16
162 #define CONFIG_SYS_CBSIZE	512
163 #define CONFIG_SYS_PBSIZE	(CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) \
164 				 + 16)
165 
166 /*
167  * Serial
168  */
169 
170 #define CONFIG_SYS_NS16550_SERIAL
171 #define CONFIG_SYS_NS16550_REG_SIZE	(-4)
172 #define CONFIG_SYS_NS16550_CLK		48000000
173 #define CONFIG_SYS_NS16550_COM3		UART3_BASE
174 #define CONFIG_CONS_INDEX		3
175 
176 #define CONFIG_BAUDRATE			115200
177 #define CONFIG_SYS_BAUDRATE_TABLE	{ 4800, 9600, 19200, 38400, 57600, \
178 					  115200 }
179 
180 /*
181  * USB gadget
182  */
183 
184 #define CONFIG_USB_MUSB_PIO_ONLY
185 #define CONFIG_USB_MUSB_OMAP2PLUS
186 
187 #define CONFIG_USB_GADGET_DUALSPEED
188 #define CONFIG_USB_GADGET_VBUS_DRAW	0
189 
190 /*
191  * Download
192  */
193 
194 #define CONFIG_USB_GADGET_DOWNLOAD
195 
196 #define CONFIG_G_DNL_VENDOR_NUM		0x0451
197 #define CONFIG_G_DNL_PRODUCT_NUM	0xd022
198 #define CONFIG_G_DNL_MANUFACTURER	"Texas Instruments"
199 
200 /*
201  * Fastboot
202  */
203 
204 #define CONFIG_USB_FUNCTION_FASTBOOT
205 
206 #define CONFIG_FASTBOOT_BUF_ADDR	CONFIG_SYS_LOAD_ADDR
207 #define CONFIG_FASTBOOT_BUF_SIZE	0x2000000
208 
209 #define CONFIG_FASTBOOT_FLASH
210 #define CONFIG_FASTBOOT_FLASH_MMC_DEV	0
211 
212 #define CONFIG_CMD_FASTBOOT
213 
214 /*
215  * Environment
216  */
217 
218 #define CONFIG_ENV_SIZE		(128 * 1024)
219 #define CONFIG_ENV_IS_NOWHERE
220 
221 #define CONFIG_ENV_OVERWRITE
222 
223 #define CONFIG_EXTRA_ENV_SETTINGS \
224 	"kernel_addr_r=0x82000000\0" \
225 	"loadaddr=0x82000000\0" \
226 	"fdt_addr_r=0x88000000\0" \
227 	"fdtaddr=0x88000000\0" \
228 	"ramdisk_addr_r=0x88080000\0" \
229 	"pxefile_addr_r=0x80100000\0" \
230 	"scriptaddr=0x80000000\0" \
231 	"bootm_size=0x10000000\0" \
232 	"boot_mmc_dev=0\0" \
233 	"kernel_mmc_part=7\0" \
234 	"recovery_mmc_part=5\0" \
235 	"bootargs=mem=512M console=ttyO2\0"
236 
237 /*
238  * ATAGs
239  */
240 
241 #define CONFIG_SETUP_MEMORY_TAGS
242 #define CONFIG_CMDLINE_TAG
243 #define CONFIG_INITRD_TAG
244 #define CONFIG_REVISION_TAG
245 #define CONFIG_SERIAL_TAG
246 
247 /*
248  * Boot
249  */
250 
251 #define CONFIG_SYS_LOAD_ADDR	0x82000000
252 
253 #define CONFIG_ANDROID_BOOT_IMAGE
254 
255 #define CONFIG_BOOTCOMMAND \
256 	"setenv boot_mmc_part ${kernel_mmc_part}; " \
257 	"if test reboot-${reboot-mode} = reboot-r; then " \
258 	"echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; " \
259 	"if test reboot-${reboot-mode} = reboot-b; then " \
260 	"echo fastboot; fastboot 0; fi; " \
261 	"part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; " \
262 	"part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; " \
263 	"mmc dev ${boot_mmc_dev}; " \
264 	"mmc read ${kernel_addr_r} ${boot_mmc_start} ${boot_mmc_size} && " \
265 	"bootm ${kernel_addr_r};"
266 
267 /*
268  * Defaults
269  */
270 
271 #include <config_defaults.h>
272 #include <config_distro_defaults.h>
273 
274 #endif
275