1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (C) 2011 Freescale Semiconductor, Inc.
4  * Jason Liu <r64343@freescale.com>
5  *
6  * Configuration settings for Freescale MX53 low cost board.
7  */
8 
9 #ifndef __CONFIG_H
10 #define __CONFIG_H
11 
12 #include <asm/arch/imx-regs.h>
13 
14 /* USB Configs */
15 #define CFG_MXC_USB_PORT	1
16 #define CFG_MXC_USB_PORTSC	(PORT_PTS_UTMI | PORT_PTS_PTW)
17 #define CFG_MXC_USB_FLAGS	0
18 
19 /* Command definition */
20 
21 #define PPD_CONFIG_NFS \
22 	"nfsserver=192.168.252.95\0" \
23 	"gatewayip=192.168.252.95\0" \
24 	"netmask=255.255.255.0\0" \
25 	"ipaddr=192.168.252.99\0" \
26 	"kernsize=0x2000\0" \
27 	"use_dhcp=0\0" \
28 	"nfsroot=/opt/springdale/rd\0" \
29 	"bootargs_nfs=setenv bootargs ${bootargs} root=/dev/nfs " \
30 		"${kern_ipconf} nfsroot=${nfsserver}:${nfsroot},v3,tcp rw\0" \
31 	"choose_ip=if test $use_dhcp = 1; then setenv kern_ipconf ip=dhcp; " \
32 		"setenv getcmd dhcp; else setenv kern_ipconf " \
33 		"ip=${ipaddr}:${nfsserver}:${gatewayip}:${netmask}::eth0:off; " \
34 		"setenv getcmd tftp; fi\0" \
35 	"nfs=run choose_ip setargs bootargs_nfs; ${getcmd} ${loadaddr} " \
36 		"${nfsserver}:${image}; bootm ${loadaddr}\0" \
37 
38 #define CFG_EXTRA_ENV_SETTINGS \
39 	PPD_CONFIG_NFS \
40 	"image=/boot/fitImage\0" \
41 	"dev=mmc\0" \
42 	"devnum=2\0" \
43 	"rootdev=mmcblk0p\0" \
44 	"quiet=quiet loglevel=0\0" \
45 	"lvds=ldb\0" \
46 	"setargs=setenv bootargs ${lvds} jtag=on mem=2G " \
47 		"vt.global_cursor_default=0 bootcause=${bootcause} ${quiet}\0" \
48 	"bootargs_emmc=setenv bootargs root=/dev/${rootdev}${partnum} ro " \
49 		"rootwait ${bootargs}\0" \
50 	"doquiet=" \
51 		"if ext2load ${dev} ${devnum}:5 0x7000A000 /boot/console; " \
52 			"then setenv quiet; fi\0" \
53 	"hasfirstboot=" \
54 		"test -e ${dev} ${devnum}:${partnum} /boot/bootcause/firstboot\0" \
55 	"swappartitions=" \
56 		"setexpr partnum 3 - ${partnum}\0" \
57 	"failbootcmd=" \
58 		"cls; " \
59 		"setcurs 5 4; " \
60 		"lcdputs \"Monitor failed to start. " \
61 		"Try again, or contact GE Service for support.\"; " \
62 		"bootcount reset; " \
63 		"while true; do sleep 1; done; \0" \
64 	"altbootcmd=" \
65 		"run doquiet; " \
66 		"setenv partnum 1; run hasfirstboot || setenv partnum 2; " \
67 		"run hasfirstboot || setenv partnum 0; " \
68 		"if test ${partnum} != 0; then " \
69 			"run swappartitions loadimage doboot; " \
70 		"fi; " \
71 		"run failbootcmd\0" \
72 	"loadimage=" \
73 		"ext2load ${dev} ${devnum}:${partnum} ${loadaddr} ${image}\0" \
74 	"doboot=" \
75 		"echo Booting from ${dev}:${devnum}:${partnum} ...; " \
76 		"run setargs; " \
77 		"run bootargs_emmc; " \
78 		"bootm ${loadaddr}\0" \
79 	"tryboot=" \
80 		"setenv partnum 1; run hasfirstboot || setenv partnum 2; " \
81 		"run loadimage || run swappartitions && run loadimage || " \
82 			"setenv partnum 0 && echo MISSING IMAGE;" \
83 		"run doboot; " \
84 		"run failbootcmd\0" \
85 	"video-mode=" \
86 		"lcd:800x480-24@60,monitor=lcd\0" \
87 
88 /* Miscellaneous configurable options */
89 
90 #define CFG_SYS_BOOTMAPSZ (256 << 20)     /* 256M */
91 
92 /* Physical Memory Map */
93 #define PHYS_SDRAM_1			CSD0_BASE_ADDR
94 #define PHYS_SDRAM_1_SIZE		(gd->bd->bi_dram[0].size)
95 #define PHYS_SDRAM_2			CSD1_BASE_ADDR
96 #define PHYS_SDRAM_2_SIZE		(gd->bd->bi_dram[1].size)
97 #define PHYS_SDRAM_SIZE			(gd->ram_size)
98 
99 #define CFG_SYS_SDRAM_BASE		(PHYS_SDRAM_1)
100 #define CFG_SYS_INIT_RAM_ADDR	(IRAM_BASE_ADDR)
101 #define CFG_SYS_INIT_RAM_SIZE	(IRAM_SIZE)
102 
103 /* FLASH and environment organization */
104 
105 #endif				/* __CONFIG_H */
106