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