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 #define CONFIG_STACKSIZE SZ_256K 28 29 /* GPIO Driver */ 30 #define CONFIG_KONA_GPIO 31 32 /* MMC/SD Driver */ 33 #define CONFIG_MMC_SDMA 34 #define CONFIG_KONA_SDHCI 35 #define CONFIG_GENERIC_MMC 36 37 #define CONFIG_SYS_SDIO_BASE0 SDIO1_BASE_ADDR 38 #define CONFIG_SYS_SDIO_BASE1 SDIO2_BASE_ADDR 39 #define CONFIG_SYS_SDIO_BASE2 SDIO3_BASE_ADDR 40 #define CONFIG_SYS_SDIO_BASE3 SDIO4_BASE_ADDR 41 #define CONFIG_SYS_SDIO0_MAX_CLK 48000000 42 #define CONFIG_SYS_SDIO1_MAX_CLK 48000000 43 #define CONFIG_SYS_SDIO2_MAX_CLK 48000000 44 #define CONFIG_SYS_SDIO3_MAX_CLK 48000000 45 #define CONFIG_SYS_SDIO0 "sdio1" 46 #define CONFIG_SYS_SDIO1 "sdio2" 47 #define CONFIG_SYS_SDIO2 "sdio3" 48 #define CONFIG_SYS_SDIO3 "sdio4" 49 50 /* I2C Driver */ 51 #define CONFIG_SYS_I2C 52 #define CONFIG_SYS_I2C_KONA 53 #define CONFIG_SYS_SPD_BUS_NUM 3 /* Start with PMU bus */ 54 #define CONFIG_SYS_MAX_I2C_BUS 4 55 #define CONFIG_SYS_I2C_BASE0 BSC1_BASE_ADDR 56 #define CONFIG_SYS_I2C_BASE1 BSC2_BASE_ADDR 57 #define CONFIG_SYS_I2C_BASE2 BSC3_BASE_ADDR 58 #define CONFIG_SYS_I2C_BASE3 PMU_BSC_BASE_ADDR 59 60 /* Timer Driver */ 61 #define CONFIG_SYS_TIMER_RATE 32000 62 #define CONFIG_SYS_TIMER_COUNTER (TIMER_BASE_ADDR + 4) /* STCLO offset */ 63 64 /* Init functions */ 65 #define CONFIG_MISC_INIT_R /* board's misc_init_r function */ 66 67 /* Some commands use this as the default load address */ 68 #define CONFIG_SYS_LOAD_ADDR CONFIG_SYS_SDRAM_BASE 69 70 /* No mtest functions as recommended */ 71 72 /* 73 * This is the initial SP which is used only briefly for relocating the u-boot 74 * image to the top of SDRAM. After relocation u-boot moves the stack to the 75 * proper place. 76 */ 77 #define CONFIG_SYS_INIT_SP_ADDR CONFIG_SYS_TEXT_BASE 78 79 /* Serial Info */ 80 #define CONFIG_SYS_NS16550_SERIAL 81 /* Post pad 3 bytes after each reg addr */ 82 #define CONFIG_SYS_NS16550_REG_SIZE (-4) 83 #define CONFIG_SYS_NS16550_CLK 13000000 84 #define CONFIG_CONS_INDEX 1 85 #define CONFIG_SYS_NS16550_COM1 0x3e000000 86 87 #define CONFIG_BAUDRATE 115200 88 89 /* must fit into GPT:u-boot-env partition */ 90 #define CONFIG_ENV_IS_IN_MMC 91 #define CONFIG_SYS_MMC_ENV_DEV 0 92 #define CONFIG_ENV_OFFSET (0x00011a00 * 512) 93 #define CONFIG_ENV_SIZE (8 * 512) 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 110 #define CONFIG_EFI_PARTITION 111 112 /* version string, parser, etc */ 113 #define CONFIG_AUTO_COMPLETE 114 #define CONFIG_CMDLINE_EDITING 115 #define CONFIG_SYS_LONGHELP 116 117 #define CONFIG_CRC32_VERIFY 118 #define CONFIG_MX_CYCLIC 119 120 /* Initial upstream - boot to cmd prompt only */ 121 #define CONFIG_BOOTCOMMAND "" 122 123 /* Commands */ 124 #define CONFIG_FAT_WRITE 125 126 #define CONFIG_USBID_ADDR 0x34052c46 127 128 #endif /* __BCM28155_AP_H */ 129