blob: 62a303c492bfa4933c3d4369c96a1b4af5cfa24d [file] [log] [blame]
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +05301/*
2 * (C) Copyright 2010
3 * Marvell Semiconductor <www.marvell.com>
4 * Written-by: Prafulla Wadaskar <prafulla@marvell.com>
5 *
Wolfgang Denk1a459662013-07-08 09:37:19 +02006 * SPDX-License-Identifier: GPL-2.0+
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +05307 */
8
9/*
10 * This file contains Marvell Board Specific common defincations.
11 * This file should be included in board config header file.
12 *
13 * It supports common definations for Kirkwood platform
14 * TBD: support for Orion5X platforms
15 */
16
17#ifndef _MV_COMMON_H
18#define _MV_COMMON_H
19
20/*
21 * High Level Configuration Options (easy to change)
22 */
23#define CONFIG_MARVELL 1
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +053024
25/*
26 * Custom CONFIG_SYS_TEXT_BASE can be done in <board>.h
Prafulla Wadaskar31d80c72010-10-27 17:46:06 +053027 */
Prafulla Wadaskar31d80c72010-10-27 17:46:06 +053028
Prafulla Wadaskar0b20ed72010-09-30 22:57:02 +053029/* additions for new ARM relocation support */
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +053030#define CONFIG_SYS_SDRAM_BASE 0x00000000
Prafulla Wadaskar0b20ed72010-09-30 22:57:02 +053031
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053032/*
33 * CLKs configurations
34 */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053035
36/*
37 * NS16550 Configuration
38 */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053039#define CONFIG_SYS_NS16550_SERIAL
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053040#define CONFIG_SYS_NS16550_CLK CONFIG_SYS_TCLK
Stefan Roese1d51ea12015-09-02 08:41:41 +020041#if !defined(CONFIG_DM_SERIAL)
42#define CONFIG_SYS_NS16550_REG_SIZE (-4)
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +053043#define CONFIG_SYS_NS16550_COM1 MV_UART_CONSOLE_BASE
Stefan Roese1d51ea12015-09-02 08:41:41 +020044#endif
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053045
46/*
47 * Serial Port configuration
48 * The following definitions let you select what serial you want to use
49 * for your console driver.
50 */
51
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053052#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, \
53 115200,230400, 460800, 921600 }
54/* auto boot */
Stefan Roeseb81d0ea2015-04-25 06:29:54 +020055#define CONFIG_PREBOOT
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053056
57/*
58 * For booting Linux, the board info and command line data
59 * have to be in the first 8 MB of memory, since this is
60 * the maximum mapped by the Linux kernel during initialization.
61 */
62#define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */
63#define CONFIG_INITRD_TAG 1 /* enable INITRD tag */
64#define CONFIG_SETUP_MEMORY_TAGS 1 /* enable memory tag */
65
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053066#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buff Size */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053067
68/*
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053069 * Size of malloc() pool
70 */
Andreas Bießmannbfbfab92012-10-29 13:58:55 +000071#define CONFIG_SYS_MALLOC_LEN (1024 * 1024 * 4) /* 4MiB for malloc() */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053072
73/*
74 * Other required minimal configurations
75 */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053076#define CONFIG_ARCH_CPU_INIT /* call arch_cpu_init() */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053077#define CONFIG_SYS_LOAD_ADDR 0x00800000 /* default load adr- 8M */
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +053078#define CONFIG_SYS_MEMTEST_START 0x00800000 /* 8M */
79#define CONFIG_SYS_MEMTEST_END 0x00ffffff /*(_16M -1) */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053080#define CONFIG_SYS_RESET_ADDRESS 0xffff0000 /* Rst Vector Adr */
Stefan Roese5a9749e2015-07-23 10:26:11 +020081#define CONFIG_SYS_MAXARGS 32 /* max number of command args */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053082
Simon Guinot2f795ac2011-05-03 21:17:34 +053083/* ====> Include platform Common Definitions */
84#include <asm/arch/config.h>
85
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053086/*
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +053087 * DRAM Banks configuration, Custom config can be done in <board>.h
88 */
89#ifndef CONFIG_NR_DRAM_BANKS
90#define CONFIG_NR_DRAM_BANKS CONFIG_NR_DRAM_BANKS_MAX
91#else
92#if (CONFIG_NR_DRAM_BANKS > CONFIG_NR_DRAM_BANKS_MAX)
93#error CONFIG_NR_DRAM_BANKS Configurated more than available
94#endif
95#endif /* CONFIG_NR_DRAM_BANKS */
96
Simon Guinot2f795ac2011-05-03 21:17:34 +053097/* ====> Include driver Common Definitions */
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +053098/*
Lei Wencf946c62011-02-09 18:06:58 +053099 * Common NAND configuration
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530100 */
Lei Wencf946c62011-02-09 18:06:58 +0530101#ifdef CONFIG_CMD_NAND
102#define CONFIG_SYS_MAX_NAND_DEVICE 1
Lei Wencf946c62011-02-09 18:06:58 +0530103#endif
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530104
105/*
Lei Wencf946c62011-02-09 18:06:58 +0530106 * Common SPI Flash configuration
107 */
108#ifdef CONFIG_CMD_SF
Lei Wencf946c62011-02-09 18:06:58 +0530109#endif
110
111/*
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530112 * File system
113 */
Lei Wencf946c62011-02-09 18:06:58 +0530114#ifdef CONFIG_SYS_MVFS
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530115#define CONFIG_MTD_DEVICE /* needed for mtdparts commands */
116#define CONFIG_MTD_PARTITIONS
Lei Wencf946c62011-02-09 18:06:58 +0530117#endif
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530118
119#endif /* _MV_COMMON_H */