1d1f2dbb22626e9e9f837699232fc43d0eb5494b
[oweals/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 /*
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_I2C_MULTI_BUS
62
63 /*
64  * Power
65  */
66
67 #define CONFIG_TWL6030_POWER
68
69 /*
70  * Input
71  */
72
73 #define CONFIG_TWL6030_INPUT
74
75 /*
76  * SPL
77  */
78
79 #define CONFIG_SPL_FRAMEWORK
80
81 #define CONFIG_SPL_TEXT_BASE            0x40300000
82 #define CONFIG_SPL_MAX_SIZE             (SRAM_SCRATCH_SPACE_ADDR - \
83                                          CONFIG_SPL_TEXT_BASE)
84 #define CONFIG_SPL_BSS_START_ADDR       0x80000000
85 #define CONFIG_SPL_BSS_MAX_SIZE         (512 * 1024)
86 #define CONFIG_SYS_SPL_MALLOC_START     0x80208000
87 #define CONFIG_SYS_SPL_MALLOC_SIZE      (1024 * 1024)
88
89 /*
90  * Console
91  */
92
93 #define CONFIG_AUTO_COMPLETE
94
95 #define CONFIG_SYS_LONGHELP
96
97 #define CONFIG_SYS_CBSIZE       512
98
99 /*
100  * Serial
101  */
102
103 #define CONFIG_SYS_NS16550_SERIAL
104 #define CONFIG_SYS_NS16550_REG_SIZE     (-4)
105 #define CONFIG_SYS_NS16550_CLK          48000000
106 #define CONFIG_SYS_NS16550_COM3         UART3_BASE
107 #define CONFIG_CONS_INDEX               3
108
109 #define CONFIG_SYS_BAUDRATE_TABLE       { 4800, 9600, 19200, 38400, 57600, \
110                                           115200 }
111
112 /*
113  * USB gadget
114  */
115
116 /*
117  * Environment
118  */
119
120 #define CONFIG_ENV_SIZE         (128 * 1024)
121
122 #define CONFIG_ENV_OVERWRITE
123
124 #define CONFIG_EXTRA_ENV_SETTINGS \
125         "kernel_addr_r=0x82000000\0" \
126         "loadaddr=0x82000000\0" \
127         "fdt_addr_r=0x88000000\0" \
128         "fdtaddr=0x88000000\0" \
129         "ramdisk_addr_r=0x88080000\0" \
130         "pxefile_addr_r=0x80100000\0" \
131         "scriptaddr=0x80000000\0" \
132         "bootm_size=0x10000000\0" \
133         "boot_mmc_dev=0\0" \
134         "kernel_mmc_part=7\0" \
135         "recovery_mmc_part=5\0" \
136         "fdtfile=omap4-kc1.dtb\0" \
137         "bootfile=/boot/extlinux/extlinux.conf\0" \
138         "bootargs=console=ttyO2,115200 mem=512M\0"
139
140 /*
141  * ATAGs
142  */
143
144 #define CONFIG_SETUP_MEMORY_TAGS
145 #define CONFIG_CMDLINE_TAG
146 #define CONFIG_INITRD_TAG
147 #define CONFIG_REVISION_TAG
148 #define CONFIG_SERIAL_TAG
149
150 /*
151  * Boot
152  */
153
154 #define CONFIG_SYS_LOAD_ADDR    0x82000000
155
156 #define CONFIG_BOOTCOMMAND \
157         "setenv boot_mmc_part ${kernel_mmc_part}; " \
158         "if test reboot-${reboot-mode} = reboot-r; then " \
159         "echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; " \
160         "if test reboot-${reboot-mode} = reboot-b; then " \
161         "echo fastboot; fastboot 0; fi; " \
162         "part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; " \
163         "part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; " \
164         "mmc dev ${boot_mmc_dev}; " \
165         "mmc read ${kernel_addr_r} ${boot_mmc_start} ${boot_mmc_size} && " \
166         "bootm ${kernel_addr_r};"
167
168 /*
169  * Defaults
170  */
171
172 #include <config_defaults.h>
173 #include <config_distro_defaults.h>
174
175 #endif