d1f7a48a81b9e912420f692ce69e6975ab845045
[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_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
102 /*
103  * Serial
104  */
105
106 #define CONFIG_SYS_NS16550_SERIAL
107 #define CONFIG_SYS_NS16550_REG_SIZE     (-4)
108 #define CONFIG_SYS_NS16550_CLK          48000000
109 #define CONFIG_SYS_NS16550_COM3         UART3_BASE
110 #define CONFIG_CONS_INDEX               3
111
112 #define CONFIG_SYS_BAUDRATE_TABLE       { 4800, 9600, 19200, 38400, 57600, \
113                                           115200 }
114
115 /*
116  * USB gadget
117  */
118
119 #define CONFIG_USB_MUSB_PIO_ONLY
120 #define CONFIG_USB_MUSB_OMAP2PLUS
121
122 /*
123  * Environment
124  */
125
126 #define CONFIG_ENV_SIZE         (128 * 1024)
127
128 #define CONFIG_ENV_OVERWRITE
129
130 #define CONFIG_EXTRA_ENV_SETTINGS \
131         "kernel_addr_r=0x82000000\0" \
132         "loadaddr=0x82000000\0" \
133         "fdt_addr_r=0x88000000\0" \
134         "fdtaddr=0x88000000\0" \
135         "ramdisk_addr_r=0x88080000\0" \
136         "pxefile_addr_r=0x80100000\0" \
137         "scriptaddr=0x80000000\0" \
138         "bootm_size=0x10000000\0" \
139         "boot_mmc_dev=0\0" \
140         "kernel_mmc_part=7\0" \
141         "recovery_mmc_part=5\0" \
142         "fdtfile=omap4-kc1.dtb\0" \
143         "bootfile=/boot/extlinux/extlinux.conf\0" \
144         "bootargs=console=ttyO2,115200 mem=512M\0"
145
146 /*
147  * ATAGs
148  */
149
150 #define CONFIG_SETUP_MEMORY_TAGS
151 #define CONFIG_CMDLINE_TAG
152 #define CONFIG_INITRD_TAG
153 #define CONFIG_REVISION_TAG
154 #define CONFIG_SERIAL_TAG
155
156 /*
157  * Boot
158  */
159
160 #define CONFIG_SYS_LOAD_ADDR    0x82000000
161
162 #define CONFIG_BOOTCOMMAND \
163         "setenv boot_mmc_part ${kernel_mmc_part}; " \
164         "if test reboot-${reboot-mode} = reboot-r; then " \
165         "echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; " \
166         "if test reboot-${reboot-mode} = reboot-b; then " \
167         "echo fastboot; fastboot 0; fi; " \
168         "part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; " \
169         "part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; " \
170         "mmc dev ${boot_mmc_dev}; " \
171         "mmc read ${kernel_addr_r} ${boot_mmc_start} ${boot_mmc_size} && " \
172         "bootm ${kernel_addr_r};"
173
174 /*
175  * Defaults
176  */
177
178 #include <config_defaults.h>
179 #include <config_distro_defaults.h>
180
181 #endif