blob: c84a5ca2e5e6c4d3e8b02cf77be66ed075fe13f8 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Darwin Rambo8ab2c482014-02-11 11:06:38 -08002/*
3 * Copyright 2013 Broadcom Corporation.
Darwin Rambo8ab2c482014-02-11 11:06:38 -08004 */
5
6#ifndef __BCM28155_AP_H
7#define __BCM28155_AP_H
8
Alexey Brodkin267d8e22014-02-26 17:47:58 +04009#include <linux/sizes.h>
Darwin Rambo8ab2c482014-02-11 11:06:38 -080010#include <asm/arch/sysmap.h>
11
Masahiro Yamada062f6542014-11-06 14:59:33 +090012/* CPU, chip, mach, etc */
Darwin Rambo8ab2c482014-02-11 11:06:38 -080013#define CONFIG_KONA
14#define CONFIG_SKIP_LOWLEVEL_INIT
Darwin Rambo8ab2c482014-02-11 11:06:38 -080015
16/*
17 * Memory configuration
18 */
Darwin Rambo8ab2c482014-02-11 11:06:38 -080019
20#define CONFIG_SYS_SDRAM_BASE 0x80000000
21#define CONFIG_SYS_SDRAM_SIZE 0x80000000
Darwin Rambo8ab2c482014-02-11 11:06:38 -080022
23#define CONFIG_SYS_MALLOC_LEN SZ_4M /* see armv7/start.S. */
Darwin Rambo8ab2c482014-02-11 11:06:38 -080024
25/* GPIO Driver */
26#define CONFIG_KONA_GPIO
27
28/* MMC/SD Driver */
Darwin Rambo8ab2c482014-02-11 11:06:38 -080029#define CONFIG_SYS_SDIO_BASE0 SDIO1_BASE_ADDR
30#define CONFIG_SYS_SDIO_BASE1 SDIO2_BASE_ADDR
31#define CONFIG_SYS_SDIO_BASE2 SDIO3_BASE_ADDR
32#define CONFIG_SYS_SDIO_BASE3 SDIO4_BASE_ADDR
33#define CONFIG_SYS_SDIO0_MAX_CLK 48000000
34#define CONFIG_SYS_SDIO1_MAX_CLK 48000000
35#define CONFIG_SYS_SDIO2_MAX_CLK 48000000
36#define CONFIG_SYS_SDIO3_MAX_CLK 48000000
37#define CONFIG_SYS_SDIO0 "sdio1"
38#define CONFIG_SYS_SDIO1 "sdio2"
39#define CONFIG_SYS_SDIO2 "sdio3"
40#define CONFIG_SYS_SDIO3 "sdio4"
41
42/* I2C Driver */
43#define CONFIG_SYS_I2C
44#define CONFIG_SYS_I2C_KONA
45#define CONFIG_SYS_SPD_BUS_NUM 3 /* Start with PMU bus */
46#define CONFIG_SYS_MAX_I2C_BUS 4
47#define CONFIG_SYS_I2C_BASE0 BSC1_BASE_ADDR
48#define CONFIG_SYS_I2C_BASE1 BSC2_BASE_ADDR
49#define CONFIG_SYS_I2C_BASE2 BSC3_BASE_ADDR
50#define CONFIG_SYS_I2C_BASE3 PMU_BSC_BASE_ADDR
51
52/* Timer Driver */
53#define CONFIG_SYS_TIMER_RATE 32000
54#define CONFIG_SYS_TIMER_COUNTER (TIMER_BASE_ADDR + 4) /* STCLO offset */
55
56/* Init functions */
Darwin Rambo8ab2c482014-02-11 11:06:38 -080057
58/* Some commands use this as the default load address */
59#define CONFIG_SYS_LOAD_ADDR CONFIG_SYS_SDRAM_BASE
60
61/* No mtest functions as recommended */
Darwin Rambo8ab2c482014-02-11 11:06:38 -080062
63/*
64 * This is the initial SP which is used only briefly for relocating the u-boot
65 * image to the top of SDRAM. After relocation u-boot moves the stack to the
66 * proper place.
67 */
68#define CONFIG_SYS_INIT_SP_ADDR CONFIG_SYS_TEXT_BASE
69
70/* Serial Info */
Darwin Rambo8ab2c482014-02-11 11:06:38 -080071#define CONFIG_SYS_NS16550_SERIAL
72/* Post pad 3 bytes after each reg addr */
73#define CONFIG_SYS_NS16550_REG_SIZE (-4)
74#define CONFIG_SYS_NS16550_CLK 13000000
Darwin Rambo8ab2c482014-02-11 11:06:38 -080075#define CONFIG_SYS_NS16550_COM1 0x3e000000
76
Steve Raedf095242016-04-04 12:59:45 -070077/* must fit into GPT:u-boot-env partition */
Darwin Rambo8ab2c482014-02-11 11:06:38 -080078
Darwin Rambo8ab2c482014-02-11 11:06:38 -080079/* console configuration */
80#define CONFIG_SYS_CBSIZE 1024 /* Console buffer size */
Darwin Rambo8ab2c482014-02-11 11:06:38 -080081#define CONFIG_SYS_MAXARGS 64
82#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
83
84/*
85 * One partition type must be defined for part.c
86 * This is necessary for the fatls command to work on an SD card
87 * for example.
88 */
Darwin Rambo8ab2c482014-02-11 11:06:38 -080089
90/* version string, parser, etc */
Darwin Rambo8ab2c482014-02-11 11:06:38 -080091
Darwin Rambo8ab2c482014-02-11 11:06:38 -080092/* Initial upstream - boot to cmd prompt only */
93#define CONFIG_BOOTCOMMAND ""
94
Jiandong Zheng3d310262015-07-09 14:26:40 -070095#define CONFIG_USBID_ADDR 0x34052c46
Jiandong Zheng3d310262015-07-09 14:26:40 -070096
Darwin Rambo8ab2c482014-02-11 11:06:38 -080097#endif /* __BCM28155_AP_H */