blob: 405a842f72dca6648edeb676d452fed5cfaf7ba0 [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 *
6 * See file CREDITS for list of people who contributed to this
7 * project.
8 *
9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License as
11 * published by the Free Software Foundation; either version 2 of
12 * the License, or (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
22 * MA 02110-1301 USA
23 */
24
25/*
26 * This file contains Marvell Board Specific common defincations.
27 * This file should be included in board config header file.
28 *
29 * It supports common definations for Kirkwood platform
30 * TBD: support for Orion5X platforms
31 */
32
33#ifndef _MV_COMMON_H
34#define _MV_COMMON_H
35
36/*
37 * High Level Configuration Options (easy to change)
38 */
39#define CONFIG_MARVELL 1
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +053040
41/*
42 * Custom CONFIG_SYS_TEXT_BASE can be done in <board>.h
Prafulla Wadaskar31d80c72010-10-27 17:46:06 +053043 */
44#ifndef CONFIG_SYS_TEXT_BASE
45#define CONFIG_SYS_TEXT_BASE 0x00600000
46#endif /* CONFIG_SYS_TEXT_BASE */
47
Prafulla Wadaskar0b20ed72010-09-30 22:57:02 +053048/* additions for new ARM relocation support */
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +053049#define CONFIG_SYS_SDRAM_BASE 0x00000000
Prafulla Wadaskar0b20ed72010-09-30 22:57:02 +053050
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053051/*
52 * CLKs configurations
53 */
54#define CONFIG_SYS_HZ 1000
55
56/*
57 * NS16550 Configuration
58 */
59#define CONFIG_SYS_NS16550
60#define CONFIG_SYS_NS16550_SERIAL
61#define CONFIG_SYS_NS16550_REG_SIZE (-4)
62#define CONFIG_SYS_NS16550_CLK CONFIG_SYS_TCLK
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +053063#define CONFIG_SYS_NS16550_COM1 MV_UART_CONSOLE_BASE
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053064
65/*
66 * Serial Port configuration
67 * The following definitions let you select what serial you want to use
68 * for your console driver.
69 */
70
71#define CONFIG_CONS_INDEX 1 /*Console on UART0 */
72#define CONFIG_BAUDRATE 115200
73#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, \
74 115200,230400, 460800, 921600 }
75/* auto boot */
76#define CONFIG_BOOTDELAY 3 /* default enable autoboot */
77
78/*
79 * For booting Linux, the board info and command line data
80 * have to be in the first 8 MB of memory, since this is
81 * the maximum mapped by the Linux kernel during initialization.
82 */
83#define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */
84#define CONFIG_INITRD_TAG 1 /* enable INITRD tag */
85#define CONFIG_SETUP_MEMORY_TAGS 1 /* enable memory tag */
86
87#define CONFIG_SYS_PROMPT "Marvell>> " /* Command Prompt */
88#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buff Size */
89#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE \
90 +sizeof(CONFIG_SYS_PROMPT) + 16) /* Print Buff */
91
92/*
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053093 * Size of malloc() pool
94 */
Andreas Bießmannbfbfab92012-10-29 13:58:55 +000095#define CONFIG_SYS_MALLOC_LEN (1024 * 1024 * 4) /* 4MiB for malloc() */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053096
97/*
98 * Other required minimal configurations
99 */
100#define CONFIG_SYS_LONGHELP
101#define CONFIG_AUTO_COMPLETE
102#define CONFIG_CMDLINE_EDITING
103#define CONFIG_CONSOLE_INFO_QUIET /* some code reduction */
104#define CONFIG_ARCH_CPU_INIT /* call arch_cpu_init() */
105#define CONFIG_ARCH_MISC_INIT /* call arch_misc_init() */
Wolfgang Denk844f07d2010-11-27 23:30:56 +0100106#define CONFIG_BOARD_EARLY_INIT_F /* call board_init_f for early inits */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530107#define CONFIG_DISPLAY_CPUINFO /* Display cpu info */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530108#define CONFIG_SYS_LOAD_ADDR 0x00800000 /* default load adr- 8M */
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +0530109#define CONFIG_SYS_MEMTEST_START 0x00800000 /* 8M */
110#define CONFIG_SYS_MEMTEST_END 0x00ffffff /*(_16M -1) */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530111#define CONFIG_SYS_RESET_ADDRESS 0xffff0000 /* Rst Vector Adr */
112#define CONFIG_SYS_MAXARGS 16 /* max number of command args */
113
Simon Guinot2f795ac2011-05-03 21:17:34 +0530114/* ====> Include platform Common Definitions */
115#include <asm/arch/config.h>
116
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530117/*
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +0530118 * DRAM Banks configuration, Custom config can be done in <board>.h
119 */
120#ifndef CONFIG_NR_DRAM_BANKS
121#define CONFIG_NR_DRAM_BANKS CONFIG_NR_DRAM_BANKS_MAX
122#else
123#if (CONFIG_NR_DRAM_BANKS > CONFIG_NR_DRAM_BANKS_MAX)
124#error CONFIG_NR_DRAM_BANKS Configurated more than available
125#endif
126#endif /* CONFIG_NR_DRAM_BANKS */
127
Simon Guinot2f795ac2011-05-03 21:17:34 +0530128/* ====> Include driver Common Definitions */
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +0530129/*
Lei Wencf946c62011-02-09 18:06:58 +0530130 * Common NAND configuration
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530131 */
Lei Wencf946c62011-02-09 18:06:58 +0530132#ifdef CONFIG_CMD_NAND
133#define CONFIG_SYS_MAX_NAND_DEVICE 1
Lei Wencf946c62011-02-09 18:06:58 +0530134#endif
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530135
136/*
Lei Wencf946c62011-02-09 18:06:58 +0530137 * Common SPI Flash configuration
138 */
139#ifdef CONFIG_CMD_SF
140#define CONFIG_SPI_FLASH 1
141#define CONFIG_SPI_FLASH_MACRONIX 1
142#endif
143
144/*
145 * Common USB/EHCI configuration
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530146 */
147#ifdef CONFIG_CMD_USB
148#define CONFIG_USB_EHCI /* Enable EHCI USB support */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530149#define CONFIG_USB_STORAGE
150#define CONFIG_DOS_PARTITION
151#define CONFIG_ISO_PARTITION
152#define CONFIG_SUPPORT_VFAT
153#endif /* CONFIG_CMD_USB */
154
155/*
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530156 * File system
157 */
Lei Wencf946c62011-02-09 18:06:58 +0530158#ifdef CONFIG_SYS_MVFS
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530159#define CONFIG_CMD_EXT2
160#define CONFIG_CMD_JFFS2
161#define CONFIG_CMD_FAT
162#define CONFIG_CMD_UBI
163#define CONFIG_CMD_UBIFS
164#define CONFIG_RBTREE
165#define CONFIG_MTD_DEVICE /* needed for mtdparts commands */
166#define CONFIG_MTD_PARTITIONS
167#define CONFIG_CMD_MTDPARTS
168#define CONFIG_LZO
Lei Wencf946c62011-02-09 18:06:58 +0530169#endif
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530170
171#endif /* _MV_COMMON_H */