blob: 4bced0c9994edfebf6cbeb38eb64b924db29f2c2 [file] [log] [blame]
Cyril Chemparathy3d138062010-06-07 14:13:36 -04001/*
2 * Copyright (C) 2008 Texas Instruments, Inc <www.ti.com>
3 *
4 * Based on davinci_dvevm.h. Original Copyrights follow:
5 *
6 * Copyright (C) 2007 Sergey Kubushyn <ksi@koi8.net>
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation; either version 2 of
11 * the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21 * MA 02111-1307 USA
22 */
23
24#ifndef __CONFIG_H
25#define __CONFIG_H
26
27#include <asm/sizes.h>
28#include <asm/arch/hardware.h>
29#include <asm/arch/clock.h>
30
31/* Architecture, CPU, etc */
32#define CONFIG_ARM1176
33#define CONFIG_TNETV107X
34#define CONFIG_TNETV107X_EVM
35#define CONFIG_ARCH_CPU_INIT
Wolfgang Denk0708bc62010-10-07 21:51:12 +020036#define CONFIG_SYS_UBOOT_BASE CONFIG_SYS_TEXT_BASE
Cyril Chemparathy3d138062010-06-07 14:13:36 -040037#define CONFIG_DISABLE_TCM
38#define CONFIG_PERIPORT_REMAP
39#define CONFIG_PERIPORT_BASE 0x2000000
40#define CONFIG_PERIPORT_SIZE 0x10
41#define CONFIG_SYS_CLK_FREQ clk_get_rate(TNETV107X_LPSC_ARM)
42
43#define CONFIG_SYS_TIMERBASE TNETV107X_TIMER0_BASE
44#define CONFIG_SYS_HZ_CLOCK clk_get_rate(TNETV107X_LPSC_TIMER0)
45#define CONFIG_SYS_HZ 1000
46
47#define CONFIG_PLL_SYS_EXT_FREQ 25000000
48#define CONFIG_PLL_TDM_EXT_FREQ 19200000
49#define CONFIG_PLL_ETH_EXT_FREQ 25000000
50
51/* Memory Info */
52#define CONFIG_SYS_MALLOC_LEN (0x10000 + 1*1024*1024)
Cyril Chemparathy3d138062010-06-07 14:13:36 -040053#define PHYS_SDRAM_1 TNETV107X_DDR_EMIF_DATA_BASE
54#define PHYS_SDRAM_1_SIZE 0x04000000
55#define CONFIG_SYS_MEMTEST_START PHYS_SDRAM_1
56#define CONFIG_SYS_MEMTEST_END (PHYS_SDRAM_1 + 16*1024*1024)
57#define CONFIG_NR_DRAM_BANKS 1
58#define CONFIG_STACKSIZE (256*1024)
59
Chan-Taek Park86d3c3a2011-06-23 09:19:26 +000060#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1
61#define CONFIG_SYS_INIT_RAM_SIZE 0x1000
62#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + \
63 CONFIG_SYS_INIT_RAM_SIZE - \
64 GENERATED_GBL_DATA_SIZE)
65
Cyril Chemparathy3d138062010-06-07 14:13:36 -040066/* Serial Driver Info */
67#define CONFIG_SYS_NS16550
68#define CONFIG_SYS_NS16550_SERIAL
69#define CONFIG_SYS_NS16550_REG_SIZE -4
70#define CONFIG_SYS_NS16550_COM1 TNETV107X_UART1_BASE
71#define CONFIG_SYS_NS16550_CLK clk_get_rate(TNETV107X_LPSC_UART1)
72#define CONFIG_CONS_INDEX 1
73#define CONFIG_BAUDRATE 115200
74#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 }
75
76/* Flash and environment info */
77#define CONFIG_SYS_NO_FLASH
78#define CONFIG_ENV_IS_IN_NAND
79#define CONFIG_NAND_DAVINCI
80#define CONFIG_ENV_SIZE (SZ_128K)
81#define CONFIG_SYS_NAND_HW_ECC
82#define CONFIG_SYS_NAND_1BIT_ECC
83#define CONFIG_SYS_NAND_CS 2
84#define CONFIG_SYS_NAND_USE_FLASH_BBT
85#define CONFIG_SYS_NAND_BASE TNETV107X_ASYNC_EMIF_DATA_CE0_BASE
86#define CONFIG_SYS_CLE_MASK 0x10
87#define CONFIG_SYS_ALE_MASK 0x8
88#define CONFIG_SYS_MAX_NAND_DEVICE 1
89#define CONFIG_MTD_PARTITIONS
90#define CONFIG_CMD_MTDPARTS
91#define CONFIG_MTD_DEVICE
92#define CONFIG_JFFS2_NAND
93#define NAND_MAX_CHIPS 1
94#define CONFIG_ENV_OFFSET 0x180000
Cyril Chemparathy3d138062010-06-07 14:13:36 -040095
96/*
97 * davinci_nand is a bit of a misnomer since this particular EMIF block is
98 * commonly used across multiple TI devices. Unfortunately, this misnomer
99 * (amongst others) carries forward into the kernel too. Consequently, if we
100 * use a different device name here, the mtdparts variable won't be usable as
101 * a kernel command-line argument.
102 */
103#define MTDIDS_DEFAULT "nand0=davinci_nand.0"
104#define MTDPARTS_DEFAULT "mtdparts=davinci_nand.0:" \
105 "1536k(uboot)ro," \
106 "128k(params)ro," \
107 "4m(kernel)," \
108 "-(filesystem)"
109
110/* General U-Boot configuration */
111#define CONFIG_BOOTFILE "uImage"
112#define CONFIG_SYS_PROMPT "U-Boot > "
113#define CONFIG_SYS_CBSIZE 1024
114#define CONFIG_SYS_MAXARGS 64
115#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
116#define CONFIG_VERSION_VARIABLE
117#define CONFIG_AUTO_COMPLETE
118#define CONFIG_SYS_HUSH_PARSER
119#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
120#define CONFIG_CMDLINE_EDITING
121#define CONFIG_SYS_LONGHELP
122#define CONFIG_CRC32_VERIFY
123#define CONFIG_MX_CYCLIC
124#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \
125 sizeof(CONFIG_SYS_PROMPT) + 16)
126#define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_MEMTEST_START + \
127 0x700000)
128#define LINUX_BOOT_PARAM_ADDR (CONFIG_SYS_MEMTEST_START + 0x100)
129#define CONFIG_CMDLINE_TAG
130#define CONFIG_SETUP_MEMORY_TAGS
131#define CONFIG_BOOTARGS "mem=32M console=ttyS1,115200n8 " \
132 "root=/dev/mmcblk0p1 rw noinitrd"
133#define CONFIG_BOOTCOMMAND ""
134#define CONFIG_BOOTDELAY 1
135
136#define CONFIG_CMD_BDI
137#define CONFIG_CMD_BOOTD
138#define CONFIG_CMD_CONSOLE
139#define CONFIG_CMD_ECHO
140#define CONFIG_CMD_EDITENV
141#define CONFIG_CMD_IMI
142#define CONFIG_CMD_ITEST
143#define CONFIG_CMD_LOADB
144#define CONFIG_CMD_LOADS
145#define CONFIG_CMD_MEMORY
146#define CONFIG_CMD_MISC
147#define CONFIG_CMD_RUN
148#define CONFIG_CMD_SAVEENV
149#define CONFIG_CMD_SOURCE
150#define CONFIG_CMD_ENV
151#define CONFIG_CMD_ASKENV
152#define CONFIG_CMD_SAVES
153#define CONFIG_CMD_MEMORY
154#define CONFIG_CMD_NAND
155#define CONFIG_CMD_JFFS2
156
157#endif /* __CONFIG_H */