xref: /OK3568_Linux_fs/u-boot/include/configs/bcm28155_ap.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /*
2*4882a593Smuzhiyun  * Copyright 2013 Broadcom Corporation.
3*4882a593Smuzhiyun  *
4*4882a593Smuzhiyun  * SPDX-License-Identifier:      GPL-2.0+
5*4882a593Smuzhiyun  */
6*4882a593Smuzhiyun 
7*4882a593Smuzhiyun #ifndef __BCM28155_AP_H
8*4882a593Smuzhiyun #define __BCM28155_AP_H
9*4882a593Smuzhiyun 
10*4882a593Smuzhiyun #include <linux/sizes.h>
11*4882a593Smuzhiyun #include <asm/arch/sysmap.h>
12*4882a593Smuzhiyun 
13*4882a593Smuzhiyun /* CPU, chip, mach, etc */
14*4882a593Smuzhiyun #define CONFIG_KONA
15*4882a593Smuzhiyun #define CONFIG_SKIP_LOWLEVEL_INIT
16*4882a593Smuzhiyun 
17*4882a593Smuzhiyun /*
18*4882a593Smuzhiyun  * Memory configuration
19*4882a593Smuzhiyun  */
20*4882a593Smuzhiyun #define CONFIG_SYS_TEXT_BASE		0xae000000
21*4882a593Smuzhiyun 
22*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_BASE		0x80000000
23*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_SIZE		0x80000000
24*4882a593Smuzhiyun #define CONFIG_NR_DRAM_BANKS		1
25*4882a593Smuzhiyun 
26*4882a593Smuzhiyun #define CONFIG_SYS_MALLOC_LEN		SZ_4M	/* see armv7/start.S. */
27*4882a593Smuzhiyun 
28*4882a593Smuzhiyun /* GPIO Driver */
29*4882a593Smuzhiyun #define CONFIG_KONA_GPIO
30*4882a593Smuzhiyun 
31*4882a593Smuzhiyun /* MMC/SD Driver */
32*4882a593Smuzhiyun #define CONFIG_SYS_SDIO_BASE0 SDIO1_BASE_ADDR
33*4882a593Smuzhiyun #define CONFIG_SYS_SDIO_BASE1 SDIO2_BASE_ADDR
34*4882a593Smuzhiyun #define CONFIG_SYS_SDIO_BASE2 SDIO3_BASE_ADDR
35*4882a593Smuzhiyun #define CONFIG_SYS_SDIO_BASE3 SDIO4_BASE_ADDR
36*4882a593Smuzhiyun #define CONFIG_SYS_SDIO0_MAX_CLK 48000000
37*4882a593Smuzhiyun #define CONFIG_SYS_SDIO1_MAX_CLK 48000000
38*4882a593Smuzhiyun #define CONFIG_SYS_SDIO2_MAX_CLK 48000000
39*4882a593Smuzhiyun #define CONFIG_SYS_SDIO3_MAX_CLK 48000000
40*4882a593Smuzhiyun #define CONFIG_SYS_SDIO0 "sdio1"
41*4882a593Smuzhiyun #define CONFIG_SYS_SDIO1 "sdio2"
42*4882a593Smuzhiyun #define CONFIG_SYS_SDIO2 "sdio3"
43*4882a593Smuzhiyun #define CONFIG_SYS_SDIO3 "sdio4"
44*4882a593Smuzhiyun 
45*4882a593Smuzhiyun /* I2C Driver */
46*4882a593Smuzhiyun #define CONFIG_SYS_I2C
47*4882a593Smuzhiyun #define CONFIG_SYS_I2C_KONA
48*4882a593Smuzhiyun #define CONFIG_SYS_SPD_BUS_NUM	3	/* Start with PMU bus */
49*4882a593Smuzhiyun #define CONFIG_SYS_MAX_I2C_BUS	4
50*4882a593Smuzhiyun #define CONFIG_SYS_I2C_BASE0	BSC1_BASE_ADDR
51*4882a593Smuzhiyun #define CONFIG_SYS_I2C_BASE1	BSC2_BASE_ADDR
52*4882a593Smuzhiyun #define CONFIG_SYS_I2C_BASE2	BSC3_BASE_ADDR
53*4882a593Smuzhiyun #define CONFIG_SYS_I2C_BASE3	PMU_BSC_BASE_ADDR
54*4882a593Smuzhiyun 
55*4882a593Smuzhiyun /* Timer Driver */
56*4882a593Smuzhiyun #define CONFIG_SYS_TIMER_RATE		32000
57*4882a593Smuzhiyun #define CONFIG_SYS_TIMER_COUNTER	(TIMER_BASE_ADDR + 4) /* STCLO offset */
58*4882a593Smuzhiyun 
59*4882a593Smuzhiyun /* Init functions */
60*4882a593Smuzhiyun #define CONFIG_MISC_INIT_R	/* board's misc_init_r function */
61*4882a593Smuzhiyun 
62*4882a593Smuzhiyun /* Some commands use this as the default load address */
63*4882a593Smuzhiyun #define CONFIG_SYS_LOAD_ADDR		CONFIG_SYS_SDRAM_BASE
64*4882a593Smuzhiyun 
65*4882a593Smuzhiyun /* No mtest functions as recommended */
66*4882a593Smuzhiyun 
67*4882a593Smuzhiyun /*
68*4882a593Smuzhiyun  * This is the initial SP which is used only briefly for relocating the u-boot
69*4882a593Smuzhiyun  * image to the top of SDRAM. After relocation u-boot moves the stack to the
70*4882a593Smuzhiyun  * proper place.
71*4882a593Smuzhiyun  */
72*4882a593Smuzhiyun #define CONFIG_SYS_INIT_SP_ADDR		CONFIG_SYS_TEXT_BASE
73*4882a593Smuzhiyun 
74*4882a593Smuzhiyun /* Serial Info */
75*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_SERIAL
76*4882a593Smuzhiyun /* Post pad 3 bytes after each reg addr */
77*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_REG_SIZE	(-4)
78*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_CLK		13000000
79*4882a593Smuzhiyun #define CONFIG_CONS_INDEX		1
80*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_COM1		0x3e000000
81*4882a593Smuzhiyun 
82*4882a593Smuzhiyun /* must fit into GPT:u-boot-env partition */
83*4882a593Smuzhiyun #define CONFIG_SYS_MMC_ENV_DEV		0
84*4882a593Smuzhiyun #define CONFIG_ENV_OFFSET		(0x00011a00 * 512)
85*4882a593Smuzhiyun #define CONFIG_ENV_SIZE			(8 * 512)
86*4882a593Smuzhiyun 
87*4882a593Smuzhiyun /* console configuration */
88*4882a593Smuzhiyun #define CONFIG_SYS_CBSIZE		1024	/* Console buffer size */
89*4882a593Smuzhiyun #define CONFIG_SYS_MAXARGS		64
90*4882a593Smuzhiyun #define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE
91*4882a593Smuzhiyun 
92*4882a593Smuzhiyun /*
93*4882a593Smuzhiyun  * One partition type must be defined for part.c
94*4882a593Smuzhiyun  * This is necessary for the fatls command to work on an SD card
95*4882a593Smuzhiyun  * for example.
96*4882a593Smuzhiyun  */
97*4882a593Smuzhiyun 
98*4882a593Smuzhiyun /* version string, parser, etc */
99*4882a593Smuzhiyun #define CONFIG_AUTO_COMPLETE
100*4882a593Smuzhiyun #define CONFIG_CMDLINE_EDITING
101*4882a593Smuzhiyun #define CONFIG_SYS_LONGHELP
102*4882a593Smuzhiyun 
103*4882a593Smuzhiyun #define CONFIG_MX_CYCLIC
104*4882a593Smuzhiyun 
105*4882a593Smuzhiyun /* Initial upstream - boot to cmd prompt only */
106*4882a593Smuzhiyun #define CONFIG_BOOTCOMMAND		""
107*4882a593Smuzhiyun 
108*4882a593Smuzhiyun #define CONFIG_USBID_ADDR		0x34052c46
109*4882a593Smuzhiyun 
110*4882a593Smuzhiyun #endif /* __BCM28155_AP_H */
111