4 * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
6 * SPDX-License-Identifier: GPL-2.0+
8 * For more details, please see the technical documents listed at
9 * http://www.ti.com/product/am3359#technicaldocuments
12 #ifndef __CONFIG_TI_AM335X_COMMON_H__
13 #define __CONFIG_TI_AM335X_COMMON_H__
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
22 #ifndef CONFIG_SPL_BUILD
26 # define CONFIG_CMD_DM
27 # define CONFIG_DM_GPIO
28 # define CONFIG_DM_SERIAL
29 # define CONFIG_OMAP_SERIAL
30 # define CONFIG_SYS_MALLOC_F_LEN (1 << 10)
33 #include <asm/arch/omap.h>
35 /* NS16550 Configuration */
36 #define CONFIG_SYS_NS16550
37 #ifdef CONFIG_SPL_BUILD
38 #define CONFIG_SYS_NS16550_SERIAL
39 #define CONFIG_SYS_NS16550_REG_SIZE (-4)
41 #define CONFIG_SYS_NS16550_CLK 48000000
43 /* Network defines. */
44 #define CONFIG_CMD_NET /* 'bootp' and 'tftp' */
45 #define CONFIG_CMD_DHCP
46 #define CONFIG_CMD_MII
47 #define CONFIG_BOOTP_DNS /* Configurable parts of CMD_DHCP */
48 #define CONFIG_BOOTP_DNS2
49 #define CONFIG_BOOTP_SEND_HOSTNAME
50 #define CONFIG_BOOTP_GATEWAY
51 #define CONFIG_BOOTP_SUBNETMASK
52 #define CONFIG_NET_RETRY_COUNT 10
53 #define CONFIG_CMD_PING
54 #define CONFIG_DRIVER_TI_CPSW /* Driver for IP block */
55 #define CONFIG_MII /* Required in net/eth.c */
58 * RTC related defines. To use bootcount you must set bootlimit in the
59 * environment to a non-zero value and enable CONFIG_BOOTCOUNT_LIMIT
60 * in the board config.
62 #define CONFIG_SYS_BOOTCOUNT_ADDR 0x44E3E000
64 /* Enable the HW watchdog, since we can use this with bootcount */
65 #define CONFIG_HW_WATCHDOG
66 #define CONFIG_OMAP_WATCHDOG
69 * SPL related defines. The Public RAM memory map the ROM defines the
70 * area between 0x402F0400 and 0x4030B800 as a download area and
71 * 0x4030B800 to 0x4030CE00 as a public stack area. The ROM also
72 * supports X-MODEM loading via UART, and we leverage this and then use
73 * Y-MODEM to load u-boot.img, when booted over UART.
75 #define CONFIG_SPL_TEXT_BASE 0x402F0400
76 #define CONFIG_SPL_MAX_SIZE (0x4030B800 - CONFIG_SPL_TEXT_BASE)
77 #define CONFIG_SYS_SPL_ARGS_ADDR (CONFIG_SYS_SDRAM_BASE + \
80 /* Enable the watchdog inside of SPL */
81 #define CONFIG_SPL_WATCHDOG_SUPPORT
84 * Since SPL did pll and ddr initialization for us,
85 * we don't need to do it twice.
87 #if !defined(CONFIG_SPL_BUILD) && !defined(CONFIG_NOR_BOOT)
88 #define CONFIG_SKIP_LOWLEVEL_INIT
92 * When building U-Boot such that there is no previous loader
93 * we need to call board_early_init_f. This is taken care of in
94 * s_init when we have SPL used.
96 #if !defined(CONFIG_SKIP_LOWLEVEL_INIT) && !defined(CONFIG_SPL)
97 #define CONFIG_BOARD_EARLY_INIT_F
101 #define CONFIG_SPL_NAND_AM33XX_BCH /* ELM support */
104 /* Now bring in the rest of the common code. */
105 #include <configs/ti_armv7_common.h>
107 #endif /* __CONFIG_TI_AM335X_COMMON_H__ */