blob: 57b620d4810743d81da20194898977ea7111c6a0 [file] [log] [blame]
wdenk1cb8e982003-03-06 21:55:29 +00001/*
wdenk531716e2003-09-13 19:01:12 +00002 * (C) Copyright 2002, 2003
wdenk1cb8e982003-03-06 21:55:29 +00003 * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
4 * Marius Groeger <mgroeger@sysgo.de>
Detlev Zundel792a09e2009-05-13 10:54:10 +02005 * Gary Jennejohn <garyj@denx.de>
wdenk1cb8e982003-03-06 21:55:29 +00006 * David Mueller <d.mueller@elsoft.ch>
7 *
8 * Configuation settings for the MPL VCMA9 board.
9 *
Wolfgang Denk1a459662013-07-08 09:37:19 +020010 * SPDX-License-Identifier: GPL-2.0+
wdenk1cb8e982003-03-06 21:55:29 +000011 */
12
13#ifndef __CONFIG_H
14#define __CONFIG_H
15
David Müller (ELSOFT AG)c6865372011-10-31 01:22:06 +000016
17#define MACH_TYPE_MPL_VCMA9 227
18
wdenk1cb8e982003-03-06 21:55:29 +000019/*
wdenk1cb8e982003-03-06 21:55:29 +000020 * High Level Configuration Options
21 * (easy to change)
22 */
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +000023#define CONFIG_ARM920T /* This is an ARM920T Core */
24#define CONFIG_S3C24X0 /* in a SAMSUNG S3C24x0-type SoC */
25#define CONFIG_S3C2410 /* specifically a SAMSUNG S3C2410 SoC */
26#define CONFIG_VCMA9 /* on a MPL VCMA9 Board */
David Müller (ELSOFT AG)c6865372011-10-31 01:22:06 +000027#define CONFIG_MACH_TYPE MACH_TYPE_MPL_VCMA9 /* Machine type */
wdenk1cb8e982003-03-06 21:55:29 +000028
David Müller (ELSOFT AG)0bf42fe2011-05-01 21:52:49 +000029#define CONFIG_SYS_TEXT_BASE 0x0
30
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +000031#define CONFIG_SYS_ARM_CACHE_WRITETHROUGH
wdenk1cb8e982003-03-06 21:55:29 +000032
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +000033/* input clock of PLL (VCMA9 has 12MHz input clock) */
34#define CONFIG_SYS_CLK_FREQ 12000000
wdenk1cb8e982003-03-06 21:55:29 +000035
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +000036#define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */
37#define CONFIG_SETUP_MEMORY_TAGS
38#define CONFIG_INITRD_TAG
wdenk1cb8e982003-03-06 21:55:29 +000039
Jon Loeligera5562902007-07-08 15:31:57 -050040/*
Jon Loeligera1aa0bb2007-07-10 09:22:23 -050041 * BOOTP options
42 */
43#define CONFIG_BOOTP_BOOTFILESIZE
44#define CONFIG_BOOTP_BOOTPATH
45#define CONFIG_BOOTP_GATEWAY
46#define CONFIG_BOOTP_HOSTNAME
47
Jon Loeligera1aa0bb2007-07-10 09:22:23 -050048/*
Jon Loeligera5562902007-07-08 15:31:57 -050049 * Command line configuration.
50 */
51#include <config_cmd_default.h>
52
53#define CONFIG_CMD_CACHE
54#define CONFIG_CMD_EEPROM
55#define CONFIG_CMD_I2C
56#define CONFIG_CMD_USB
57#define CONFIG_CMD_REGINFO
Jon Loeligera5562902007-07-08 15:31:57 -050058#define CONFIG_CMD_DATE
59#define CONFIG_CMD_ELF
60#define CONFIG_CMD_DHCP
61#define CONFIG_CMD_PING
62#define CONFIG_CMD_BSP
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +000063#define CONFIG_CMD_NAND
Tom Rinib930a3e2013-03-05 05:54:05 +000064#define CONFIG_CMD_NAND_YAFFS
Jon Loeligera5562902007-07-08 15:31:57 -050065
Helmut Raiger9660e442011-10-20 04:19:47 +000066#define CONFIG_BOARD_LATE_INIT
wdenk1cb8e982003-03-06 21:55:29 +000067
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +020068#define CONFIG_SYS_HUSH_PARSER
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +000069#define CONFIG_CMDLINE_EDITING
70
71/*
wdenk1cb8e982003-03-06 21:55:29 +000072 * I2C stuff:
73 * the MPL VCMA9 is equipped with an ATMEL 24C256 EEPROM at
74 * address 0x50 with 16bit addressing
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +000075 */
Piotr Wilczek2d8f1e22013-11-20 10:43:49 +010076#define CONFIG_SYS_I2C
wdenk1cb8e982003-03-06 21:55:29 +000077
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +000078/* we use the built-in I2C controller */
Piotr Wilczek2d8f1e22013-11-20 10:43:49 +010079#define CONFIG_SYS_I2C_S3C24X0
80#define CONFIG_SYS_I2C_S3C24X0_SPEED 100000 /* I2C speed */
81#define CONFIG_SYS_I2C_S3C24X0_SLAVE 0x7F /* I2C slave addr */
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +000082
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +020083#define CONFIG_SYS_I2C_EEPROM_ADDR 0x50
84#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +000085/* use EEPROM for environment vars */
86#define CONFIG_ENV_IS_IN_EEPROM 1
87/* environment starts at offset 0 */
88#define CONFIG_ENV_OFFSET 0x000
89/* 2KB should be more than enough */
90#define CONFIG_ENV_SIZE 0x800
wdenk1cb8e982003-03-06 21:55:29 +000091
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +020092#undef CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +000093/* 64 bytes page write mode on 24C256 */
94#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 6
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +020095#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10
wdenk1cb8e982003-03-06 21:55:29 +000096
97/*
wdenk1cb8e982003-03-06 21:55:29 +000098 * Hardware drivers
99 */
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000100#define CONFIG_CS8900 /* we have a CS8900 on-board */
101#define CONFIG_CS8900_BASE 0x20000300
102#define CONFIG_CS8900_BUS16
wdenk1cb8e982003-03-06 21:55:29 +0000103
104/*
105 * select serial console configuration
106 */
Jean-Christophe PLAGNIOL-VILLARD300f99f2009-03-30 18:58:39 +0200107#define CONFIG_S3C24X0_SERIAL
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000108#define CONFIG_SERIAL1 1 /* we use SERIAL 1 on VCMA9 */
wdenk1cb8e982003-03-06 21:55:29 +0000109
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000110/* USB support (currently only works with D-cache off) */
111#define CONFIG_USB_OHCI
Marek Vasutfb24ffc2012-07-21 05:02:22 +0000112#define CONFIG_USB_OHCI_S3C24XX
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000113#define CONFIG_USB_KEYBOARD
114#define CONFIG_USB_STORAGE
115#define CONFIG_DOS_PARTITION
wdenk48b42612003-06-19 23:01:32 +0000116
117/* Enable needed helper functions */
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000118#define CONFIG_SYS_STDIO_DEREGISTER /* needs stdio_deregister */
wdenk48b42612003-06-19 23:01:32 +0000119
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000120/* RTC */
121#define CONFIG_RTC_S3C24X0
wdenk48b42612003-06-19 23:01:32 +0000122
123
wdenk1cb8e982003-03-06 21:55:29 +0000124/* allow to overwrite serial and ethaddr */
125#define CONFIG_ENV_OVERWRITE
126
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000127#define CONFIG_BAUDRATE 9600
wdenk1cb8e982003-03-06 21:55:29 +0000128
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000129#define CONFIG_BOOTDELAY 5
130#define CONFIG_BOOT_RETRY_TIME -1
131#define CONFIG_RESET_TO_RETRY
132#define CONFIG_ZERO_BOOTDELAY_CHECK
wdenka2663ea2003-12-07 18:32:37 +0000133
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000134#define CONFIG_NETMASK 255.255.255.0
135#define CONFIG_IPADDR 10.0.0.110
136#define CONFIG_SERVERIP 10.0.0.1
wdenk1cb8e982003-03-06 21:55:29 +0000137
Jon Loeligera5562902007-07-08 15:31:57 -0500138#if defined(CONFIG_CMD_KGDB)
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000139/* speed to run kgdb serial port */
140#define CONFIG_KGDB_BAUDRATE 115200
wdenk1cb8e982003-03-06 21:55:29 +0000141/* what's this ? it's not used anywhere */
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000142#define CONFIG_KGDB_SER_INDEX 2 /* which serial port to use */
wdenk1cb8e982003-03-06 21:55:29 +0000143#endif
144
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000145/* Miscellaneous configurable options */
146#define CONFIG_SYS_LONGHELP /* undef to save memory */
147#define CONFIG_SYS_PROMPT "VCMA9 # "
148#define CONFIG_SYS_CBSIZE 256
149/* Print Buffer Size */
150#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16)
151#define CONFIG_SYS_MAXARGS 16
152/* Boot Argument Buffer Size */
153#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
wdenk1cb8e982003-03-06 21:55:29 +0000154
David Müller (ELSOFT AG)3d3206f2011-12-22 01:19:25 +0000155#define CONFIG_DISPLAY_CPUINFO /* Display cpu info */
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000156#define CONFIG_DISPLAY_BOARDINFO /* Display board info */
157
158#define CONFIG_SYS_MEMTEST_START 0x30000000 /* memtest works on */
159#define CONFIG_SYS_MEMTEST_END 0x31FFFFFF /* 32 MB in DRAM */
wdenk531716e2003-09-13 19:01:12 +0000160
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +0200161#define CONFIG_SYS_ALT_MEMTEST
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000162#define CONFIG_SYS_LOAD_ADDR 0x30800000
wdenk1cb8e982003-03-06 21:55:29 +0000163
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000164/* we configure PWM Timer 4 to 1ms 1000Hz */
wdenk1cb8e982003-03-06 21:55:29 +0000165
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000166/* support additional compression methods */
167#define CONFIG_BZIP2
168#define CONFIG_LZO
169#define CONFIG_LZMA
wdenka2663ea2003-12-07 18:32:37 +0000170
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000171/* Ident */
wdenk48b42612003-06-19 23:01:32 +0000172/*#define VERSION_TAG "released"*/
173#define VERSION_TAG "unstable"
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000174#define CONFIG_IDENT_STRING "\n(c) 2003 - 2011 by MPL AG Switzerland, " \
175 "MEV-10080-001 " VERSION_TAG
wdenk48b42612003-06-19 23:01:32 +0000176
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000177/* Physical Memory Map */
178#define CONFIG_NR_DRAM_BANKS 1 /* we have 1 bank of DRAM */
179#define PHYS_SDRAM_1 0x30000000 /* SDRAM Bank #1 */
180#define PHYS_FLASH_1 0x00000000 /* Flash Bank #1 */
wdenk1cb8e982003-03-06 21:55:29 +0000181
David Müller (ELSOFT AG)6d754842011-05-01 21:52:50 +0000182#define CONFIG_SYS_FLASH_BASE PHYS_FLASH_1
wdenk1cb8e982003-03-06 21:55:29 +0000183
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000184/* FLASH and environment organization */
wdenk1cb8e982003-03-06 21:55:29 +0000185
David Müller (ELSOFT AG)6d754842011-05-01 21:52:50 +0000186#define CONFIG_SYS_FLASH_CFI
187#define CONFIG_FLASH_CFI_DRIVER
188#define CONFIG_FLASH_CFI_LEGACY
189#define CONFIG_SYS_FLASH_LEGACY_512Kx16
190#define CONFIG_FLASH_SHOW_PROGRESS 45
Jean-Christophe PLAGNIOL-VILLARD6d0f6bc2008-10-16 15:01:15 +0200191#define CONFIG_SYS_MAX_FLASH_BANKS 1 /* max number of memory banks */
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000192#define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE }
David Müller (ELSOFT AG)6d754842011-05-01 21:52:50 +0000193#define CONFIG_SYS_MAX_FLASH_SECT (19)
wdenk1cb8e982003-03-06 21:55:29 +0000194
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000195/*
196 * Size of malloc() pool
197 * BZIP2 / LZO / LZMA need a lot of RAM
198 */
199#define CONFIG_SYS_MALLOC_LEN (4 * 1024 * 1024)
200#define CONFIG_SYS_MONITOR_LEN (512 * 1024)
201#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE
202
203/* NAND configuration */
204#ifdef CONFIG_CMD_NAND
205#define CONFIG_NAND_S3C2410
206#define CONFIG_SYS_S3C2410_NAND_HWECC
207#define CONFIG_SYS_MAX_NAND_DEVICE 1
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000208#define CONFIG_SYS_NAND_BASE 0x4E000000
209#define CONFIG_S3C24XX_CUSTOM_NAND_TIMING
210#define CONFIG_S3C24XX_TACLS 1
211#define CONFIG_S3C24XX_TWRPH0 5
212#define CONFIG_S3C24XX_TWRPH1 3
wdenk1cb8e982003-03-06 21:55:29 +0000213#endif
214
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000215#define MULTI_PURPOSE_SOCKET_ADDR 0x08000000
wdenk48b42612003-06-19 23:01:32 +0000216
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000217/* File system */
218#define CONFIG_CMD_FAT
219#define CONFIG_CMD_EXT2
220#define CONFIG_CMD_UBI
221#define CONFIG_CMD_UBIFS
222#define CONFIG_CMD_JFFS2
223#define CONFIG_YAFFS2
224#define CONFIG_RBTREE
225#define CONFIG_MTD_DEVICE /* needed for mtdparts commands */
226#define CONFIG_MTD_PARTITIONS
227#define CONFIG_CMD_MTDPARTS
228#define CONFIG_LZO
wdenk48b42612003-06-19 23:01:32 +0000229
David Müller (ELSOFT AG)d2d94572011-05-01 21:52:48 +0000230#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1
231#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + 0x1000 - \
232 GENERATED_GBL_DATA_SIZE)
233
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000234#define CONFIG_BOARD_EARLY_INIT_F
David Müller (ELSOFT AG)d2d94572011-05-01 21:52:48 +0000235
David Müller (ELSOFT AG)f3108302011-05-01 21:52:51 +0000236#endif /* __CONFIG_H */