blob: 08046b5e995dd62a4712e8eafe7898a138c0b18f [file] [log] [blame]
Paul Kocialkowski02579302015-07-20 15:17:11 +02001/*
2 * LG Optimus Black (P970) codename sniper config
3 *
4 * Copyright (C) 2015 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 * CPU
17 */
18
19#define CONFIG_SYS_CACHELINE_SIZE 64
20
21#define CONFIG_ARM_ARCH_CP15_ERRATA
22#define CONFIG_ARM_ERRATA_454179
23#define CONFIG_ARM_ERRATA_430973
24#define CONFIG_ARM_ERRATA_621766
25
26/*
27 * Platform
28 */
29
30#define CONFIG_OMAP
31#define CONFIG_OMAP_COMMON
32
33/*
34 * Board
35 */
36
Paul Kocialkowski957efd42015-07-20 15:17:12 +020037#define CONFIG_MISC_INIT_R
Paul Kocialkowski02579302015-07-20 15:17:11 +020038
39/*
40 * Clocks
41 */
42
43#define CONFIG_SYS_TIMERBASE OMAP34XX_GPT2
44#define CONFIG_SYS_PTV 2
45
46#define V_NS16550_CLK 48000000
47#define V_OSCK 26000000
48#define V_SCLK (V_OSCK >> 1)
49
50/*
51 * DRAM
52 */
53
54#define CONFIG_SDRC
55#define CONFIG_NR_DRAM_BANKS 2
56#define PHYS_SDRAM_1 OMAP34XX_SDRC_CS0
57#define PHYS_SDRAM_2 OMAP34XX_SDRC_CS1
58
59/*
60 * Memory
61 */
62
63#define CONFIG_SYS_TEXT_BASE 0x80100000
64#define CONFIG_SYS_SDRAM_BASE OMAP34XX_SDRC_CS0
65#define CONFIG_SYS_INIT_RAM_ADDR 0x4020F800
66#define CONFIG_SYS_INIT_RAM_SIZE 0x800
67#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_INIT_RAM_ADDR + \
68 CONFIG_SYS_INIT_RAM_SIZE - \
69 GENERATED_GBL_DATA_SIZE)
70
71#define CONFIG_SYS_MALLOC_LEN (1024 * 1024 + CONFIG_ENV_SIZE)
72
73/*
74 * GPIO
75 */
76
77#define CONFIG_OMAP_GPIO
78#define CONFIG_OMAP3_GPIO_2
79#define CONFIG_OMAP3_GPIO_3
80#define CONFIG_OMAP3_GPIO_4
81#define CONFIG_OMAP3_GPIO_5
82#define CONFIG_OMAP3_GPIO_6
83
84/*
85 * I2C
86 */
87
88#define CONFIG_SYS_I2C
89#define CONFIG_SYS_OMAP24_I2C_SPEED 400000
90#define CONFIG_SYS_OMAP24_I2C_SLAVE 1
91#define CONFIG_SYS_I2C_OMAP34XX
92#define CONFIG_I2C_MULTI_BUS
93
94#define CONFIG_CMD_I2C
95
96/*
97 * Flash
98 */
99
100#define CONFIG_SYS_NO_FLASH
101
102/*
103 * MMC
104 */
105
106#define CONFIG_GENERIC_MMC
107#define CONFIG_MMC
108#define CONFIG_OMAP_HSMMC
109
110#define CONFIG_CMD_MMC
111
112/*
113 * Power
114 */
115
116#define CONFIG_TWL4030_POWER
117
118/*
119 * Input
120 */
121
122#define CONFIG_TWL4030_INPUT
123
124/*
125 * Partitions
126 */
127
128#define CONFIG_PARTITION_UUIDS
129#define CONFIG_DOS_PARTITION
130#define CONFIG_EFI_PARTITION
131
132#define CONFIG_CMD_PART
133
134/*
135 * Filesystems
136 */
137
138#define CONFIG_CMD_FS_GENERIC
139#define CONFIG_CMD_EXT2
140#define CONFIG_CMD_EXT4
141#define CONFIG_CMD_FAT
142
143/*
144 * SPL
145 */
146
147#define CONFIG_SPL_FRAMEWORK
148
149#define CONFIG_SPL_TEXT_BASE 0x40200000
150#define CONFIG_SPL_MAX_SIZE (54 * 1024)
151#define CONFIG_SPL_BSS_START_ADDR 0x80000000
152#define CONFIG_SPL_BSS_MAX_SIZE (512 * 1024)
153#define CONFIG_SYS_SPL_MALLOC_START 0x80208000
154#define CONFIG_SYS_SPL_MALLOC_SIZE (1024 * 1024)
155#define CONFIG_SPL_STACK LOW_LEVEL_SRAM_STACK
156
157#define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds"
158#define CONFIG_SPL_BOARD_INIT
159
160#define CONFIG_SPL_LIBGENERIC_SUPPORT
161#define CONFIG_SPL_LIBCOMMON_SUPPORT
162#define CONFIG_SPL_LIBDISK_SUPPORT
163#define CONFIG_SPL_SERIAL_SUPPORT
164#define CONFIG_SPL_POWER_SUPPORT
165#define CONFIG_SPL_GPIO_SUPPORT
166#define CONFIG_SPL_I2C_SUPPORT
167#define CONFIG_SPL_MMC_SUPPORT
168#define CONFIG_SPL_FAT_SUPPORT
169
170#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION 2
171
172#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
173#define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img"
174
175/*
176 * Console
177 */
178
179#define CONFIG_SYS_CONSOLE_IS_IN_ENV
180
181#define CONFIG_DISPLAY_CPUINFO
182#define CONFIG_DISPLAY_BOARDINFO
183
184#define CONFIG_AUTO_COMPLETE
185
Paul Kocialkowski02579302015-07-20 15:17:11 +0200186#define CONFIG_SYS_LONGHELP
187#define CONFIG_SYS_HUSH_PARSER
188
189#define CONFIG_SYS_MAXARGS 16
190#define CONFIG_SYS_CBSIZE 512
191#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) \
192 + 16)
193
194/*
195 * Serial
196 */
197
198
Thomas Chou4fb60552015-11-19 21:48:13 +0800199#ifdef CONFIG_SPL_BUILD
Paul Kocialkowski02579302015-07-20 15:17:11 +0200200#define CONFIG_SYS_NS16550_SERIAL
201#define CONFIG_SYS_NS16550_REG_SIZE (-4)
Paul Kocialkowski02579302015-07-20 15:17:11 +0200202#endif
203
Thomas Chouc7b96862015-11-19 21:48:12 +0800204#define CONFIG_SYS_NS16550_CLK V_NS16550_CLK
Paul Kocialkowski02579302015-07-20 15:17:11 +0200205#define CONFIG_SYS_NS16550_COM3 OMAP34XX_UART3
206#define CONFIG_CONS_INDEX 3
207#define CONFIG_SERIAL3 3
208
209#define CONFIG_BAUDRATE 115200
210#define CONFIG_SYS_BAUDRATE_TABLE { 4800, 9600, 19200, 38400, 57600, \
211 115200 }
212
213/*
Paul Kocialkowskifbdd3292015-07-20 15:17:15 +0200214 * USB gadget
215 */
216
217#define CONFIG_USB_MUSB_PIO_ONLY
218#define CONFIG_USB_MUSB_OMAP2PLUS
219#define CONFIG_TWL4030_USB
220
221#define CONFIG_USB_GADGET
222#define CONFIG_USB_GADGET_DUALSPEED
223#define CONFIG_USB_GADGET_VBUS_DRAW 0
224
225/*
226 * Download
227 */
228
229#define CONFIG_USB_GADGET_DOWNLOAD
230
231#define CONFIG_G_DNL_VENDOR_NUM 0x0451
232#define CONFIG_G_DNL_PRODUCT_NUM 0xd022
233#define CONFIG_G_DNL_MANUFACTURER "Texas Instruments"
234
235/*
236 * Fastboot
237 */
238
239#define CONFIG_USB_FUNCTION_FASTBOOT
240
241#define CONFIG_FASTBOOT_BUF_ADDR CONFIG_SYS_LOAD_ADDR
242#define CONFIG_FASTBOOT_BUF_SIZE 0x2000000
243
244#define CONFIG_FASTBOOT_FLASH
245#define CONFIG_FASTBOOT_FLASH_MMC_DEV 0
246
247#define CONFIG_CMD_FASTBOOT
248
249/*
Paul Kocialkowski02579302015-07-20 15:17:11 +0200250 * Environment
251 */
252
253#define CONFIG_ENV_SIZE (128 * 1024)
254#define CONFIG_ENV_IS_NOWHERE
255
256#define CONFIG_ENV_OVERWRITE
257
258#define CONFIG_EXTRA_ENV_SETTINGS \
259 "kernel_addr_r=0x82000000\0" \
260 "boot_mmc_dev=0\0" \
261 "kernel_mmc_part=3\0" \
262 "recovery_mmc_part=4\0" \
263 "bootargs=console=ttyO2 vram=5M,0x9FA00000 omapfb.vram=0:5M\0"
264
265/*
266 * ATAGs / Device Tree
267 */
268
269#define CONFIG_OF_LIBFDT
270#define CONFIG_SETUP_MEMORY_TAGS
271#define CONFIG_CMDLINE_TAG
272#define CONFIG_INITRD_TAG
273#define CONFIG_REVISION_TAG
Paul Kocialkowski9f4e1e92015-07-20 15:17:14 +0200274#define CONFIG_SERIAL_TAG
Paul Kocialkowski02579302015-07-20 15:17:11 +0200275
276/*
277 * Boot
278 */
279
280#define CONFIG_SYS_LOAD_ADDR 0x82000000
281#define CONFIG_BOOTDELAY 1
282
283#define CONFIG_ANDROID_BOOT_IMAGE
284
285#define CONFIG_BOOTCOMMAND \
286 "setenv boot_mmc_part ${kernel_mmc_part}; " \
Paul Kocialkowski957efd42015-07-20 15:17:12 +0200287 "if test reboot-${reboot-mode} = reboot-r; then " \
288 "echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; " \
Paul Kocialkowskifbdd3292015-07-20 15:17:15 +0200289 "if test reboot-${reboot-mode} = reboot-b; then " \
290 "echo fastboot; fastboot 0; fi; " \
Paul Kocialkowski02579302015-07-20 15:17:11 +0200291 "part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; " \
292 "part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; " \
293 "mmc dev ${boot_mmc_dev}; " \
294 "mmc read ${kernel_addr_r} ${boot_mmc_start} ${boot_mmc_size} && " \
295 "bootm ${kernel_addr_r};"
296
297/*
298 * Defaults
299 */
300
301#include <config_defaults.h>
302
303#endif