1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * ti_am335x_common.h 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ 5*4882a593Smuzhiyun * 6*4882a593Smuzhiyun * SPDX-License-Identifier: GPL-2.0+ 7*4882a593Smuzhiyun * 8*4882a593Smuzhiyun * For more details, please see the technical documents listed at 9*4882a593Smuzhiyun * http://www.ti.com/product/am3359#technicaldocuments 10*4882a593Smuzhiyun */ 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun #ifndef __CONFIG_TI_AM335X_COMMON_H__ 13*4882a593Smuzhiyun #define __CONFIG_TI_AM335X_COMMON_H__ 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun #define CONFIG_ARCH_CPU_INIT 16*4882a593Smuzhiyun #define CONFIG_MAX_RAM_BANK_SIZE (1024 << 20) /* 1GB */ 17*4882a593Smuzhiyun #define CONFIG_SYS_TIMERBASE 0x48040000 /* Use Timer2 */ 18*4882a593Smuzhiyun #define CONFIG_SPL_AM33XX_ENABLE_RTC32K_OSC 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun #include <asm/arch/omap.h> 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun /* NS16550 Configuration */ 23*4882a593Smuzhiyun #ifdef CONFIG_SPL_BUILD 24*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_SERIAL 25*4882a593Smuzhiyun #ifndef CONFIG_DM_SERIAL 26*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_REG_SIZE (-4) 27*4882a593Smuzhiyun #endif 28*4882a593Smuzhiyun #endif 29*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_CLK 48000000 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun #ifndef CONFIG_SPL_BUILD 32*4882a593Smuzhiyun /* Network defines. */ 33*4882a593Smuzhiyun #define CONFIG_BOOTP_DNS /* Configurable parts of CMD_DHCP */ 34*4882a593Smuzhiyun #define CONFIG_BOOTP_DNS2 35*4882a593Smuzhiyun #define CONFIG_BOOTP_SEND_HOSTNAME 36*4882a593Smuzhiyun #define CONFIG_BOOTP_GATEWAY 37*4882a593Smuzhiyun #define CONFIG_BOOTP_SUBNETMASK 38*4882a593Smuzhiyun #define CONFIG_NET_RETRY_COUNT 10 39*4882a593Smuzhiyun #define CONFIG_MII /* Required in net/eth.c */ 40*4882a593Smuzhiyun #endif 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun #define CONFIG_DRIVER_TI_CPSW /* Driver for IP block */ 43*4882a593Smuzhiyun /* 44*4882a593Smuzhiyun * RTC related defines. To use bootcount you must set bootlimit in the 45*4882a593Smuzhiyun * environment to a non-zero value and enable CONFIG_BOOTCOUNT_LIMIT 46*4882a593Smuzhiyun * in the board config. 47*4882a593Smuzhiyun */ 48*4882a593Smuzhiyun #define CONFIG_SYS_BOOTCOUNT_ADDR 0x44E3E000 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun /* 51*4882a593Smuzhiyun * SPL related defines. The Public RAM memory map the ROM defines the 52*4882a593Smuzhiyun * area between 0x402F0400 and 0x4030B800 as a download area and 53*4882a593Smuzhiyun * 0x4030B800 to 0x4030CE00 as a public stack area. The ROM also 54*4882a593Smuzhiyun * supports X-MODEM loading via UART, and we leverage this and then use 55*4882a593Smuzhiyun * Y-MODEM to load u-boot.img, when booted over UART. 56*4882a593Smuzhiyun */ 57*4882a593Smuzhiyun #define CONFIG_SPL_TEXT_BASE CONFIG_ISW_ENTRY_ADDR 58*4882a593Smuzhiyun #define CONFIG_SYS_SPL_ARGS_ADDR (CONFIG_SYS_SDRAM_BASE + \ 59*4882a593Smuzhiyun (128 << 20)) 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun /* Enable the watchdog inside of SPL */ 62*4882a593Smuzhiyun 63*4882a593Smuzhiyun /* 64*4882a593Smuzhiyun * Since SPL did pll and ddr initialization for us, 65*4882a593Smuzhiyun * we don't need to do it twice. 66*4882a593Smuzhiyun */ 67*4882a593Smuzhiyun #if !defined(CONFIG_SPL_BUILD) && !defined(CONFIG_NOR_BOOT) 68*4882a593Smuzhiyun #define CONFIG_SKIP_LOWLEVEL_INIT 69*4882a593Smuzhiyun #endif 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun /* 72*4882a593Smuzhiyun * When building U-Boot such that there is no previous loader 73*4882a593Smuzhiyun * we need to call board_early_init_f. This is taken care of in 74*4882a593Smuzhiyun * s_init when we have SPL used. 75*4882a593Smuzhiyun */ 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun /* Now bring in the rest of the common code. */ 78*4882a593Smuzhiyun #include <configs/ti_armv7_omap.h> 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun #endif /* __CONFIG_TI_AM335X_COMMON_H__ */ 81