blob: 6ea6fb07f98be10e5347570a37cc41e953214126 [file] [log] [blame]
Darwin Rambo9ed679a2014-02-11 11:06:38 -08001/*
2 * Copyright 2013 Broadcom Corporation.
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7#ifndef __BCM28155_AP_H
8#define __BCM28155_AP_H
9
Alexey Brodkin1ace4022014-02-26 17:47:58 +040010#include <linux/sizes.h>
Darwin Rambo9ed679a2014-02-11 11:06:38 -080011#include <asm/arch/sysmap.h>
12
Masahiro Yamada3fcfe802014-11-06 14:59:33 +090013/* CPU, chip, mach, etc */
Darwin Rambo9ed679a2014-02-11 11:06:38 -080014#define CONFIG_KONA
15#define CONFIG_SKIP_LOWLEVEL_INIT
Darwin Rambo9ed679a2014-02-11 11:06:38 -080016
17/*
18 * Memory configuration
19 */
20#define CONFIG_SYS_TEXT_BASE 0xae000000
21
22#define CONFIG_SYS_SDRAM_BASE 0x80000000
23#define CONFIG_SYS_SDRAM_SIZE 0x80000000
24#define CONFIG_NR_DRAM_BANKS 1
25
26#define CONFIG_SYS_MALLOC_LEN SZ_4M /* see armv7/start.S. */
27#define CONFIG_STACKSIZE SZ_256K
28
29/* GPIO Driver */
30#define CONFIG_KONA_GPIO
31
32/* MMC/SD Driver */
33#define CONFIG_SDHCI
34#define CONFIG_MMC_SDMA
35#define CONFIG_KONA_SDHCI
36#define CONFIG_MMC
37#define CONFIG_GENERIC_MMC
38
39#define CONFIG_SYS_SDIO_BASE0 SDIO1_BASE_ADDR
40#define CONFIG_SYS_SDIO_BASE1 SDIO2_BASE_ADDR
41#define CONFIG_SYS_SDIO_BASE2 SDIO3_BASE_ADDR
42#define CONFIG_SYS_SDIO_BASE3 SDIO4_BASE_ADDR
43#define CONFIG_SYS_SDIO0_MAX_CLK 48000000
44#define CONFIG_SYS_SDIO1_MAX_CLK 48000000
45#define CONFIG_SYS_SDIO2_MAX_CLK 48000000
46#define CONFIG_SYS_SDIO3_MAX_CLK 48000000
47#define CONFIG_SYS_SDIO0 "sdio1"
48#define CONFIG_SYS_SDIO1 "sdio2"
49#define CONFIG_SYS_SDIO2 "sdio3"
50#define CONFIG_SYS_SDIO3 "sdio4"
51
52/* I2C Driver */
53#define CONFIG_SYS_I2C
54#define CONFIG_SYS_I2C_KONA
55#define CONFIG_SYS_SPD_BUS_NUM 3 /* Start with PMU bus */
56#define CONFIG_SYS_MAX_I2C_BUS 4
57#define CONFIG_SYS_I2C_BASE0 BSC1_BASE_ADDR
58#define CONFIG_SYS_I2C_BASE1 BSC2_BASE_ADDR
59#define CONFIG_SYS_I2C_BASE2 BSC3_BASE_ADDR
60#define CONFIG_SYS_I2C_BASE3 PMU_BSC_BASE_ADDR
61
62/* Timer Driver */
63#define CONFIG_SYS_TIMER_RATE 32000
64#define CONFIG_SYS_TIMER_COUNTER (TIMER_BASE_ADDR + 4) /* STCLO offset */
65
66/* Init functions */
67#define CONFIG_MISC_INIT_R /* board's misc_init_r function */
68
69/* Some commands use this as the default load address */
70#define CONFIG_SYS_LOAD_ADDR CONFIG_SYS_SDRAM_BASE
71
72/* No mtest functions as recommended */
Darwin Rambo9ed679a2014-02-11 11:06:38 -080073
74/*
75 * This is the initial SP which is used only briefly for relocating the u-boot
76 * image to the top of SDRAM. After relocation u-boot moves the stack to the
77 * proper place.
78 */
79#define CONFIG_SYS_INIT_SP_ADDR CONFIG_SYS_TEXT_BASE
80
81/* Serial Info */
82#define CONFIG_SYS_NS16550
83#define CONFIG_SYS_NS16550_SERIAL
84/* Post pad 3 bytes after each reg addr */
85#define CONFIG_SYS_NS16550_REG_SIZE (-4)
86#define CONFIG_SYS_NS16550_CLK 13000000
87#define CONFIG_CONS_INDEX 1
88#define CONFIG_SYS_NS16550_COM1 0x3e000000
89
90#define CONFIG_BAUDRATE 115200
91
92#define CONFIG_ENV_SIZE 0x10000
93#define CONFIG_ENV_IS_NOWHERE
94
95#define CONFIG_SYS_NO_FLASH /* Not using NAND/NOR unmanaged flash */
96
97/* console configuration */
98#define CONFIG_SYS_CBSIZE 1024 /* Console buffer size */
99#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \
100 sizeof(CONFIG_SYS_PROMPT) + 16) /* Printbuffer size */
101#define CONFIG_SYS_MAXARGS 64
102#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
103
104/*
105 * One partition type must be defined for part.c
106 * This is necessary for the fatls command to work on an SD card
107 * for example.
108 */
109#define CONFIG_DOS_PARTITION
Jiandong Zhengd00bf782015-07-09 14:26:40 -0700110#define CONFIG_EFI_PARTITION
Darwin Rambo9ed679a2014-02-11 11:06:38 -0800111
112/* version string, parser, etc */
113#define CONFIG_VERSION_VARIABLE
114#define CONFIG_AUTO_COMPLETE
115#define CONFIG_SYS_HUSH_PARSER
116#define CONFIG_CMDLINE_EDITING
117#define CONFIG_SYS_LONGHELP
118
119#define CONFIG_CRC32_VERIFY
120#define CONFIG_MX_CYCLIC
121
122/* Initial upstream - boot to cmd prompt only */
123#define CONFIG_BOOTCOMMAND ""
124
125/* Commands */
Darwin Rambo9ed679a2014-02-11 11:06:38 -0800126#define CONFIG_CMD_ASKENV
127#define CONFIG_CMD_CACHE
128#define CONFIG_CMD_FAT
129#define CONFIG_CMD_GPIO
130#define CONFIG_CMD_I2C
131#define CONFIG_CMD_MMC
132#define CONFIG_CMD_BOOTZ
133#define CONFIG_FAT_WRITE
134
Darwin Rambo9ed679a2014-02-11 11:06:38 -0800135
Jiandong Zhengd00bf782015-07-09 14:26:40 -0700136/* Fastboot and USB OTG */
137#define CONFIG_USB_FUNCTION_FASTBOOT
138#define CONFIG_CMD_FASTBOOT
139#define CONFIG_FASTBOOT_FLASH
140#define CONFIG_FASTBOOT_FLASH_MMC_DEV 0
141#define CONFIG_SYS_CACHELINE_SIZE 64
Paul Kocialkowskia588d992015-07-20 12:38:22 +0200142#define CONFIG_FASTBOOT_BUF_SIZE (CONFIG_SYS_SDRAM_SIZE - SZ_1M)
143#define CONFIG_FASTBOOT_BUF_ADDR CONFIG_SYS_SDRAM_BASE
Jiandong Zhengd00bf782015-07-09 14:26:40 -0700144#define CONFIG_USB_GADGET
145#define CONFIG_USB_GADGET_DUALSPEED
146#define CONFIG_USB_GADGET_VBUS_DRAW 0
147#define CONFIG_USB_GADGET_S3C_UDC_OTG
148#define CONFIG_USB_GADGET_BCM_UDC_OTG_PHY
149#define CONFIG_USB_GADGET_DOWNLOAD
150#define CONFIG_USBID_ADDR 0x34052c46
151#define CONFIG_G_DNL_VENDOR_NUM 0x18d1 /* google */
152#define CONFIG_G_DNL_PRODUCT_NUM 0x0d02 /* nexus one */
153#define CONFIG_G_DNL_MANUFACTURER "Broadcom Corporation"
154
Jiandong Zheng1bf73bd2015-07-09 14:26:40 -0700155/* Fastboot and USB OTG */
156#define CONFIG_USB_FUNCTION_FASTBOOT
157#define CONFIG_CMD_FASTBOOT
158#define CONFIG_FASTBOOT_FLASH
159#define CONFIG_FASTBOOT_FLASH_MMC_DEV 0
160#define CONFIG_SYS_CACHELINE_SIZE 64
161#define CONFIG_USB_FASTBOOT_BUF_SIZE (CONFIG_SYS_SDRAM_SIZE - SZ_1M)
162#define CONFIG_USB_FASTBOOT_BUF_ADDR CONFIG_SYS_SDRAM_BASE
163#define CONFIG_USB_GADGET
164#define CONFIG_USB_GADGET_DUALSPEED
165#define CONFIG_USB_GADGET_VBUS_DRAW 0
166#define CONFIG_USB_GADGET_S3C_UDC_OTG
167#define CONFIG_USB_GADGET_BCM_UDC_OTG_PHY
168#define CONFIG_USB_GADGET_DOWNLOAD
169#define CONFIG_USBID_ADDR 0x34052c46
170#define CONFIG_G_DNL_VENDOR_NUM 0x18d1 /* google */
171#define CONFIG_G_DNL_PRODUCT_NUM 0x0d02 /* nexus one */
172#define CONFIG_G_DNL_MANUFACTURER "Broadcom Corporation"
173
Darwin Rambo9ed679a2014-02-11 11:06:38 -0800174#endif /* __BCM28155_AP_H */