blob: a7b363dbd47b5babf8b0234939c8ae5bd3e6454d [file] [log] [blame]
Jason Liu02591102011-11-25 00:18:05 +00001/*
2 * Copyright (C) 2010-2011 Freescale Semiconductor, Inc.
3 *
4 * Configuration settings for the Freescale i.MX6Q Armadillo2 board.
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License as
8 * published by the Free Software Foundation; either version 2 of
9 * the License, or (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
19 * MA 02111-1307 USA
20 */
21
22#ifndef __CONFIG_H
23#define __CONFIG_H
24
25#define CONFIG_MX6Q
26#define CONFIG_SYS_MX6_HCLK 24000000
27#define CONFIG_SYS_MX6_CLK32 32768
28#define CONFIG_DISPLAY_CPUINFO
29#define CONFIG_DISPLAY_BOARDINFO
30
31#include <asm/arch/imx-regs.h>
32
33#define CONFIG_CMDLINE_TAG
34#define CONFIG_SETUP_MEMORY_TAGS
35#define CONFIG_INITRD_TAG
36
37/* Size of malloc() pool */
38#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 2 * 1024 * 1024)
39
40#define CONFIG_ARCH_CPU_INIT
41#define CONFIG_BOARD_EARLY_INIT_F
42#define CONFIG_MXC_GPIO
43
44#define CONFIG_MXC_UART
45#define CONFIG_MXC_UART_BASE UART4_BASE
46
47/* MMC Configs */
48#define CONFIG_FSL_ESDHC
49#define CONFIG_FSL_USDHC
50#define CONFIG_SYS_FSL_ESDHC_ADDR 0
51#define CONFIG_SYS_FSL_USDHC_NUM 2
52
53#define CONFIG_MMC
54#define CONFIG_CMD_MMC
55#define CONFIG_GENERIC_MMC
56#define CONFIG_CMD_FAT
57#define CONFIG_DOS_PARTITION
58
59/* allow to overwrite serial and ethaddr */
60#define CONFIG_ENV_OVERWRITE
61#define CONFIG_CONS_INDEX 1
62#define CONFIG_BAUDRATE 115200
63#define CONFIG_SYS_BAUDRATE_TABLE {9600, 19200, 38400, 57600, 115200}
64
65/* Command definition */
66#include <config_cmd_default.h>
67
68#undef CONFIG_CMD_IMLS
69#undef CONFIG_CMD_NET
70#undef CONFIG_CMD_NFS
71
72#define CONFIG_BOOTDELAY 3
73
74#define CONFIG_LOADADDR 0x10800000
75#define CONFIG_SYS_TEXT_BASE 0x17800000
76
77#define CONFIG_EXTRA_ENV_SETTINGS \
78 "script=boot.scr\0" \
79 "uimage=uImage\0" \
80 "console=ttymxc3\0" \
81 "mmcdev=1\0" \
82 "mmcpart=2\0" \
83 "mmcroot=/dev/mmcblk0p3 rootwait rw\0" \
84 "mmcargs=setenv bootargs console=${console},${baudrate} " \
85 "root=${mmcroot}\0" \
86 "loadbootscript=" \
87 "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
88 "bootscript=echo Running bootscript from mmc ...; " \
89 "source\0" \
90 "loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
91 "mmcboot=echo Booting from mmc ...; " \
92 "run mmcargs; " \
93 "bootm\0" \
94 "netargs=setenv bootargs console=${console},${baudrate} " \
95 "root=/dev/nfs " \
96 "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
97 "netboot=echo Booting from net ...; " \
98 "run netargs; " \
99 "dhcp ${uimage}; bootm\0" \
100
101#define CONFIG_BOOTCOMMAND \
102 "mmc dev ${mmcdev};" \
103 "if mmc rescan ${mmcdev}; then " \
104 "if run loadbootscript; then " \
105 "run bootscript; " \
106 "else " \
107 "if run loaduimage; then " \
108 "run mmcboot; " \
109 "else run netboot; " \
110 "fi; " \
111 "fi; " \
112 "else run netboot; fi"
113
114#define CONFIG_ARP_TIMEOUT 200UL
115
116/* Miscellaneous configurable options */
117#define CONFIG_SYS_LONGHELP
118#define CONFIG_SYS_HUSH_PARSER
119#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
120#define CONFIG_SYS_PROMPT "MX6QARM2 U-Boot > "
121#define CONFIG_AUTO_COMPLETE
122#define CONFIG_SYS_CBSIZE 256
123
124/* Print Buffer Size */
125#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
126#define CONFIG_SYS_MAXARGS 16
127#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
128
129#define CONFIG_SYS_MEMTEST_START 0x10000000
130#define CONFIG_SYS_MEMTEST_END 0x10010000
131
132#define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR
133#define CONFIG_SYS_HZ 1000
134
135#define CONFIG_CMDLINE_EDITING
136#define CONFIG_STACKSIZE (128 * 1024)
137
138/* Physical Memory Map */
139#define CONFIG_NR_DRAM_BANKS 1
140#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR
141#define PHYS_SDRAM_SIZE (2u * 1024 * 1024 * 1024)
142
143#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM
144#define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR
145#define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE
146
147#define CONFIG_SYS_INIT_SP_OFFSET \
148 (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
149#define CONFIG_SYS_INIT_SP_ADDR \
150 (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
151
152/* FLASH and environment organization */
153#define CONFIG_SYS_NO_FLASH
154
155#define CONFIG_ENV_OFFSET (6 * 64 * 1024)
156#define CONFIG_ENV_SIZE (8 * 1024)
157#define CONFIG_ENV_IS_IN_MMC
158#define CONFIG_SYS_MMC_ENV_DEV 1
159
160#define CONFIG_OF_LIBFDT
161
162#endif /* __CONFIG_H */