xref: /openbmc/u-boot/include/configs/kc1.h (revision fd1e959e)
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 /*
20  * CPU
21  */
22 
23 #define CONFIG_SYS_L2_PL310		1
24 #define CONFIG_SYS_PL310_BASE		0x48242000
25 
26 /*
27  * Board
28  */
29 
30 #define CONFIG_MISC_INIT_R
31 
32 /*
33  * Clocks
34  */
35 
36 #define CONFIG_SYS_TIMERBASE	GPT2_BASE
37 #define CONFIG_SYS_PTV		2
38 
39 /*
40  * DRAM
41  */
42 
43 #define CONFIG_NR_DRAM_BANKS	1
44 
45 /*
46  * Memory
47  */
48 
49 #define CONFIG_SYS_TEXT_BASE		0x80100000
50 #define CONFIG_SYS_SDRAM_BASE		0x80000000
51 #define CONFIG_SYS_INIT_SP_ADDR		(NON_SECURE_SRAM_END - \
52 					 GENERATED_GBL_DATA_SIZE)
53 
54 #define CONFIG_SYS_MALLOC_LEN		(1024 * 1024 + CONFIG_ENV_SIZE)
55 
56 /*
57  * I2C
58  */
59 
60 #define CONFIG_SYS_I2C
61 #define CONFIG_SYS_OMAP24_I2C_SPEED	400000
62 #define CONFIG_SYS_OMAP24_I2C_SLAVE	1
63 #define CONFIG_I2C_MULTI_BUS
64 
65 /*
66  * Power
67  */
68 
69 #define CONFIG_TWL6030_POWER
70 
71 /*
72  * Input
73  */
74 
75 #define CONFIG_TWL6030_INPUT
76 
77 /*
78  * SPL
79  */
80 
81 #define CONFIG_SPL_FRAMEWORK
82 
83 #define CONFIG_SPL_TEXT_BASE		0x40300000
84 #define CONFIG_SPL_MAX_SIZE		(SRAM_SCRATCH_SPACE_ADDR - \
85 					 CONFIG_SPL_TEXT_BASE)
86 #define CONFIG_SPL_BSS_START_ADDR	0x80000000
87 #define CONFIG_SPL_BSS_MAX_SIZE		(512 * 1024)
88 #define CONFIG_SYS_SPL_MALLOC_START	0x80208000
89 #define CONFIG_SYS_SPL_MALLOC_SIZE	(1024 * 1024)
90 
91 /*
92  * Console
93  */
94 
95 #define CONFIG_AUTO_COMPLETE
96 
97 #define CONFIG_SYS_LONGHELP
98 
99 #define CONFIG_SYS_MAXARGS	16
100 #define CONFIG_SYS_CBSIZE	512
101 #define CONFIG_SYS_PBSIZE	(CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) \
102 				 + 16)
103 
104 /*
105  * Serial
106  */
107 
108 #define CONFIG_SYS_NS16550_SERIAL
109 #define CONFIG_SYS_NS16550_REG_SIZE	(-4)
110 #define CONFIG_SYS_NS16550_CLK		48000000
111 #define CONFIG_SYS_NS16550_COM3		UART3_BASE
112 #define CONFIG_CONS_INDEX		3
113 
114 #define CONFIG_SYS_BAUDRATE_TABLE	{ 4800, 9600, 19200, 38400, 57600, \
115 					  115200 }
116 
117 /*
118  * USB gadget
119  */
120 
121 #define CONFIG_USB_MUSB_PIO_ONLY
122 #define CONFIG_USB_MUSB_OMAP2PLUS
123 
124 /*
125  * Fastboot
126  */
127 
128 #define CONFIG_USB_FUNCTION_FASTBOOT
129 
130 #define CONFIG_FASTBOOT_BUF_ADDR	CONFIG_SYS_LOAD_ADDR
131 #define CONFIG_FASTBOOT_BUF_SIZE	0x2000000
132 
133 #define CONFIG_FASTBOOT_FLASH
134 #define CONFIG_FASTBOOT_FLASH_MMC_DEV	0
135 
136 #define CONFIG_CMD_FASTBOOT
137 
138 /*
139  * Environment
140  */
141 
142 #define CONFIG_ENV_SIZE		(128 * 1024)
143 
144 #define CONFIG_ENV_OVERWRITE
145 
146 #define CONFIG_EXTRA_ENV_SETTINGS \
147 	"kernel_addr_r=0x82000000\0" \
148 	"loadaddr=0x82000000\0" \
149 	"fdt_addr_r=0x88000000\0" \
150 	"fdtaddr=0x88000000\0" \
151 	"ramdisk_addr_r=0x88080000\0" \
152 	"pxefile_addr_r=0x80100000\0" \
153 	"scriptaddr=0x80000000\0" \
154 	"bootm_size=0x10000000\0" \
155 	"boot_mmc_dev=0\0" \
156 	"kernel_mmc_part=7\0" \
157 	"recovery_mmc_part=5\0" \
158 	"fdtfile=omap4-kc1.dtb\0" \
159 	"bootfile=/boot/extlinux/extlinux.conf\0" \
160 	"bootargs=console=ttyO2,115200 mem=512M\0"
161 
162 /*
163  * ATAGs
164  */
165 
166 #define CONFIG_SETUP_MEMORY_TAGS
167 #define CONFIG_CMDLINE_TAG
168 #define CONFIG_INITRD_TAG
169 #define CONFIG_REVISION_TAG
170 #define CONFIG_SERIAL_TAG
171 
172 /*
173  * Boot
174  */
175 
176 #define CONFIG_SYS_LOAD_ADDR	0x82000000
177 
178 #define CONFIG_ANDROID_BOOT_IMAGE
179 
180 #define CONFIG_BOOTCOMMAND \
181 	"setenv boot_mmc_part ${kernel_mmc_part}; " \
182 	"if test reboot-${reboot-mode} = reboot-r; then " \
183 	"echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; " \
184 	"if test reboot-${reboot-mode} = reboot-b; then " \
185 	"echo fastboot; fastboot 0; fi; " \
186 	"part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; " \
187 	"part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; " \
188 	"mmc dev ${boot_mmc_dev}; " \
189 	"mmc read ${kernel_addr_r} ${boot_mmc_start} ${boot_mmc_size} && " \
190 	"bootm ${kernel_addr_r};"
191 
192 /*
193  * Defaults
194  */
195 
196 #include <config_defaults.h>
197 #include <config_distro_defaults.h>
198 
199 #endif
200