blob: a8937dde2d481853a19ca3e96534e3475797abb7 [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 */
95#define CONFIG_SYS_MALLOC_LEN (1024 * 1024) /* 1MiB for malloc() */
96/* size in bytes reserved for initial data */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +053097
98/*
99 * Other required minimal configurations
100 */
101#define CONFIG_SYS_LONGHELP
102#define CONFIG_AUTO_COMPLETE
103#define CONFIG_CMDLINE_EDITING
104#define CONFIG_CONSOLE_INFO_QUIET /* some code reduction */
105#define CONFIG_ARCH_CPU_INIT /* call arch_cpu_init() */
106#define CONFIG_ARCH_MISC_INIT /* call arch_misc_init() */
Wolfgang Denk844f07d2010-11-27 23:30:56 +0100107#define CONFIG_BOARD_EARLY_INIT_F /* call board_init_f for early inits */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530108#define CONFIG_DISPLAY_CPUINFO /* Display cpu info */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530109#define CONFIG_STACKSIZE 0x00100000 /* regular stack- 1M */
110#define CONFIG_SYS_LOAD_ADDR 0x00800000 /* default load adr- 8M */
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +0530111#define CONFIG_SYS_MEMTEST_START 0x00800000 /* 8M */
112#define CONFIG_SYS_MEMTEST_END 0x00ffffff /*(_16M -1) */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530113#define CONFIG_SYS_RESET_ADDRESS 0xffff0000 /* Rst Vector Adr */
114#define CONFIG_SYS_MAXARGS 16 /* max number of command args */
115
116/*
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +0530117 * DRAM Banks configuration, Custom config can be done in <board>.h
118 */
119#ifndef CONFIG_NR_DRAM_BANKS
120#define CONFIG_NR_DRAM_BANKS CONFIG_NR_DRAM_BANKS_MAX
121#else
122#if (CONFIG_NR_DRAM_BANKS > CONFIG_NR_DRAM_BANKS_MAX)
123#error CONFIG_NR_DRAM_BANKS Configurated more than available
124#endif
125#endif /* CONFIG_NR_DRAM_BANKS */
126
Lei Wencf946c62011-02-09 18:06:58 +0530127/* ====> Include platform Common Definations */
128#include <asm/arch/config.h>
129
130/* ====> Include driver Common Definations */
Prafulla Wadaskar8e14ed82010-12-07 20:58:35 +0530131/*
Lei Wencf946c62011-02-09 18:06:58 +0530132 * Common NAND configuration
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530133 */
Lei Wencf946c62011-02-09 18:06:58 +0530134#ifdef CONFIG_CMD_NAND
135#define CONFIG_SYS_MAX_NAND_DEVICE 1
136#define NAND_MAX_CHIPS 1
137#define CONFIG_SYS_64BIT_VSPRINTF /* needed for nand_util.c */
138#endif
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530139
140/*
Lei Wencf946c62011-02-09 18:06:58 +0530141 * Common SPI Flash configuration
142 */
143#ifdef CONFIG_CMD_SF
144#define CONFIG_SPI_FLASH 1
145#define CONFIG_SPI_FLASH_MACRONIX 1
146#endif
147
148/*
149 * Common USB/EHCI configuration
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530150 */
151#ifdef CONFIG_CMD_USB
152#define CONFIG_USB_EHCI /* Enable EHCI USB support */
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530153#define CONFIG_USB_STORAGE
154#define CONFIG_DOS_PARTITION
155#define CONFIG_ISO_PARTITION
156#define CONFIG_SUPPORT_VFAT
157#endif /* CONFIG_CMD_USB */
158
159/*
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530160 * File system
161 */
Lei Wencf946c62011-02-09 18:06:58 +0530162#ifdef CONFIG_SYS_MVFS
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530163#define CONFIG_CMD_EXT2
164#define CONFIG_CMD_JFFS2
165#define CONFIG_CMD_FAT
166#define CONFIG_CMD_UBI
167#define CONFIG_CMD_UBIFS
168#define CONFIG_RBTREE
169#define CONFIG_MTD_DEVICE /* needed for mtdparts commands */
170#define CONFIG_MTD_PARTITIONS
171#define CONFIG_CMD_MTDPARTS
172#define CONFIG_LZO
Lei Wencf946c62011-02-09 18:06:58 +0530173#endif
Prafulla Wadaskar54e999a2010-09-30 22:53:43 +0530174
175#endif /* _MV_COMMON_H */