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