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