xref: /rk3399_rockchip-uboot/include/configs/mx23_olinuxino.h (revision 13b1ebdec649dbab0d0f8653e088f2df89c031e3)
164a93860SMarek Vasut /*
264a93860SMarek Vasut  * Copyright (C) 2013 Marek Vasut <marex@denx.de>
364a93860SMarek Vasut  *
464a93860SMarek Vasut  * This program is free software; you can redistribute it and/or
564a93860SMarek Vasut  * modify it under the terms of the GNU General Public License as
664a93860SMarek Vasut  * published by the Free Software Foundation; either version 2 of
764a93860SMarek Vasut  * the License, or (at your option) any later version.
864a93860SMarek Vasut  *
964a93860SMarek Vasut  * This program is distributed in the hope that it will be useful,
1064a93860SMarek Vasut  * but WITHOUT ANY WARRANTY; without even the implied warranty of
1164a93860SMarek Vasut  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the
1264a93860SMarek Vasut  * GNU General Public License for more details.
1364a93860SMarek Vasut  *
1464a93860SMarek Vasut  * You should have received a copy of the GNU General Public License
1564a93860SMarek Vasut  * along with this program; if not, write to the Free Software
1664a93860SMarek Vasut  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
1764a93860SMarek Vasut  * MA 02111-1307 USA
1864a93860SMarek Vasut  */
1964a93860SMarek Vasut #ifndef __MX23_OLINUXINO_CONFIG_H__
2064a93860SMarek Vasut #define __MX23_OLINUXINO_CONFIG_H__
2164a93860SMarek Vasut 
2264a93860SMarek Vasut /*
2364a93860SMarek Vasut  * SoC configurations
2464a93860SMarek Vasut  */
2564a93860SMarek Vasut #define	CONFIG_MX23				/* i.MX23 SoC */
2664a93860SMarek Vasut #define	CONFIG_MXS_GPIO				/* GPIO control */
2764a93860SMarek Vasut #define	CONFIG_SYS_HZ		1000		/* Ticks per second */
2864a93860SMarek Vasut 
2964a93860SMarek Vasut #define	CONFIG_MACH_TYPE	4105
3064a93860SMarek Vasut 
3164a93860SMarek Vasut #include <asm/arch/regs-base.h>
3264a93860SMarek Vasut 
3364a93860SMarek Vasut #define	CONFIG_SYS_NO_FLASH
3464a93860SMarek Vasut #define	CONFIG_BOARD_EARLY_INIT_F
3564a93860SMarek Vasut #define	CONFIG_ARCH_MISC_INIT
3664a93860SMarek Vasut 
3764a93860SMarek Vasut /*
3864a93860SMarek Vasut  * SPL
3964a93860SMarek Vasut  */
4064a93860SMarek Vasut #define	CONFIG_SPL
4164a93860SMarek Vasut #define	CONFIG_SPL_NO_CPU_SUPPORT_CODE
4264a93860SMarek Vasut #define	CONFIG_SPL_START_S_PATH		"arch/arm/cpu/arm926ejs/mxs"
4364a93860SMarek Vasut #define	CONFIG_SPL_LDSCRIPT	"arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds"
4464a93860SMarek Vasut #define	CONFIG_SPL_LIBCOMMON_SUPPORT
4564a93860SMarek Vasut #define	CONFIG_SPL_LIBGENERIC_SUPPORT
4664a93860SMarek Vasut #define	CONFIG_SPL_GPIO_SUPPORT
4764a93860SMarek Vasut 
4864a93860SMarek Vasut /*
4964a93860SMarek Vasut  * U-Boot Commands
5064a93860SMarek Vasut  */
5164a93860SMarek Vasut #include <config_cmd_default.h>
5264a93860SMarek Vasut #define	CONFIG_DISPLAY_CPUINFO
5364a93860SMarek Vasut #define	CONFIG_DOS_PARTITION
5464a93860SMarek Vasut 
5564a93860SMarek Vasut #define	CONFIG_CMD_CACHE
56*13b1ebdeSMarek Vasut #define	CONFIG_CMD_EXT2
5764a93860SMarek Vasut #define	CONFIG_CMD_FAT
5864a93860SMarek Vasut #define	CONFIG_CMD_GPIO
59*13b1ebdeSMarek Vasut #define	CONFIG_CMD_MMC
6064a93860SMarek Vasut 
6164a93860SMarek Vasut /*
6264a93860SMarek Vasut  * Memory configurations
6364a93860SMarek Vasut  */
6464a93860SMarek Vasut #define	CONFIG_NR_DRAM_BANKS		1		/* 1 bank of DRAM */
6564a93860SMarek Vasut #define	PHYS_SDRAM_1			0x40000000	/* Base address */
6664a93860SMarek Vasut #define	PHYS_SDRAM_1_SIZE		0x08000000	/* Max 128 MB RAM */
6764a93860SMarek Vasut #define	CONFIG_SYS_MALLOC_LEN		0x00400000	/* 4 MB for malloc */
6864a93860SMarek Vasut #define	CONFIG_SYS_GBL_DATA_SIZE	128		/* Initial data */
6964a93860SMarek Vasut #define	CONFIG_SYS_MEMTEST_START	0x40000000	/* Memtest start adr */
7064a93860SMarek Vasut #define	CONFIG_SYS_MEMTEST_END		0x40400000	/* 4 MB RAM test */
7164a93860SMarek Vasut #define	CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1
7264a93860SMarek Vasut /* Point initial SP in SRAM so SPL can use it too. */
7364a93860SMarek Vasut 
7464a93860SMarek Vasut #define CONFIG_SYS_INIT_RAM_ADDR	0x00000000
7564a93860SMarek Vasut #define CONFIG_SYS_INIT_RAM_SIZE	(128 * 1024)
7664a93860SMarek Vasut 
7764a93860SMarek Vasut #define CONFIG_SYS_INIT_SP_OFFSET \
7864a93860SMarek Vasut 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
7964a93860SMarek Vasut #define CONFIG_SYS_INIT_SP_ADDR \
8064a93860SMarek Vasut 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
8164a93860SMarek Vasut /*
8264a93860SMarek Vasut  * We need to sacrifice first 4 bytes of RAM here to avoid triggering some
8364a93860SMarek Vasut  * strange BUG in ROM corrupting first 4 bytes of RAM when loading U-Boot
8464a93860SMarek Vasut  * binary. In case there was more of this mess, 0x100 bytes are skipped.
8564a93860SMarek Vasut  */
8664a93860SMarek Vasut #define	CONFIG_SYS_TEXT_BASE		0x40000100
8764a93860SMarek Vasut 
8864a93860SMarek Vasut /*
8964a93860SMarek Vasut  * U-Boot general configurations
9064a93860SMarek Vasut  */
9164a93860SMarek Vasut #define	CONFIG_SYS_LONGHELP
9264a93860SMarek Vasut #define	CONFIG_SYS_PROMPT	"=> "
9364a93860SMarek Vasut #define	CONFIG_SYS_CBSIZE	1024		/* Console I/O buffer size */
9464a93860SMarek Vasut #define	CONFIG_SYS_PBSIZE	\
9564a93860SMarek Vasut 	(CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
9664a93860SMarek Vasut 						/* Print buffer size */
9764a93860SMarek Vasut #define	CONFIG_SYS_MAXARGS	32		/* Max number of command args */
9864a93860SMarek Vasut #define	CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE
9964a93860SMarek Vasut 						/* Boot argument buffer size */
10064a93860SMarek Vasut #define	CONFIG_VERSION_VARIABLE			/* U-BOOT version */
10164a93860SMarek Vasut #define	CONFIG_AUTO_COMPLETE			/* Command auto complete */
10264a93860SMarek Vasut #define	CONFIG_CMDLINE_EDITING			/* Command history etc */
10364a93860SMarek Vasut #define	CONFIG_SYS_HUSH_PARSER
10464a93860SMarek Vasut 
10564a93860SMarek Vasut /*
10664a93860SMarek Vasut  * Serial Driver
10764a93860SMarek Vasut  */
10864a93860SMarek Vasut #define	CONFIG_PL011_SERIAL
10964a93860SMarek Vasut #define	CONFIG_PL011_CLOCK		24000000
11064a93860SMarek Vasut #define	CONFIG_PL01x_PORTS		{ (void *)MXS_UARTDBG_BASE }
11164a93860SMarek Vasut #define	CONFIG_CONS_INDEX		0
11264a93860SMarek Vasut #define	CONFIG_BAUDRATE			115200	/* Default baud rate */
11364a93860SMarek Vasut 
11464a93860SMarek Vasut /*
115*13b1ebdeSMarek Vasut  * MMC Driver
116*13b1ebdeSMarek Vasut  */
117*13b1ebdeSMarek Vasut #ifdef	CONFIG_CMD_MMC
118*13b1ebdeSMarek Vasut #define CONFIG_MMC
119*13b1ebdeSMarek Vasut #define CONFIG_BOUNCE_BUFFER
120*13b1ebdeSMarek Vasut #define CONFIG_GENERIC_MMC
121*13b1ebdeSMarek Vasut #define CONFIG_MXS_MMC
122*13b1ebdeSMarek Vasut #endif
123*13b1ebdeSMarek Vasut 
124*13b1ebdeSMarek Vasut /*
12564a93860SMarek Vasut  * APBH DMA
12664a93860SMarek Vasut  */
12764a93860SMarek Vasut #define CONFIG_APBH_DMA
12864a93860SMarek Vasut 
12964a93860SMarek Vasut /*
13064a93860SMarek Vasut  * ENV -- nowhere so far
13164a93860SMarek Vasut  */
13264a93860SMarek Vasut #define	CONFIG_ENV_SIZE			(16 * 1024)
13364a93860SMarek Vasut #define	CONFIG_ENV_IS_NOWHERE
13464a93860SMarek Vasut 
13564a93860SMarek Vasut /*
13664a93860SMarek Vasut  * Boot Linux
13764a93860SMarek Vasut  */
13864a93860SMarek Vasut #define	CONFIG_CMDLINE_TAG
13964a93860SMarek Vasut #define	CONFIG_SETUP_MEMORY_TAGS
14064a93860SMarek Vasut #define	CONFIG_BOOTDELAY	3
14164a93860SMarek Vasut #define	CONFIG_BOOTFILE		"uImage"
14264a93860SMarek Vasut #define	CONFIG_BOOTARGS		"console=ttyAMA0,115200n8 "
14364a93860SMarek Vasut #define	CONFIG_LOADADDR		0x42000000
14464a93860SMarek Vasut #define	CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR
14564a93860SMarek Vasut #define	CONFIG_OF_LIBFDT
14664a93860SMarek Vasut 
14764a93860SMarek Vasut #endif /* __MX23_OLINUXINO_CONFIG_H__ */
148