1ea7b96b6SMatt Porter /* 2ea7b96b6SMatt Porter * ti814x_evm.h 3ea7b96b6SMatt Porter * 4ea7b96b6SMatt Porter * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ 5ea7b96b6SMatt Porter * 6ea7b96b6SMatt Porter * This program is free software; you can redistribute it and/or 7ea7b96b6SMatt Porter * modify it under the terms of the GNU General Public License as 8ea7b96b6SMatt Porter * published by the Free Software Foundation version 2. 9ea7b96b6SMatt Porter * 10ea7b96b6SMatt Porter * This program is distributed "as is" WITHOUT ANY WARRANTY of any 11ea7b96b6SMatt Porter * kind, whether express or implied; without even the implied warranty 12ea7b96b6SMatt Porter * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13ea7b96b6SMatt Porter * GNU General Public License for more details. 14ea7b96b6SMatt Porter */ 15ea7b96b6SMatt Porter 16ea7b96b6SMatt Porter #ifndef __CONFIG_TI814X_EVM_H 17ea7b96b6SMatt Porter #define __CONFIG_TI814X_EVM_H 18ea7b96b6SMatt Porter 19ea7b96b6SMatt Porter #define CONFIG_TI81XX 20ea7b96b6SMatt Porter #define CONFIG_TI814X 21ea7b96b6SMatt Porter #define CONFIG_SYS_NO_FLASH 224a0eb757SSRICHARAN R #define CONFIG_OMAP 23806d2792SLokesh Vutla #define CONFIG_OMAP_COMMON 24ea7b96b6SMatt Porter 25ea7b96b6SMatt Porter #include <asm/arch/omap.h> 26ea7b96b6SMatt Porter 27ea7b96b6SMatt Porter #define CONFIG_ENV_SIZE (128 << 10) /* 128 KiB */ 28ea7b96b6SMatt Porter #define CONFIG_SYS_MALLOC_LEN (1024 << 10) 29ea7b96b6SMatt Porter #define CONFIG_SYS_LONGHELP /* undef to save memory */ 30ea7b96b6SMatt Porter #define CONFIG_SYS_NO_FLASH 31ea7b96b6SMatt Porter #define CONFIG_MACH_TYPE MACH_TYPE_TI8148EVM 32ea7b96b6SMatt Porter 33ea7b96b6SMatt Porter #define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */ 34ea7b96b6SMatt Porter #define CONFIG_SETUP_MEMORY_TAGS 35ea7b96b6SMatt Porter #define CONFIG_INITRD_TAG /* for ramdisk support */ 36ea7b96b6SMatt Porter 37ea7b96b6SMatt Porter /* commands to include */ 38ea7b96b6SMatt Porter #define CONFIG_VERSION_VARIABLE 39ea7b96b6SMatt Porter 40ea7b96b6SMatt Porter #define CONFIG_ENV_VARS_UBOOT_CONFIG 41ea7b96b6SMatt Porter #define CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG 42ea7b96b6SMatt Porter #define CONFIG_EXTRA_ENV_SETTINGS \ 43ea7b96b6SMatt Porter "loadaddr=0x80200000\0" \ 44ea7b96b6SMatt Porter "fdtaddr=0x80F80000\0" \ 45ea7b96b6SMatt Porter "rdaddr=0x81000000\0" \ 46ea7b96b6SMatt Porter "bootfile=/boot/uImage\0" \ 47ea7b96b6SMatt Porter "fdtfile=\0" \ 48ea7b96b6SMatt Porter "console=ttyO0,115200n8\0" \ 49ea7b96b6SMatt Porter "optargs=\0" \ 50ea7b96b6SMatt Porter "mmcdev=0\0" \ 51ea7b96b6SMatt Porter "mmcroot=/dev/mmcblk0p2 ro\0" \ 52ea7b96b6SMatt Porter "mmcrootfstype=ext4 rootwait\0" \ 53ea7b96b6SMatt Porter "ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=${rdaddr},64M\0" \ 54ea7b96b6SMatt Porter "ramrootfstype=ext2\0" \ 55ea7b96b6SMatt Porter "mmcargs=setenv bootargs console=${console} " \ 56ea7b96b6SMatt Porter "${optargs} " \ 57ea7b96b6SMatt Porter "root=${mmcroot} " \ 58ea7b96b6SMatt Porter "rootfstype=${mmcrootfstype}\0" \ 59ea7b96b6SMatt Porter "bootenv=uEnv.txt\0" \ 60ea7b96b6SMatt Porter "loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \ 61ea7b96b6SMatt Porter "importbootenv=echo Importing environment from mmc ...; " \ 62ea7b96b6SMatt Porter "env import -t $loadaddr $filesize\0" \ 63ea7b96b6SMatt Porter "ramargs=setenv bootargs console=${console} " \ 64ea7b96b6SMatt Porter "${optargs} " \ 65ea7b96b6SMatt Porter "root=${ramroot} " \ 66ea7b96b6SMatt Porter "rootfstype=${ramrootfstype}\0" \ 67ea7b96b6SMatt Porter "loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \ 68ea7b96b6SMatt Porter "loaduimagefat=fatload mmc ${mmcdev} ${loadaddr} ${bootfile}\0" \ 69ea7b96b6SMatt Porter "loaduimage=ext2load mmc ${mmcdev}:2 ${loadaddr} ${bootfile}\0" \ 70ea7b96b6SMatt Porter "mmcboot=echo Booting from mmc ...; " \ 71ea7b96b6SMatt Porter "run mmcargs; " \ 72ea7b96b6SMatt Porter "bootm ${loadaddr}\0" \ 73ea7b96b6SMatt Porter "ramboot=echo Booting from ramdisk ...; " \ 74ea7b96b6SMatt Porter "run ramargs; " \ 75ea7b96b6SMatt Porter "bootm ${loadaddr}\0" \ 76ea7b96b6SMatt Porter "fdtfile=ti814x-evm.dtb\0" \ 77ea7b96b6SMatt Porter 78ea7b96b6SMatt Porter #define CONFIG_BOOTCOMMAND \ 79ea7b96b6SMatt Porter "mmc dev ${mmcdev}; if mmc rescan; then " \ 80ea7b96b6SMatt Porter "echo SD/MMC found on device ${mmcdev};" \ 81ea7b96b6SMatt Porter "if run loadbootenv; then " \ 82ea7b96b6SMatt Porter "echo Loaded environment from ${bootenv};" \ 83ea7b96b6SMatt Porter "run importbootenv;" \ 84ea7b96b6SMatt Porter "fi;" \ 85ea7b96b6SMatt Porter "if test -n $uenvcmd; then " \ 86ea7b96b6SMatt Porter "echo Running uenvcmd ...;" \ 87ea7b96b6SMatt Porter "run uenvcmd;" \ 88ea7b96b6SMatt Porter "fi;" \ 89ea7b96b6SMatt Porter "if run loaduimage; then " \ 90ea7b96b6SMatt Porter "run mmcboot;" \ 91ea7b96b6SMatt Porter "fi;" \ 92ea7b96b6SMatt Porter "fi;" \ 93ea7b96b6SMatt Porter 94ea7b96b6SMatt Porter /* Clock Defines */ 95ea7b96b6SMatt Porter #define V_OSCK 24000000 /* Clock output from T2 */ 96ea7b96b6SMatt Porter #define V_SCLK (V_OSCK >> 1) 97ea7b96b6SMatt Porter 98ea7b96b6SMatt Porter /* max number of command args */ 99ea7b96b6SMatt Porter #define CONFIG_SYS_MAXARGS 16 100ea7b96b6SMatt Porter 101ea7b96b6SMatt Porter /* Console I/O Buffer Size */ 102ea7b96b6SMatt Porter #define CONFIG_SYS_CBSIZE 512 103ea7b96b6SMatt Porter 104ea7b96b6SMatt Porter /* Print Buffer Size */ 105ea7b96b6SMatt Porter #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE \ 106ea7b96b6SMatt Porter + sizeof(CONFIG_SYS_PROMPT) + 16) 107ea7b96b6SMatt Porter 108ea7b96b6SMatt Porter /* Boot Argument Buffer Size */ 109ea7b96b6SMatt Porter #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 110ea7b96b6SMatt Porter 11173feefdcSTom Rini #define CONFIG_SYS_MEMTEST_START CONFIG_SYS_SDRAM_BASE 112ea7b96b6SMatt Porter #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START \ 113ea7b96b6SMatt Porter + PHYS_DRAM_1_SIZE - (8 << 12)) 114ea7b96b6SMatt Porter 115ea7b96b6SMatt Porter #define CONFIG_SYS_LOAD_ADDR 0x81000000 /* Default */ 116ea7b96b6SMatt Porter 117ea7b96b6SMatt Porter #define CONFIG_OMAP_GPIO 118ea7b96b6SMatt Porter #define CONFIG_MMC 119ea7b96b6SMatt Porter #define CONFIG_GENERIC_MMC 120ea7b96b6SMatt Porter #define CONFIG_OMAP_HSMMC 121ea7b96b6SMatt Porter #define CONFIG_DOS_PARTITION 122ea7b96b6SMatt Porter 123ea7b96b6SMatt Porter /** 124ea7b96b6SMatt Porter * Physical Memory Map 125ea7b96b6SMatt Porter */ 126ea7b96b6SMatt Porter #define CONFIG_NR_DRAM_BANKS 1 /* 1 banks of DRAM */ 127ea7b96b6SMatt Porter #define PHYS_DRAM_1_SIZE 0x20000000 /* 512MB */ 128ea7b96b6SMatt Porter #define CONFIG_MAX_RAM_BANK_SIZE (1024 << 20) /* 1024MB */ 129ea7b96b6SMatt Porter 13073feefdcSTom Rini #define CONFIG_SYS_SDRAM_BASE 0x80000000 131ea7b96b6SMatt Porter #define CONFIG_SYS_INIT_SP_ADDR (NON_SECURE_SRAM_END - \ 132ea7b96b6SMatt Porter GENERATED_GBL_DATA_SIZE) 133ea7b96b6SMatt Porter 134ea7b96b6SMatt Porter /** 135ea7b96b6SMatt Porter * Platform/Board specific defs 136ea7b96b6SMatt Porter */ 137ea7b96b6SMatt Porter #define CONFIG_SYS_TIMERBASE 0x4802E000 138ea7b96b6SMatt Porter #define CONFIG_SYS_PTV 2 /* Divisor: 2^(PTV+1) => 8 */ 139ea7b96b6SMatt Porter 140ea7b96b6SMatt Porter /* NS16550 Configuration */ 141ea7b96b6SMatt Porter #define CONFIG_SYS_NS16550_SERIAL 142ea7b96b6SMatt Porter #define CONFIG_SYS_NS16550_REG_SIZE (-4) 143ea7b96b6SMatt Porter #define CONFIG_SYS_NS16550_CLK (48000000) 144ea7b96b6SMatt Porter #define CONFIG_SYS_NS16550_COM1 0x48020000 /* Base EVM has UART0 */ 145ea7b96b6SMatt Porter 146ea7b96b6SMatt Porter #define CONFIG_BAUDRATE 115200 147ea7b96b6SMatt Porter 14847c6ea07SSRICHARAN R /* CPU */ 14947c6ea07SSRICHARAN R #define CONFIG_ARCH_CPU_INIT 15047c6ea07SSRICHARAN R 151ea7b96b6SMatt Porter #define CONFIG_ENV_OVERWRITE 152ea7b96b6SMatt Porter #define CONFIG_CONS_INDEX 1 153ea7b96b6SMatt Porter #define CONFIG_SYS_CONSOLE_INFO_QUIET 154ea7b96b6SMatt Porter 155ea7b96b6SMatt Porter #define CONFIG_ENV_IS_NOWHERE 156ea7b96b6SMatt Porter 157ea7b96b6SMatt Porter /* Defines for SPL */ 158ea7b96b6SMatt Porter #define CONFIG_SPL_FRAMEWORK 159ea7b96b6SMatt Porter #define CONFIG_SPL_TEXT_BASE 0x40300000 160*fa2f81b0STom Rini #define CONFIG_SPL_MAX_SIZE (SRAM_SCRATCH_SPACE_ADDR - \ 161*fa2f81b0STom Rini CONFIG_SPL_TEXT_BASE) 162ea7b96b6SMatt Porter 163ea7b96b6SMatt Porter #define CONFIG_SPL_BSS_START_ADDR 0x80000000 164ea7b96b6SMatt Porter #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 /* 512 KB */ 165ea7b96b6SMatt Porter 166ea7b96b6SMatt Porter #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x300 /* address 0x60000 */ 167ea7b96b6SMatt Porter #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x200 /* 256 KB */ 168e2ccdf89SPaul Kocialkowski #define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1 169205b4f33SGuillaume GARDET #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img" 170ea7b96b6SMatt Porter #define CONFIG_SPL_MMC_SUPPORT 171ea7b96b6SMatt Porter #define CONFIG_SPL_FAT_SUPPORT 172ea7b96b6SMatt Porter 173ea7b96b6SMatt Porter #define CONFIG_SPL_LIBCOMMON_SUPPORT 174ea7b96b6SMatt Porter #define CONFIG_SPL_LIBDISK_SUPPORT 175ea7b96b6SMatt Porter #define CONFIG_SPL_LIBGENERIC_SUPPORT 176ea7b96b6SMatt Porter #define CONFIG_SPL_SERIAL_SUPPORT 177ea7b96b6SMatt Porter #define CONFIG_SPL_GPIO_SUPPORT 178ea7b96b6SMatt Porter #define CONFIG_SPL_YMODEM_SUPPORT 179ea7b96b6SMatt Porter #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 180ea7b96b6SMatt Porter #define CONFIG_SYS_SPI_U_BOOT_SIZE 0x40000 181ea7b96b6SMatt Porter #define CONFIG_SPL_LDSCRIPT "$(CPUDIR)/omap-common/u-boot-spl.lds" 182ea7b96b6SMatt Porter 183ea7b96b6SMatt Porter #define CONFIG_SPL_BOARD_INIT 184ea7b96b6SMatt Porter 185ea7b96b6SMatt Porter /* 186ea7b96b6SMatt Porter * 1MB into the SDRAM to allow for SPL's bss at the beginning of SDRAM 187ea7b96b6SMatt Porter * 64 bytes before this address should be set aside for u-boot.img's 188ea7b96b6SMatt Porter * header. That is 0x800FFFC0--0x80800000 should not be used for any 189ea7b96b6SMatt Porter * other needs. 190ea7b96b6SMatt Porter */ 191ea7b96b6SMatt Porter #define CONFIG_SYS_TEXT_BASE 0x80800000 192ea7b96b6SMatt Porter #define CONFIG_SYS_SPL_MALLOC_START 0x80208000 193ea7b96b6SMatt Porter #define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 194ea7b96b6SMatt Porter 195ea7b96b6SMatt Porter /* 196ea7b96b6SMatt Porter * Since SPL did pll and ddr initialization for us, 197ea7b96b6SMatt Porter * we don't need to do it twice. 198ea7b96b6SMatt Porter */ 199ea7b96b6SMatt Porter #ifndef CONFIG_SPL_BUILD 200ea7b96b6SMatt Porter #define CONFIG_SKIP_LOWLEVEL_INIT 201ea7b96b6SMatt Porter #endif 202ea7b96b6SMatt Porter 203ea7b96b6SMatt Porter /* Unsupported features */ 204ea7b96b6SMatt Porter #undef CONFIG_USE_IRQ 205ea7b96b6SMatt Porter 206cd87464dSMatt Porter /* Ethernet */ 207cd87464dSMatt Porter #define CONFIG_DRIVER_TI_CPSW 208cd87464dSMatt Porter #define CONFIG_MII 209cd87464dSMatt Porter #define CONFIG_BOOTP_DNS 210cd87464dSMatt Porter #define CONFIG_BOOTP_DNS2 211cd87464dSMatt Porter #define CONFIG_BOOTP_SEND_HOSTNAME 212cd87464dSMatt Porter #define CONFIG_BOOTP_GATEWAY 213cd87464dSMatt Porter #define CONFIG_BOOTP_SUBNETMASK 214cd87464dSMatt Porter #define CONFIG_NET_RETRY_COUNT 10 215cd87464dSMatt Porter #define CONFIG_PHY_GIGE 216cd87464dSMatt Porter #define CONFIG_PHYLIB 217cd87464dSMatt Porter #define CONFIG_PHY_ET1011C 218cd87464dSMatt Porter #define CONFIG_PHY_ET1011C_TX_CLK_FIX 219cd87464dSMatt Porter 220ea7b96b6SMatt Porter #endif /* ! __CONFIG_TI814X_EVM_H */ 221