blob: a9b10d053297580d1cd81523c5564e81790974cc [file] [log] [blame]
Tom Rinia2f4c912013-08-09 11:22:17 -04001/*
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
Tom Rinia2f4c912013-08-09 11:22:17 -040016#define CONFIG_ARCH_CPU_INIT
Tom Rinia2f4c912013-08-09 11:22:17 -040017#define CONFIG_MAX_RAM_BANK_SIZE (1024 << 20) /* 1GB */
18#define CONFIG_SYS_TIMERBASE 0x48040000 /* Use Timer2 */
Heiko Schocher2233e462013-11-04 14:05:00 +010019#define CONFIG_SPL_AM33XX_ENABLE_RTC32K_OSC
Tom Rinia2f4c912013-08-09 11:22:17 -040020
21#include <asm/arch/omap.h>
22
23/* NS16550 Configuration */
Simon Glassb7fe5812014-10-22 21:37:14 -060024#ifdef CONFIG_SPL_BUILD
Tom Rinia2f4c912013-08-09 11:22:17 -040025#define CONFIG_SYS_NS16550_SERIAL
26#define CONFIG_SYS_NS16550_REG_SIZE (-4)
Simon Glassb7fe5812014-10-22 21:37:14 -060027#endif
Tom Rinia2f4c912013-08-09 11:22:17 -040028#define CONFIG_SYS_NS16550_CLK 48000000
29
Lokesh Vutla38e8af42016-03-09 15:39:33 +053030#ifndef CONFIG_SPL_BUILD
Tom Rinia2f4c912013-08-09 11:22:17 -040031/* Network defines. */
Tom Rinib3d2e2c2013-08-20 08:53:46 -040032#define CONFIG_BOOTP_DNS /* Configurable parts of CMD_DHCP */
Tom Rinia2f4c912013-08-09 11:22:17 -040033#define CONFIG_BOOTP_DNS2
34#define CONFIG_BOOTP_SEND_HOSTNAME
35#define CONFIG_BOOTP_GATEWAY
36#define CONFIG_BOOTP_SUBNETMASK
37#define CONFIG_NET_RETRY_COUNT 10
Tom Rinib3d2e2c2013-08-20 08:53:46 -040038#define CONFIG_MII /* Required in net/eth.c */
Lokesh Vutla38e8af42016-03-09 15:39:33 +053039#endif
Tom Rinia2f4c912013-08-09 11:22:17 -040040
Lokesh Vutla38e8af42016-03-09 15:39:33 +053041#define CONFIG_DRIVER_TI_CPSW /* Driver for IP block */
Tom Rini45841f62013-08-20 08:53:43 -040042/*
Tom Rini2a766c42013-08-28 09:00:30 -040043 * RTC related defines. To use bootcount you must set bootlimit in the
Tom Rini084240b2013-11-08 13:53:14 -050044 * environment to a non-zero value and enable CONFIG_BOOTCOUNT_LIMIT
45 * in the board config.
Tom Rini2a766c42013-08-28 09:00:30 -040046 */
Tom Rini2a766c42013-08-28 09:00:30 -040047#define CONFIG_SYS_BOOTCOUNT_ADDR 0x44E3E000
48
Tom Rini303bfe82013-10-01 12:32:04 -040049/* Enable the HW watchdog, since we can use this with bootcount */
50#define CONFIG_HW_WATCHDOG
51#define CONFIG_OMAP_WATCHDOG
52
Tom Rini2a766c42013-08-28 09:00:30 -040053/*
Tom Rini45841f62013-08-20 08:53:43 -040054 * SPL related defines. The Public RAM memory map the ROM defines the
55 * area between 0x402F0400 and 0x4030B800 as a download area and
56 * 0x4030B800 to 0x4030CE00 as a public stack area. The ROM also
57 * supports X-MODEM loading via UART, and we leverage this and then use
58 * Y-MODEM to load u-boot.img, when booted over UART.
59 */
Tom Rinia2f4c912013-08-09 11:22:17 -040060#define CONFIG_SPL_TEXT_BASE 0x402F0400
Tom Rini45841f62013-08-20 08:53:43 -040061#define CONFIG_SPL_MAX_SIZE (0x4030B800 - CONFIG_SPL_TEXT_BASE)
Tom Rinid9f808d2014-04-03 07:52:53 -040062#define CONFIG_SYS_SPL_ARGS_ADDR (CONFIG_SYS_SDRAM_BASE + \
63 (128 << 20))
Tom Rinia2f4c912013-08-09 11:22:17 -040064
Tom Rini303bfe82013-10-01 12:32:04 -040065/* Enable the watchdog inside of SPL */
66#define CONFIG_SPL_WATCHDOG_SUPPORT
67
Tom Rinia2f4c912013-08-09 11:22:17 -040068/*
69 * Since SPL did pll and ddr initialization for us,
70 * we don't need to do it twice.
71 */
72#if !defined(CONFIG_SPL_BUILD) && !defined(CONFIG_NOR_BOOT)
73#define CONFIG_SKIP_LOWLEVEL_INIT
74#endif
75
Tom Rini9fec9ae2014-05-21 12:57:22 -040076/*
77 * When building U-Boot such that there is no previous loader
78 * we need to call board_early_init_f. This is taken care of in
79 * s_init when we have SPL used.
80 */
81#if !defined(CONFIG_SKIP_LOWLEVEL_INIT) && !defined(CONFIG_SPL)
82#define CONFIG_BOARD_EARLY_INIT_F
83#endif
84
Enric Balletbò i Serra47858592013-12-06 21:30:20 +010085#ifdef CONFIG_NAND
86#define CONFIG_SPL_NAND_AM33XX_BCH /* ELM support */
87#endif
88
Tom Rinia2f4c912013-08-09 11:22:17 -040089/* Now bring in the rest of the common code. */
Nishanth Menonad63dd72015-07-22 18:05:41 -050090#include <configs/ti_armv7_omap.h>
Tom Rinia2f4c912013-08-09 11:22:17 -040091
92#endif /* __CONFIG_TI_AM335X_COMMON_H__ */