blob: 60c2948f07465bc086135bf650d79147250c902a [file] [log] [blame]
wdenk1fe2c702003-03-06 21:55:29 +00001/*
wdenk25521902003-09-13 19:01:12 +00002 * (C) Copyright 2002, 2003
wdenk1fe2c702003-03-06 21:55:29 +00003 * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
4 * Marius Groeger <mgroeger@sysgo.de>
Detlev Zundelf1b3f2b2009-05-13 10:54:10 +02005 * Gary Jennejohn <garyj@denx.de>
wdenk1fe2c702003-03-06 21:55:29 +00006 * David Mueller <d.mueller@elsoft.ch>
7 *
8 * Configuation settings for the MPL VCMA9 board.
9 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +020010 * SPDX-License-Identifier: GPL-2.0+
wdenk1fe2c702003-03-06 21:55:29 +000011 */
12
13#ifndef __CONFIG_H
14#define __CONFIG_H
15
David Müller (ELSOFT AG)7c5e3822011-10-31 01:22:06 +000016
17#define MACH_TYPE_MPL_VCMA9 227
18
wdenk1fe2c702003-03-06 21:55:29 +000019/*
wdenk1fe2c702003-03-06 21:55:29 +000020 * High Level Configuration Options
21 * (easy to change)
22 */
Masahiro Yamada7a5b2922014-11-06 14:59:35 +090023#define CONFIG_S3C24X0 /* This is a SAMSUNG S3C24x0-type SoC */
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000024#define CONFIG_S3C2410 /* specifically a SAMSUNG S3C2410 SoC */
25#define CONFIG_VCMA9 /* on a MPL VCMA9 Board */
David Müller (ELSOFT AG)7c5e3822011-10-31 01:22:06 +000026#define CONFIG_MACH_TYPE MACH_TYPE_MPL_VCMA9 /* Machine type */
wdenk1fe2c702003-03-06 21:55:29 +000027
David Müller (ELSOFT AG)8791dd72011-05-01 21:52:49 +000028#define CONFIG_SYS_TEXT_BASE 0x0
29
David Müller (ELSOFT AG)ebe2cf92014-09-30 12:32:22 +020030#define CONFIG_SYS_GENERIC_BOARD
31
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000032#define CONFIG_SYS_ARM_CACHE_WRITETHROUGH
wdenk1fe2c702003-03-06 21:55:29 +000033
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000034/* input clock of PLL (VCMA9 has 12MHz input clock) */
35#define CONFIG_SYS_CLK_FREQ 12000000
wdenk1fe2c702003-03-06 21:55:29 +000036
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000037#define CONFIG_CMDLINE_TAG /* enable passing of ATAGs */
38#define CONFIG_SETUP_MEMORY_TAGS
39#define CONFIG_INITRD_TAG
wdenk1fe2c702003-03-06 21:55:29 +000040
Jon Loeliger21616192007-07-08 15:31:57 -050041/*
Jon Loeligerbeb9ff42007-07-10 09:22:23 -050042 * BOOTP options
43 */
44#define CONFIG_BOOTP_BOOTFILESIZE
45#define CONFIG_BOOTP_BOOTPATH
46#define CONFIG_BOOTP_GATEWAY
47#define CONFIG_BOOTP_HOSTNAME
48
Jon Loeligerbeb9ff42007-07-10 09:22:23 -050049/*
Jon Loeliger21616192007-07-08 15:31:57 -050050 * Command line configuration.
51 */
Jon Loeliger21616192007-07-08 15:31:57 -050052#define CONFIG_CMD_CACHE
53#define CONFIG_CMD_EEPROM
54#define CONFIG_CMD_I2C
55#define CONFIG_CMD_USB
56#define CONFIG_CMD_REGINFO
Jon Loeliger21616192007-07-08 15:31:57 -050057#define CONFIG_CMD_DATE
58#define CONFIG_CMD_ELF
59#define CONFIG_CMD_DHCP
60#define CONFIG_CMD_PING
61#define CONFIG_CMD_BSP
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000062#define CONFIG_CMD_NAND
Jon Loeliger21616192007-07-08 15:31:57 -050063
Helmut Raigerd5a184b2011-10-20 04:19:47 +000064#define CONFIG_BOARD_LATE_INIT
wdenk1fe2c702003-03-06 21:55:29 +000065
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020066#define CONFIG_SYS_HUSH_PARSER
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000067#define CONFIG_CMDLINE_EDITING
68
69/*
wdenk1fe2c702003-03-06 21:55:29 +000070 * I2C stuff:
71 * the MPL VCMA9 is equipped with an ATMEL 24C256 EEPROM at
72 * address 0x50 with 16bit addressing
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000073 */
Piotr Wilczek58bbd2b2013-11-20 10:43:49 +010074#define CONFIG_SYS_I2C
wdenk1fe2c702003-03-06 21:55:29 +000075
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000076/* we use the built-in I2C controller */
Piotr Wilczek58bbd2b2013-11-20 10:43:49 +010077#define CONFIG_SYS_I2C_S3C24X0
78#define CONFIG_SYS_I2C_S3C24X0_SPEED 100000 /* I2C speed */
79#define CONFIG_SYS_I2C_S3C24X0_SLAVE 0x7F /* I2C slave addr */
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000080
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020081#define CONFIG_SYS_I2C_EEPROM_ADDR 0x50
82#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000083/* use EEPROM for environment vars */
84#define CONFIG_ENV_IS_IN_EEPROM 1
85/* environment starts at offset 0 */
86#define CONFIG_ENV_OFFSET 0x000
87/* 2KB should be more than enough */
88#define CONFIG_ENV_SIZE 0x800
wdenk1fe2c702003-03-06 21:55:29 +000089
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020090#undef CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000091/* 64 bytes page write mode on 24C256 */
92#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 6
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +020093#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10
wdenk1fe2c702003-03-06 21:55:29 +000094
95/*
wdenk1fe2c702003-03-06 21:55:29 +000096 * Hardware drivers
97 */
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +000098#define CONFIG_CS8900 /* we have a CS8900 on-board */
99#define CONFIG_CS8900_BASE 0x20000300
100#define CONFIG_CS8900_BUS16
wdenk1fe2c702003-03-06 21:55:29 +0000101
102/*
103 * select serial console configuration
104 */
Jean-Christophe PLAGNIOL-VILLARD945342c2009-03-30 18:58:39 +0200105#define CONFIG_S3C24X0_SERIAL
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000106#define CONFIG_SERIAL1 1 /* we use SERIAL 1 on VCMA9 */
wdenk1fe2c702003-03-06 21:55:29 +0000107
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000108/* USB support (currently only works with D-cache off) */
109#define CONFIG_USB_OHCI
Marek Vasute917a7c2012-07-21 05:02:22 +0000110#define CONFIG_USB_OHCI_S3C24XX
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000111#define CONFIG_USB_KEYBOARD
112#define CONFIG_USB_STORAGE
113#define CONFIG_DOS_PARTITION
wdenk7539dea2003-06-19 23:01:32 +0000114
115/* Enable needed helper functions */
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000116#define CONFIG_SYS_STDIO_DEREGISTER /* needs stdio_deregister */
wdenk7539dea2003-06-19 23:01:32 +0000117
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000118/* RTC */
119#define CONFIG_RTC_S3C24X0
wdenk7539dea2003-06-19 23:01:32 +0000120
121
wdenk1fe2c702003-03-06 21:55:29 +0000122/* allow to overwrite serial and ethaddr */
123#define CONFIG_ENV_OVERWRITE
124
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000125#define CONFIG_BAUDRATE 9600
wdenk1fe2c702003-03-06 21:55:29 +0000126
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000127#define CONFIG_BOOTDELAY 5
128#define CONFIG_BOOT_RETRY_TIME -1
129#define CONFIG_RESET_TO_RETRY
130#define CONFIG_ZERO_BOOTDELAY_CHECK
wdenk4ea537d2003-12-07 18:32:37 +0000131
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000132#define CONFIG_NETMASK 255.255.255.0
133#define CONFIG_IPADDR 10.0.0.110
134#define CONFIG_SERVERIP 10.0.0.1
wdenk1fe2c702003-03-06 21:55:29 +0000135
Jon Loeliger21616192007-07-08 15:31:57 -0500136#if defined(CONFIG_CMD_KGDB)
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000137/* speed to run kgdb serial port */
138#define CONFIG_KGDB_BAUDRATE 115200
wdenk1fe2c702003-03-06 21:55:29 +0000139#endif
140
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000141/* Miscellaneous configurable options */
142#define CONFIG_SYS_LONGHELP /* undef to save memory */
143#define CONFIG_SYS_PROMPT "VCMA9 # "
144#define CONFIG_SYS_CBSIZE 256
145/* Print Buffer Size */
146#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16)
147#define CONFIG_SYS_MAXARGS 16
148/* Boot Argument Buffer Size */
149#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
150
David Müller (ELSOFT AG)0bf5fc72011-12-22 01:19:25 +0000151#define CONFIG_DISPLAY_CPUINFO /* Display cpu info */
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000152#define CONFIG_DISPLAY_BOARDINFO /* Display board info */
wdenk1fe2c702003-03-06 21:55:29 +0000153
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000154#define CONFIG_SYS_MEMTEST_START 0x30000000 /* memtest works on */
155#define CONFIG_SYS_MEMTEST_END 0x31FFFFFF /* 32 MB in DRAM */
wdenk25521902003-09-13 19:01:12 +0000156
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200157#define CONFIG_SYS_ALT_MEMTEST
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000158#define CONFIG_SYS_LOAD_ADDR 0x30800000
wdenk1fe2c702003-03-06 21:55:29 +0000159
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000160/* we configure PWM Timer 4 to 1ms 1000Hz */
wdenk1fe2c702003-03-06 21:55:29 +0000161
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000162/* support additional compression methods */
163#define CONFIG_BZIP2
164#define CONFIG_LZO
165#define CONFIG_LZMA
wdenk4ea537d2003-12-07 18:32:37 +0000166
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000167/* Ident */
wdenk7539dea2003-06-19 23:01:32 +0000168/*#define VERSION_TAG "released"*/
169#define VERSION_TAG "unstable"
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000170#define CONFIG_IDENT_STRING "\n(c) 2003 - 2011 by MPL AG Switzerland, " \
171 "MEV-10080-001 " VERSION_TAG
wdenk7539dea2003-06-19 23:01:32 +0000172
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000173/* Physical Memory Map */
174#define CONFIG_NR_DRAM_BANKS 1 /* we have 1 bank of DRAM */
175#define PHYS_SDRAM_1 0x30000000 /* SDRAM Bank #1 */
176#define PHYS_FLASH_1 0x00000000 /* Flash Bank #1 */
wdenk1fe2c702003-03-06 21:55:29 +0000177
David Müller (ELSOFT AG)7fbcd3b2011-05-01 21:52:50 +0000178#define CONFIG_SYS_FLASH_BASE PHYS_FLASH_1
wdenk1fe2c702003-03-06 21:55:29 +0000179
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000180/* FLASH and environment organization */
wdenk1fe2c702003-03-06 21:55:29 +0000181
David Müller (ELSOFT AG)7fbcd3b2011-05-01 21:52:50 +0000182#define CONFIG_SYS_FLASH_CFI
183#define CONFIG_FLASH_CFI_DRIVER
184#define CONFIG_FLASH_CFI_LEGACY
185#define CONFIG_SYS_FLASH_LEGACY_512Kx16
186#define CONFIG_FLASH_SHOW_PROGRESS 45
Jean-Christophe PLAGNIOL-VILLARD03836942008-10-16 15:01:15 +0200187#define CONFIG_SYS_MAX_FLASH_BANKS 1 /* max number of memory banks */
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000188#define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE }
David Müller (ELSOFT AG)7fbcd3b2011-05-01 21:52:50 +0000189#define CONFIG_SYS_MAX_FLASH_SECT (19)
wdenk1fe2c702003-03-06 21:55:29 +0000190
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000191/*
192 * Size of malloc() pool
193 * BZIP2 / LZO / LZMA need a lot of RAM
194 */
195#define CONFIG_SYS_MALLOC_LEN (4 * 1024 * 1024)
196#define CONFIG_SYS_MONITOR_LEN (512 * 1024)
197#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE
wdenk1fe2c702003-03-06 21:55:29 +0000198
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000199/* NAND configuration */
200#ifdef CONFIG_CMD_NAND
201#define CONFIG_NAND_S3C2410
202#define CONFIG_SYS_S3C2410_NAND_HWECC
203#define CONFIG_SYS_MAX_NAND_DEVICE 1
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000204#define CONFIG_SYS_NAND_BASE 0x4E000000
205#define CONFIG_S3C24XX_CUSTOM_NAND_TIMING
206#define CONFIG_S3C24XX_TACLS 1
207#define CONFIG_S3C24XX_TWRPH0 5
208#define CONFIG_S3C24XX_TWRPH1 3
209#endif
wdenk7539dea2003-06-19 23:01:32 +0000210
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000211#define MULTI_PURPOSE_SOCKET_ADDR 0x08000000
wdenk7539dea2003-06-19 23:01:32 +0000212
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000213/* File system */
214#define CONFIG_CMD_FAT
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000215#define CONFIG_CMD_UBI
216#define CONFIG_CMD_UBIFS
217#define CONFIG_CMD_JFFS2
218#define CONFIG_YAFFS2
219#define CONFIG_RBTREE
220#define CONFIG_MTD_DEVICE /* needed for mtdparts commands */
221#define CONFIG_MTD_PARTITIONS
222#define CONFIG_CMD_MTDPARTS
223#define CONFIG_LZO
wdenk7539dea2003-06-19 23:01:32 +0000224
David Müller (ELSOFT AG)360065d2011-05-01 21:52:48 +0000225#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1
226#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + 0x1000 - \
227 GENERATED_GBL_DATA_SIZE)
228
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000229#define CONFIG_BOARD_EARLY_INIT_F
David Müller (ELSOFT AG)360065d2011-05-01 21:52:48 +0000230
David Müller (ELSOFT AG)d3a4d252011-05-01 21:52:51 +0000231#endif /* __CONFIG_H */