blob: 79d61c599e54e4e2c30d776a61557d75c986b038 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Prafulla Wadaskar32686292010-09-30 22:53:43 +05302/*
3 * (C) Copyright 2010
4 * Marvell Semiconductor <www.marvell.com>
5 * Written-by: Prafulla Wadaskar <prafulla@marvell.com>
Prafulla Wadaskar32686292010-09-30 22:53:43 +05306 */
7
8/*
9 * This file contains Marvell Board Specific common defincations.
10 * This file should be included in board config header file.
11 *
12 * It supports common definations for Kirkwood platform
13 * TBD: support for Orion5X platforms
14 */
15
16#ifndef _MV_COMMON_H
17#define _MV_COMMON_H
18
19/*
20 * High Level Configuration Options (easy to change)
21 */
22#define CONFIG_MARVELL 1
Prafulla Wadaskar32686292010-09-30 22:53:43 +053023
Prafulla Wadaskar14a0fc12010-12-07 20:58:35 +053024/*
25 * Custom CONFIG_SYS_TEXT_BASE can be done in <board>.h
26 */
Prafulla Wadaskar14a0fc12010-12-07 20:58:35 +053027
Prafulla Wadaskard3a5f332010-09-30 22:57:02 +053028/* additions for new ARM relocation support */
Prafulla Wadaskar14a0fc12010-12-07 20:58:35 +053029#define CONFIG_SYS_SDRAM_BASE 0x00000000
Prafulla Wadaskard3a5f332010-09-30 22:57:02 +053030
Prafulla Wadaskar32686292010-09-30 22:53:43 +053031/*
Prafulla Wadaskar32686292010-09-30 22:53:43 +053032 * NS16550 Configuration
33 */
Prafulla Wadaskar32686292010-09-30 22:53:43 +053034#define CONFIG_SYS_NS16550_SERIAL
Prafulla Wadaskar32686292010-09-30 22:53:43 +053035#define CONFIG_SYS_NS16550_CLK CONFIG_SYS_TCLK
Stefan Roese7f9f8e32015-09-02 08:41:41 +020036#if !defined(CONFIG_DM_SERIAL)
37#define CONFIG_SYS_NS16550_REG_SIZE (-4)
Prafulla Wadaskar14a0fc12010-12-07 20:58:35 +053038#define CONFIG_SYS_NS16550_COM1 MV_UART_CONSOLE_BASE
Stefan Roese7f9f8e32015-09-02 08:41:41 +020039#endif
Prafulla Wadaskar32686292010-09-30 22:53:43 +053040
41/*
42 * Serial Port configuration
43 * The following definitions let you select what serial you want to use
44 * for your console driver.
45 */
46
Prafulla Wadaskar32686292010-09-30 22:53:43 +053047#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, \
48 115200,230400, 460800, 921600 }
49/* auto boot */
Stefan Roese758b07a2015-04-25 06:29:54 +020050#define CONFIG_PREBOOT
Prafulla Wadaskar32686292010-09-30 22:53:43 +053051
52/*
53 * For booting Linux, the board info and command line data
54 * have to be in the first 8 MB of memory, since this is
55 * the maximum mapped by the Linux kernel during initialization.
56 */
57#define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */
58#define CONFIG_INITRD_TAG 1 /* enable INITRD tag */
59#define CONFIG_SETUP_MEMORY_TAGS 1 /* enable memory tag */
60
Prafulla Wadaskar32686292010-09-30 22:53:43 +053061#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buff Size */
Prafulla Wadaskar32686292010-09-30 22:53:43 +053062
63/*
Prafulla Wadaskar32686292010-09-30 22:53:43 +053064 * Size of malloc() pool
65 */
Andreas Bießmann641bb962012-10-29 13:58:55 +000066#define CONFIG_SYS_MALLOC_LEN (1024 * 1024 * 4) /* 4MiB for malloc() */
Prafulla Wadaskar32686292010-09-30 22:53:43 +053067
68/*
69 * Other required minimal configurations
70 */
Prafulla Wadaskar32686292010-09-30 22:53:43 +053071#define CONFIG_ARCH_CPU_INIT /* call arch_cpu_init() */
Prafulla Wadaskar32686292010-09-30 22:53:43 +053072#define CONFIG_SYS_LOAD_ADDR 0x00800000 /* default load adr- 8M */
Prafulla Wadaskar14a0fc12010-12-07 20:58:35 +053073#define CONFIG_SYS_MEMTEST_START 0x00800000 /* 8M */
74#define CONFIG_SYS_MEMTEST_END 0x00ffffff /*(_16M -1) */
Prafulla Wadaskar32686292010-09-30 22:53:43 +053075#define CONFIG_SYS_RESET_ADDRESS 0xffff0000 /* Rst Vector Adr */
Stefan Roese1ada3772015-07-23 10:26:11 +020076#define CONFIG_SYS_MAXARGS 32 /* max number of command args */
Prafulla Wadaskar32686292010-09-30 22:53:43 +053077
Simon Guinot2553d612011-05-03 21:17:34 +053078/* ====> Include platform Common Definitions */
79#include <asm/arch/config.h>
80
Prafulla Wadaskar32686292010-09-30 22:53:43 +053081/*
Prafulla Wadaskar14a0fc12010-12-07 20:58:35 +053082 * DRAM Banks configuration, Custom config can be done in <board>.h
83 */
84#ifndef CONFIG_NR_DRAM_BANKS
85#define CONFIG_NR_DRAM_BANKS CONFIG_NR_DRAM_BANKS_MAX
86#else
87#if (CONFIG_NR_DRAM_BANKS > CONFIG_NR_DRAM_BANKS_MAX)
88#error CONFIG_NR_DRAM_BANKS Configurated more than available
89#endif
90#endif /* CONFIG_NR_DRAM_BANKS */
91
Simon Guinot2553d612011-05-03 21:17:34 +053092/* ====> Include driver Common Definitions */
Prafulla Wadaskar14a0fc12010-12-07 20:58:35 +053093/*
Lei Wen20014762011-02-09 18:06:58 +053094 * Common NAND configuration
Prafulla Wadaskar32686292010-09-30 22:53:43 +053095 */
Lei Wen20014762011-02-09 18:06:58 +053096#ifdef CONFIG_CMD_NAND
97#define CONFIG_SYS_MAX_NAND_DEVICE 1
Lei Wen20014762011-02-09 18:06:58 +053098#endif
99
Prafulla Wadaskar32686292010-09-30 22:53:43 +0530100#endif /* _MV_COMMON_H */