76f2b8b7b4a08f9856d9f9a63e36c1f7b340ccc9
[platform/kernel/u-boot.git] / 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
28 /*
29  * Platform
30  */
31
32 #define CONFIG_OMAP
33 #define CONFIG_OMAP4430
34
35 /*
36  * Board
37  */
38
39 #define CONFIG_MISC_INIT_R
40
41 /*
42  * Clocks
43  */
44
45 #define CONFIG_SYS_TIMERBASE    GPT2_BASE
46 #define CONFIG_SYS_PTV          2
47
48 /*
49  * DRAM
50  */
51
52 #define CONFIG_NR_DRAM_BANKS    1
53
54 /*
55  * Memory
56  */
57
58 #define CONFIG_SYS_TEXT_BASE            0x80100000
59 #define CONFIG_SYS_SDRAM_BASE           0x80000000
60 #define CONFIG_SYS_INIT_SP_ADDR         (NON_SECURE_SRAM_END - \
61                                          GENERATED_GBL_DATA_SIZE)
62
63 #define CONFIG_SYS_MALLOC_LEN           (1024 * 1024 + CONFIG_ENV_SIZE)
64
65 /*
66  * GPIO
67  */
68
69 #define CONFIG_OMAP_GPIO
70
71 /*
72  * I2C
73  */
74
75 #define CONFIG_SYS_I2C
76 #define CONFIG_SYS_OMAP24_I2C_SPEED     400000
77 #define CONFIG_SYS_OMAP24_I2C_SLAVE     1
78 #define CONFIG_SYS_I2C_OMAP24XX
79 #define CONFIG_I2C_MULTI_BUS
80
81 /*
82  * Flash
83  */
84
85 #define CONFIG_SYS_NO_FLASH
86
87 /*
88  * MMC
89  */
90
91 #define CONFIG_MMC
92 #define CONFIG_GENERIC_MMC
93 #define CONFIG_OMAP_HSMMC
94
95 /*
96  * Power
97  */
98
99 #define CONFIG_TWL6030_POWER
100
101 /*
102  * Input
103  */
104
105 #define CONFIG_TWL6030_INPUT
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             (SRAM_SCRATCH_SPACE_ADDR - \
122                                          CONFIG_SPL_TEXT_BASE)
123 #define CONFIG_SPL_BSS_START_ADDR       0x80000000
124 #define CONFIG_SPL_BSS_MAX_SIZE         (512 * 1024)
125 #define CONFIG_SYS_SPL_MALLOC_START     0x80208000
126 #define CONFIG_SYS_SPL_MALLOC_SIZE      (1024 * 1024)
127
128 #define CONFIG_SPL_LDSCRIPT             "arch/arm/mach-omap2/u-boot-spl.lds"
129 #define CONFIG_SPL_BOARD_INIT
130
131 #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION      2
132
133 /*
134  * Console
135  */
136
137 #define CONFIG_AUTO_COMPLETE
138
139 #define CONFIG_SYS_LONGHELP
140
141 #define CONFIG_SYS_MAXARGS      16
142 #define CONFIG_SYS_CBSIZE       512
143 #define CONFIG_SYS_PBSIZE       (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) \
144                                  + 16)
145
146 /*
147  * Serial
148  */
149
150 #define CONFIG_SYS_NS16550_SERIAL
151 #define CONFIG_SYS_NS16550_REG_SIZE     (-4)
152 #define CONFIG_SYS_NS16550_CLK          48000000
153 #define CONFIG_SYS_NS16550_COM3         UART3_BASE
154 #define CONFIG_CONS_INDEX               3
155
156 #define CONFIG_BAUDRATE                 115200
157 #define CONFIG_SYS_BAUDRATE_TABLE       { 4800, 9600, 19200, 38400, 57600, \
158                                           115200 }
159
160 /*
161  * USB gadget
162  */
163
164 #define CONFIG_USB_MUSB_PIO_ONLY
165 #define CONFIG_USB_MUSB_OMAP2PLUS
166
167 /*
168  * Fastboot
169  */
170
171 #define CONFIG_USB_FUNCTION_FASTBOOT
172
173 #define CONFIG_FASTBOOT_BUF_ADDR        CONFIG_SYS_LOAD_ADDR
174 #define CONFIG_FASTBOOT_BUF_SIZE        0x2000000
175
176 #define CONFIG_FASTBOOT_FLASH
177 #define CONFIG_FASTBOOT_FLASH_MMC_DEV   0
178
179 #define CONFIG_CMD_FASTBOOT
180
181 /*
182  * Environment
183  */
184
185 #define CONFIG_ENV_SIZE         (128 * 1024)
186 #define CONFIG_ENV_IS_NOWHERE
187
188 #define CONFIG_ENV_OVERWRITE
189
190 #define CONFIG_EXTRA_ENV_SETTINGS \
191         "kernel_addr_r=0x82000000\0" \
192         "loadaddr=0x82000000\0" \
193         "fdt_addr_r=0x88000000\0" \
194         "fdtaddr=0x88000000\0" \
195         "ramdisk_addr_r=0x88080000\0" \
196         "pxefile_addr_r=0x80100000\0" \
197         "scriptaddr=0x80000000\0" \
198         "bootm_size=0x10000000\0" \
199         "boot_mmc_dev=0\0" \
200         "kernel_mmc_part=7\0" \
201         "recovery_mmc_part=5\0" \
202         "fdtfile=omap4-kc1.dtb\0" \
203         "bootfile=/boot/extlinux/extlinux.conf\0" \
204         "bootargs=console=ttyO2,115200 mem=512M\0"
205
206 /*
207  * ATAGs
208  */
209
210 #define CONFIG_SETUP_MEMORY_TAGS
211 #define CONFIG_CMDLINE_TAG
212 #define CONFIG_INITRD_TAG
213 #define CONFIG_REVISION_TAG
214 #define CONFIG_SERIAL_TAG
215
216 /*
217  * Boot
218  */
219
220 #define CONFIG_SYS_LOAD_ADDR    0x82000000
221
222 #define CONFIG_ANDROID_BOOT_IMAGE
223
224 #define CONFIG_BOOTCOMMAND \
225         "setenv boot_mmc_part ${kernel_mmc_part}; " \
226         "if test reboot-${reboot-mode} = reboot-r; then " \
227         "echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; " \
228         "if test reboot-${reboot-mode} = reboot-b; then " \
229         "echo fastboot; fastboot 0; fi; " \
230         "part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; " \
231         "part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; " \
232         "mmc dev ${boot_mmc_dev}; " \
233         "mmc read ${kernel_addr_r} ${boot_mmc_start} ${boot_mmc_size} && " \
234         "bootm ${kernel_addr_r};"
235
236 /*
237  * Defaults
238  */
239
240 #include <config_defaults.h>
241 #include <config_distro_defaults.h>
242
243 #endif