Project

General

Profile

Porting #1249 » 0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch

GNUtoo, 2017-03-24 05:16 PM

View differences:

board/ti/am335x/board.c
556 556
 */
557 557
int board_init(void)
558 558
{
559
	u32 sys_reboot;
560

  
561
	sys_reboot = readl(PRM_RSTST);
562
	if (sys_reboot & (1 << 9))
563
		puts("Reset Source: IcePick reset has occurred.\n");
564

  
565
	if (sys_reboot & (1 << 5))
566
		puts("Reset Source: Global external warm reset has occurred.\n");
567

  
568
	if (sys_reboot & (1 << 4))
569
		puts("Reset Source: watchdog reset has occurred.\n");
570

  
571
	if (sys_reboot & (1 << 1))
572
		puts("Reset Source: Global warm SW reset has occurred.\n");
573

  
574
	if (sys_reboot & (1 << 0))
575
		puts("Reset Source: Power-on reset has occurred.\n");
576

  
559 577
#if defined(CONFIG_HW_WATCHDOG)
560 578
	hw_watchdog_init();
561 579
#endif
......
651 669
#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
652 670
	char *name = NULL;
653 671

  
672
	if (board_is_bone_lt()) {
673
		puts("Board: BeagleBone Black\n");
674
		name = "A335BNLT";
675
		if (!strncmp(board_ti_get_rev(), "BW", 2)) {
676
			puts("Model: BeagleBone Black Wireless\n");
677
			name = "BBBW";
678
		}
679
		if (!strncmp(board_ti_get_rev(), "BLA", 3)) {
680
			puts("Model: BeagleBone Blue\n");
681
			name = "BBBL";
682
		}
683
		if (!strncmp(board_ti_get_rev(), "SE", 2)) {
684
			puts("Model: SanCloud BeagleBone Enhanced\n");
685
			name = "SBBE";
686
		}
687
	}
688

  
654 689
	if (board_is_bbg1())
655 690
		name = "BBG1";
691

  
656 692
	set_board_info_env(name);
657 693

  
658 694
	/*
......
788 824
	(defined(CONFIG_SPL_ETH_SUPPORT) && defined(CONFIG_SPL_BUILD))
789 825

  
790 826
#ifdef CONFIG_DRIVER_TI_CPSW
791
	if (board_is_bone() || board_is_bone_lt() ||
827
	if (board_is_bone() || (board_is_bone_lt() && !board_is_bone_lt_enhanced() && !board_is_m10a()) ||
792 828
	    board_is_idk()) {
829
		puts("eth0: MII MODE\n");
793 830
		writel(MII_MODE_ENABLE, &cdev->miisel);
794 831
		cpsw_slaves[0].phy_if = cpsw_slaves[1].phy_if =
795 832
				PHY_INTERFACE_MODE_MII;
796 833
	} else if (board_is_icev2()) {
834
		puts("eth0: icev2: RGMII MODE\n");
797 835
		writel(RMII_MODE_ENABLE | RMII_CHIPCKL_ENABLE, &cdev->miisel);
798 836
		cpsw_slaves[0].phy_if = PHY_INTERFACE_MODE_RMII;
799 837
		cpsw_slaves[1].phy_if = PHY_INTERFACE_MODE_RMII;
800 838
		cpsw_slaves[0].phy_addr = 1;
801 839
		cpsw_slaves[1].phy_addr = 3;
802 840
	} else {
841
		puts("eth0: RGMII MODE\n");
803 842
		writel((RGMII_MODE_ENABLE | RGMII_INT_DELAY), &cdev->miisel);
804 843
		cpsw_slaves[0].phy_if = cpsw_slaves[1].phy_if =
805 844
				PHY_INTERFACE_MODE_RGMII;
......
824 863
#define AR8051_DEBUG_RGMII_CLK_DLY_REG	0x5
825 864
#define AR8051_RGMII_TX_CLK_DLY		0x100
826 865

  
827
	if (board_is_evm_sk() || board_is_gp_evm()) {
866
	if (board_is_evm_sk() || board_is_gp_evm() || board_is_bone_lt_enhanced() || board_is_m10a()) {
828 867
		const char *devname;
829 868
		devname = miiphy_get_current_dev();
830 869

  
board/ti/am335x/board.h
34 34
	return board_ti_is("A335BNLT");
35 35
}
36 36

  
37
static inline int board_is_bbbw(void)
38
{
39
	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BW", 2);
40
}
41

  
42
static inline int board_is_blue(void)
43
{
44
	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BLA", 3);
45
}
46

  
37 47
static inline int board_is_bbg1(void)
38 48
{
39 49
	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BBG1", 4);
40 50
}
41 51

  
52
static inline int board_is_bone_lt_enhanced(void)
53
{
54
	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "SE", 2);
55
}
56

  
57
static inline int board_is_m10a(void)
58
{
59
	return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "M10A", 4);
60
}
61

  
42 62
static inline int board_is_evm_sk(void)
43 63
{
44 64
	return board_ti_is("A335X_SK");
board/ti/am335x/mux.c
381 381
		configure_module_pin_mux(mmc0_pin_mux_sk_evm);
382 382
	} else if (board_is_bone_lt()) {
383 383
		/* Beaglebone LT pinmux */
384
		configure_module_pin_mux(mii1_pin_mux);
384
		if(board_is_bone_lt_enhanced() || board_is_m10a()) {
385
			/* SanCloud Beaglebone LT Enhanced pinmux */
386
			configure_module_pin_mux(rgmii1_pin_mux);
387
		}
388
		else {
389
			/* Beaglebone LT pinmux */
390
			configure_module_pin_mux(mii1_pin_mux);
391
		}
385 392
		configure_module_pin_mux(mmc0_pin_mux);
386 393
#if defined(CONFIG_NAND) && defined(CONFIG_EMMC_BOOT)
387 394
		configure_module_pin_mux(nand_pin_mux);
configs/am335x_boneblack_defconfig
5 5
CONFIG_SPL_STACK_R_ADDR=0x82000000
6 6
CONFIG_DISTRO_DEFAULTS=y
7 7
CONFIG_FIT=y
8
CONFIG_SYS_EXTRA_OPTIONS="EMMC_BOOT"
9 8
CONFIG_SYS_CONSOLE_INFO_QUIET=y
10 9
CONFIG_VERSION_VARIABLE=y
11 10
CONFIG_ARCH_MISC_INIT=y
......
47 46
CONFIG_G_DNL_VENDOR_NUM=0x0451
48 47
CONFIG_G_DNL_PRODUCT_NUM=0xd022
49 48
CONFIG_OF_LIBFDT=y
49
CONFIG_OF_LIBFDT_OVERLAY=y
50
CONFIG_PHY_MSCC=y
configs/am335x_evm_defconfig
1 1
CONFIG_ARM=y
2 2
CONFIG_AM33XX=y
3
# CONFIG_SPL_NAND_SUPPORT is not set
3 4
CONFIG_TARGET_AM335X_EVM=y
4 5
CONFIG_SPL_STACK_R_ADDR=0x82000000
5
CONFIG_DEFAULT_DEVICE_TREE="am335x-evm"
6 6
CONFIG_DISTRO_DEFAULTS=y
7 7
CONFIG_FIT=y
8
CONFIG_SPL_LOAD_FIT=y
9
CONFIG_SYS_EXTRA_OPTIONS="NAND"
10 8
CONFIG_SYS_CONSOLE_INFO_QUIET=y
11 9
CONFIG_VERSION_VARIABLE=y
12 10
CONFIG_ARCH_MISC_INIT=y
13 11
CONFIG_SPL=y
14 12
CONFIG_SPL_STACK_R=y
15
CONFIG_SPL_MTD_SUPPORT=y
16 13
CONFIG_SPL_MUSB_NEW_SUPPORT=y
17 14
CONFIG_SPL_OS_BOOT=y
15
CONFIG_AUTOBOOT_KEYED=y
16
CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
17
CONFIG_AUTOBOOT_DELAY_STR="d"
18
CONFIG_AUTOBOOT_STOP_STR=" "
18 19
# CONFIG_CMD_IMLS is not set
19 20
CONFIG_CMD_ASKENV=y
20 21
# CONFIG_CMD_FLASH is not set
......
24 25
CONFIG_CMD_SPI=y
25 26
CONFIG_CMD_I2C=y
26 27
CONFIG_CMD_USB=y
28
CONFIG_CMD_USB_MASS_STORAGE=y
27 29
CONFIG_CMD_DFU=y
28 30
CONFIG_CMD_GPIO=y
29 31
# CONFIG_CMD_SETEXPR is not set
30 32
CONFIG_CMD_EXT4_WRITE=y
31
CONFIG_OF_CONTROL=y
32
CONFIG_OF_LIST="am335x-evm am335x-bone am335x-boneblack am335x-evmsk am335x-bonegreen am335x-icev2"
33 33
# CONFIG_BLK is not set
34 34
CONFIG_DFU_MMC=y
35
CONFIG_DFU_NAND=y
36 35
CONFIG_DFU_RAM=y
37
CONFIG_DM_I2C=y
38
CONFIG_MISC=y
39
CONFIG_DM_MMC=y
40
# CONFIG_DM_MMC_OPS is not set
41 36
CONFIG_MMC_OMAP_HS=y
42 37
CONFIG_SPI_FLASH=y
43 38
CONFIG_SPI_FLASH_WINBOND=y
44
CONFIG_DM_ETH=y
45 39
CONFIG_SYS_NS16550=y
46
CONFIG_TIMER=y
47
CONFIG_OMAP_TIMER=y
48 40
CONFIG_USB=y
49
CONFIG_DM_USB=y
50 41
CONFIG_USB_MUSB_HOST=y
51 42
CONFIG_USB_MUSB_GADGET=y
52
CONFIG_USB_MUSB_TI=y
53 43
CONFIG_USB_STORAGE=y
54 44
CONFIG_USB_GADGET=y
55 45
CONFIG_USB_GADGET_DOWNLOAD=y
56 46
CONFIG_G_DNL_MANUFACTURER="Texas Instruments"
57 47
CONFIG_G_DNL_VENDOR_NUM=0x0451
58 48
CONFIG_G_DNL_PRODUCT_NUM=0xd022
59
CONFIG_RSA=y
60
CONFIG_SPL_OF_LIBFDT=y
49
CONFIG_OF_LIBFDT=y
50
CONFIG_OF_LIBFDT_OVERLAY=y
51
CONFIG_PHY_MSCC=y
include/configs/am335x_evm.h
18 18

  
19 19
#include <configs/ti_am335x_common.h>
20 20
#include <environment/ti/dfu.h>
21
#define CONFIG_ENV_IS_NOWHERE
21 22

  
22 23
#ifndef CONFIG_SPL_BUILD
23 24
# define CONFIG_TIMESTAMP
......
61 62

  
62 63
#define BOOTENV_DEV_LEGACY_MMC(devtypeu, devtypel, instance) \
63 64
	"bootcmd_" #devtypel #instance "=" \
65
	"gpio clear 56; " \
66
	"gpio clear 55; " \
67
	"gpio clear 54; " \
68
	"gpio set 53; " \
69
	"setenv devtype mmc; " \
64 70
	"setenv mmcdev " #instance"; "\
65
	"setenv bootpart " #instance":2 ; "\
66
	"run mmcboot\0"
71
	"setenv bootpart " #instance":1 ; "\
72
	"run boot\0"
67 73

  
68 74
#define BOOTENV_DEV_NAME_LEGACY_MMC(devtypeu, devtypel, instance) \
69 75
	#devtypel #instance " "
......
80 86
	func(LEGACY_MMC, legacy_mmc, 0) \
81 87
	func(MMC, mmc, 1) \
82 88
	func(LEGACY_MMC, legacy_mmc, 1) \
83
	func(NAND, nand, 0) \
84 89
	func(PXE, pxe, na) \
85 90
	func(DHCP, dhcp, na)
86 91

  
......
134 139
		"run ramargs; " \
135 140
		"bootz ${loadaddr} ${rdaddr} ${fdtaddr}\0" \
136 141
	"findfdt="\
142
		"echo board_name=[$board_name] ...; " \
137 143
		"if test $board_name = A335BONE; then " \
138
			"setenv fdtfile am335x-bone.dtb; fi; " \
144
			"setenv fdtfile am335x-bone.dtb; setenv fdtbase am335x-bone; fi; " \
139 145
		"if test $board_name = A335BNLT; then " \
140
			"setenv fdtfile am335x-boneblack.dtb; fi; " \
146
			"echo board_rev=[$board_rev] ...; " \
147
			"if test $board_rev = GH01; then " \
148
				"setenv fdtfile am335x-boneblack.dtb; setenv fdtbase am335x-boneblack; " \
149
			"elif test $board_rev = BBG1; then " \
150
				"setenv fdtfile am335x-bonegreen.dtb; setenv fdtbase am335x-bonegreen; " \
151
			"elif test $board_rev = BP00; then " \
152
				"setenv fdtfile am335x-pocketbone.dtb; setenv fdtbase am335x-pocketbone; " \
153
			"elif test $board_rev = GW1A; then " \
154
				"setenv fdtfile am335x-bonegreen-wireless.dtb; setenv fdtbase am335x-bonegreen-wireless; " \
155
			"elif test $board_rev = AIA0; then " \
156
				"setenv fdtfile am335x-abbbi.dtb; setenv fdtbase am335x-abbbi; " \
157
			"elif test $board_rev = EIA0; then " \
158
				"setenv fdtfile am335x-boneblack.dtb; setenv fdtbase am335x-boneblack; " \
159
			"elif test $board_rev = SE0A; then " \
160
				"setenv fdtfile am335x-sancloud-bbe.dtb; setenv fdtbase am335x-sancloud-bbe; " \
161
			"elif test $board_rev = ME06; then " \
162
				"setenv fdtfile am335x-bonegreen.dtb; setenv fdtbase am335x-bonegreen; " \
163
			"elif test $board_rev = M10A; then " \
164
				"setenv fdtfile am335x-vsc8531bbb.dtb; setenv fdtbase am335x-vsc8531bbb; " \
165
			"else " \
166
				"setenv fdtfile am335x-boneblack.dtb; setenv fdtbase am335x-boneblack; " \
167
			"fi; " \
168
		"fi; " \
141 169
		"if test $board_name = BBG1; then " \
142
			"setenv fdtfile am335x-bonegreen.dtb; fi; " \
170
			"setenv fdtfile am335x-bonegreen.dtb; setenv fdtbase am335x-bonegreen; fi; " \
171
		"if test $board_name = BBBW; then " \
172
			"setenv fdtfile am335x-boneblack-wireless.dtb; setenv fdtbase am335x-boneblack-wireless; fi; " \
173
		"if test $board_name = BBBL; then " \
174
			"setenv fdtfile am335x-boneblue.dtb; setenv fdtbase am335x-boneblue; fi; " \
175
		"if test $board_name = SBBE; then " \
176
			"setenv fdtfile am335x-sancloud-bbe.dtb; setenv fdtbase am335x-sancloud-bbe; fi; " \
143 177
		"if test $board_name = A33515BB; then " \
144 178
			"setenv fdtfile am335x-evm.dtb; fi; " \
145 179
		"if test $board_name = A335X_SK; then " \
......
147 181
		"if test $board_name = A335_ICE; then " \
148 182
			"setenv fdtfile am335x-icev2.dtb; fi; " \
149 183
		"if test $fdtfile = undefined; then " \
150
			"echo WARNING: Could not determine device tree to use; fi; \0" \
184
			"setenv board_name A335BNLT; " \
185
			"setenv board_rev EMMC; " \
186
			"setenv fdtbase am335x-boneblack-emmc-overlay; " \
187
			"setenv fdtfile am335x-boneblack-emmc-overlay.dtb; " \
188
		"fi; \0" \
151 189
	"init_console=" \
152 190
		"if test $board_name = A335_ICE; then "\
153 191
			"setenv console ttyO3,115200n8;" \
154 192
		"else " \
155 193
			"setenv console ttyO0,115200n8;" \
156 194
		"fi;\0" \
195
	EEWIKI_NFS \
196
	EEWIKI_BOOT \
197
	EEWIKI_UNAME_BOOT \
157 198
	NANDARGS \
158 199
	NETARGS \
159 200
	DFUARGS \
......
273 314
#endif
274 315

  
275 316
#ifdef CONFIG_USB_MUSB_GADGET
276
#define CONFIG_USB_ETHER
277
#define CONFIG_USB_ETH_RNDIS
278
#define CONFIG_USBNET_HOST_ADDR	"de:ad:be:af:00:00"
317
#define CONFIG_USB_FUNCTION_MASS_STORAGE
279 318
#endif /* CONFIG_USB_MUSB_GADGET */
280 319

  
281 320
/*
include/configs/ti_armv7_common.h
54 54
#define DEFAULT_MMC_TI_ARGS \
55 55
	"mmcdev=0\0" \
56 56
	"mmcrootfstype=ext4 rootwait\0" \
57
	"finduuid=part uuid mmc ${bootpart} uuid\0" \
57
	"finduuid=part uuid ${devtype} ${bootpart} uuid\0" \
58 58
	"args_mmc=run finduuid;setenv bootargs console=${console} " \
59
		"${cape_disable} " \
60
		"${cape_enable} " \
61
		"${cape_uboot} " \
62
		"root=PARTUUID=${uuid} ro " \
63
		"rootfstype=${mmcrootfstype} " \
64
		"${cmdline}\0" \
65
	"args_mmc_old=setenv bootargs console=${console} " \
59 66
		"${optargs} " \
60
		"root=PARTUUID=${uuid} rw " \
61
		"rootfstype=${mmcrootfstype}\0" \
62
	"loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \
63
	"bootscript=echo Running bootscript from mmc${mmcdev} ...; " \
67
		"${cape_disable} " \
68
		"${cape_enable} " \
69
		"${cape_uboot} " \
70
		"root=${oldroot} ro " \
71
		"rootfstype=${mmcrootfstype} " \
72
		"${cmdline}\0" \
73
	"args_mmc_uuid=setenv bootargs console=${console} " \
74
		"${optargs} " \
75
		"${cape_disable} " \
76
		"${cape_enable} " \
77
		"${cape_uboot} " \
78
		"root=UUID=${uuid} ro " \
79
		"rootfstype=${mmcrootfstype} " \
80
		"${cmdline}\0" \
81
	"args_uenv_root=setenv bootargs console=${console} " \
82
		"${optargs} " \
83
		"${cape_disable} " \
84
		"${cape_enable} " \
85
		"${cape_uboot} " \
86
		"root=${uenv_root} ro " \
87
		"rootfstype=${mmcrootfstype} " \
88
		"${cmdline}\0" \
89
	"args_netinstall=setenv bootargs ${netinstall_bootargs} " \
90
		"${optargs} " \
91
		"${cape_disable} " \
92
		"${cape_enable} " \
93
		"${cape_uboot} " \
94
		"root=/dev/ram rw " \
95
		"${cmdline}\0" \
96
	"script=boot.scr\0" \
97
	"scriptfile=${script}\0" \
98
	"loadbootscript=load ${devtype} ${bootpart} ${loadaddr} ${scriptfile};\0" \
99
	"bootscript=echo Running bootscript from mmc${bootpart} ...; " \
64 100
		"source ${loadaddr}\0" \
65 101
	"bootenvfile=uEnv.txt\0" \
66
	"importbootenv=echo Importing environment from mmc${mmcdev} ...; " \
102
	"bootenv=uEnv.txt\0" \
103
	"importbootenv=echo Importing environment from ${devtype} ...; " \
67 104
		"env import -t ${loadaddr} ${filesize}\0" \
68
	"loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenvfile}\0" \
105
	"loadbootenv=load ${devtype} ${bootpart} ${loadaddr} ${bootenvfile}\0" \
69 106
	"loadimage=load ${devtype} ${bootpart} ${loadaddr} ${bootdir}/${bootfile}\0" \
70
	"loadfdt=load ${devtype} ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile}\0" \
107
	"loadrd=load ${devtype} ${bootpart} ${rdaddr} ${bootdir}/${rdfile}; setenv rdsize ${filesize}\0" \
108
	"loadfdt=echo loading ${fdtdir}/${fdtfile} ...; load ${devtype} ${bootpart} ${fdtaddr} ${fdtdir}/${fdtfile}\0" \
109
	"failumsboot=echo; echo FAILSAFE: U-Boot UMS (USB Mass Storage) enabled, media now available over the usb slave port ...; " \
110
		"ums 0 ${devtype} 1;\0" \
71 111
	"envboot=mmc dev ${mmcdev}; " \
72 112
		"if mmc rescan; then " \
73 113
			"echo SD/MMC found on device ${mmcdev};" \
......
120 160
	"args_fit=setenv bootargs console=${console} \0" \
121 161
	"loadfit=run args_fit; bootm ${loadaddr}#${fdtfile};\0" \
122 162

  
163
#define EEWIKI_NFS \
164
	"server_ip=192.168.1.100\0" \
165
	"gw_ip=192.168.1.1\0" \
166
	"netmask=255.255.255.0\0" \
167
	"hostname=\0" \
168
	"device=eth0\0" \
169
	"autoconf=off\0" \
170
	"root_dir=/home/userid/targetNFS\0" \
171
	"tftp_dir=\0" \
172
	"nfs_options=,vers=3\0" \
173
	"nfsrootfstype=ext4 rootwait fixrtc\0" \
174
	"nfsargs=setenv bootargs console=${console} " \
175
		"${optargs} " \
176
		"${cape_disable} " \
177
		"${cape_enable} " \
178
		"${cape_uboot} " \
179
		"root=/dev/nfs rw " \
180
		"rootfstype=${nfsrootfstype} " \
181
		"nfsroot=${nfsroot} " \
182
		"ip=${ip} " \
183
		"${cmdline}\0" \
184
	"nfsboot=echo Booting from ${server_ip} ...; " \
185
		"setenv nfsroot ${server_ip}:${root_dir}${nfs_options}; " \
186
		"setenv ip ${client_ip}:${server_ip}:${gw_ip}:${netmask}:${hostname}:${device}:${autoconf}; " \
187
		"setenv autoload no; " \
188
		"setenv serverip ${server_ip}; " \
189
		"setenv ipaddr ${client_ip}; " \
190
		"tftp ${loadaddr} ${tftp_dir}${bootfile}; " \
191
		"tftp ${fdtaddr} ${tftp_dir}dtbs/${fdtfile}; " \
192
		"run nfsargs; " \
193
		"bootz ${loadaddr} - ${fdtaddr}\0" \
194
	"nfsboot_uname_r=echo Booting from ${server_ip} ...; " \
195
		"setenv nfsroot ${server_ip}:${root_dir}${nfs_options}; " \
196
		"setenv ip ${client_ip}:${server_ip}:${gw_ip}:${netmask}:${hostname}:${device}:${autoconf}; " \
197
		"setenv autoload no; " \
198
		"setenv serverip ${server_ip}; " \
199
		"setenv ipaddr ${client_ip}; " \
200
		"tftp ${loadaddr} ${tftp_dir}vmlinuz-${uname_r}; " \
201
		"tftp ${fdtaddr} ${tftp_dir}dtbs/${uname_r}/${fdtfile}; " \
202
		"run nfsargs; " \
203
		"bootz ${loadaddr} - ${fdtaddr}\0" \
204

  
205
#define EEWIKI_BOOT \
206
	"boot=${devtype} dev ${mmcdev}; " \
207
		"if ${devtype} rescan; then " \
208
			"gpio set 54;" \
209
			"setenv bootpart ${mmcdev}:1; " \
210
			"if test -e ${devtype} ${bootpart} /etc/fstab; then " \
211
				"setenv mmcpart 1;" \
212
			"fi; " \
213
			"echo Checking for: /uEnv.txt ...;" \
214
			"if test -e ${devtype} ${bootpart} /uEnv.txt; then " \
215
				"if run loadbootenv; then " \
216
					"gpio set 55;" \
217
					"echo Loaded environment from /uEnv.txt;" \
218
					"run importbootenv;" \
219
				"fi;" \
220
				"if test -n ${cape}; then " \
221
					"if test -e ${devtype} ${bootpart} ${fdtdir}/${fdtbase}-${cape}.dtb; then " \
222
						"setenv fdtfile ${fdtbase}-${cape}.dtb; " \
223
					"fi; " \
224
					"echo using: $fdtfile...; " \
225
				"fi; " \
226
				"echo Checking if uenvcmd is set ...;" \
227
				"if test -n ${uenvcmd}; then " \
228
					"gpio set 56; " \
229
					"echo Running uenvcmd ...;" \
230
					"run uenvcmd;" \
231
				"fi;" \
232
				"echo Checking if client_ip is set ...;" \
233
				"if test -n ${client_ip}; then " \
234
					"if test -n ${dtb}; then " \
235
						"setenv fdtfile ${dtb};" \
236
						"echo using ${fdtfile} ...;" \
237
					"fi;" \
238
					"gpio set 56; " \
239
					"if test -n ${uname_r}; then " \
240
						"echo Running nfsboot_uname_r ...;" \
241
						"run nfsboot_uname_r;" \
242
					"fi;" \
243
					"echo Running nfsboot ...;" \
244
					"run nfsboot;" \
245
				"fi;" \
246
			"fi; " \
247
			"echo Checking for: /${script} ...;" \
248
			"if test -e ${devtype} ${bootpart} /${script}; then " \
249
				"gpio set 55;" \
250
				"setenv scriptfile ${script};" \
251
				"run loadbootscript;" \
252
				"echo Loaded script from ${scriptfile};" \
253
				"gpio set 56; " \
254
				"run bootscript;" \
255
			"fi; " \
256
			"echo Checking for: /boot/${script} ...;" \
257
			"if test -e ${devtype} ${bootpart} /boot/${script}; then " \
258
				"gpio set 55;" \
259
				"setenv scriptfile /boot/${script};" \
260
				"run loadbootscript;" \
261
				"echo Loaded script from ${scriptfile};" \
262
				"gpio set 56; " \
263
				"run bootscript;" \
264
			"fi; " \
265
			"echo Checking for: /boot/uEnv.txt ...;" \
266
			"for i in 1 2 3 4 5 6 7 ; do " \
267
				"setenv mmcpart ${i};" \
268
				"setenv bootpart ${mmcdev}:${mmcpart};" \
269
				"if test -e ${devtype} ${bootpart} /boot/uEnv.txt; then " \
270
					"gpio set 55;" \
271
					"load ${devtype} ${bootpart} ${loadaddr} /boot/uEnv.txt;" \
272
					"env import -t ${loadaddr} ${filesize};" \
273
					"echo Loaded environment from /boot/uEnv.txt;" \
274
					"if test -n ${cape}; then " \
275
						"echo debug: [cape=${cape}] ... ;" \
276
						"setenv fdtfile ${fdtbase}-${cape}.dtb; " \
277
						"echo Using: dtb=${fdtfile} ...;" \
278
					"fi; " \
279
					"if test -n ${dtb}; then " \
280
						"echo debug: [dtb=${dtb}] ... ;" \
281
						"setenv fdtfile ${dtb};" \
282
						"echo Using: dtb=${fdtfile} ...;" \
283
					"fi;" \
284
					"echo Checking if uname_r is set in /boot/uEnv.txt...;" \
285
					"if test -n ${uname_r}; then " \
286
						"gpio set 56; " \
287
						"setenv oldroot /dev/mmcblk${mmcdev}p${mmcpart};" \
288
						"echo Running uname_boot ...;" \
289
						"run uname_boot;" \
290
					"fi;" \
291
				"fi;" \
292
			"done;" \
293
		"fi;\0" \
294

  
295
#define EEWIKI_UNAME_BOOT \
296
	"uname_boot="\
297
		"setenv bootdir /boot; " \
298
		"setenv bootfile vmlinuz-${uname_r}; " \
299
		"if test -e ${devtype} ${bootpart} ${bootdir}/${bootfile}; then " \
300
			"echo loading ${bootdir}/${bootfile} ...; "\
301
			"run loadimage;" \
302
			"setenv fdtdir /boot/dtbs/${uname_r}; " \
303
			"if test -e ${devtype} ${bootpart} ${fdtdir}/${fdtfile}; then " \
304
				"run loadfdt;" \
305
			"else " \
306
				"setenv fdtdir /usr/lib/linux-image-${uname_r}; " \
307
				"if test -e ${devtype} ${bootpart} ${fdtdir}/${fdtfile}; then " \
308
					"run loadfdt;" \
309
				"else " \
310
					"setenv fdtdir /lib/firmware/${uname_r}/device-tree; " \
311
					"if test -e ${devtype} ${bootpart} ${fdtdir}/${fdtfile}; then " \
312
						"run loadfdt;" \
313
					"else " \
314
						"setenv fdtdir /boot/dtb-${uname_r}; " \
315
						"if test -e ${devtype} ${bootpart} ${fdtdir}/${fdtfile}; then " \
316
							"run loadfdt;" \
317
						"else " \
318
							"setenv fdtdir /boot/dtbs; " \
319
							"if test -e ${devtype} ${bootpart} ${fdtdir}/${fdtfile}; then " \
320
								"run loadfdt;" \
321
							"else " \
322
								"setenv fdtdir /boot/dtb; " \
323
								"if test -e ${devtype} ${bootpart} ${fdtdir}/${fdtfile}; then " \
324
									"run loadfdt;" \
325
								"else " \
326
									"setenv fdtdir /boot; " \
327
									"if test -e ${devtype} ${bootpart} ${fdtdir}/${fdtfile}; then " \
328
										"run loadfdt;" \
329
									"else " \
330
										"if test -e ${devtype} ${bootpart} ${fdtfile}; then " \
331
											"run loadfdt;" \
332
										"else " \
333
											"echo; echo unable to find [dtb=${fdtfile}] did you name it correctly? ...; " \
334
											"run failumsboot;" \
335
										"fi;" \
336
									"fi;" \
337
								"fi;" \
338
							"fi;" \
339
						"fi;" \
340
					"fi;" \
341
				"fi;" \
342
			"fi; " \
343
			"setenv rdfile initrd.img-${uname_r}; " \
344
			"if test -e ${devtype} ${bootpart} ${bootdir}/${rdfile}; then " \
345
				"echo loading ${bootdir}/${rdfile} ...; "\
346
				"run loadrd;" \
347
				"if test -n ${netinstall_enable}; then " \
348
					"run args_netinstall; run message;" \
349
					"echo debug: [${bootargs}] ... ;" \
350
					"echo debug: [bootz ${loadaddr} ${rdaddr}:${rdsize} ${fdtaddr}] ... ;" \
351
					"bootz ${loadaddr} ${rdaddr}:${rdsize} ${fdtaddr}; " \
352
				"fi;" \
353
				"if test -n ${uenv_root}; then " \
354
					"run args_uenv_root;" \
355
					"echo debug: [${bootargs}] ... ;" \
356
					"echo debug: [bootz ${loadaddr} ${rdaddr}:${rdsize} ${fdtaddr}] ... ;" \
357
					"bootz ${loadaddr} ${rdaddr}:${rdsize} ${fdtaddr}; " \
358
				"fi;" \
359
				"if test -n ${uuid}; then " \
360
					"run args_mmc_uuid;" \
361
					"echo debug: [${bootargs}] ... ;" \
362
					"echo debug: [bootz ${loadaddr} ${rdaddr}:${rdsize} ${fdtaddr}] ... ;" \
363
					"bootz ${loadaddr} ${rdaddr}:${rdsize} ${fdtaddr}; " \
364
				"fi;" \
365
				"run args_mmc_old;" \
366
				"echo debug: [${bootargs}] ... ;" \
367
				"echo debug: [bootz ${loadaddr} ${rdaddr}:${rdsize} ${fdtaddr}] ... ;" \
368
				"bootz ${loadaddr} ${rdaddr}:${rdsize} ${fdtaddr}; " \
369
			"else " \
370
				"if test -n ${uenv_root}; then " \
371
					"run args_uenv_root;" \
372
					"echo debug: [${bootargs}] ... ;" \
373
					"echo debug: [bootz ${loadaddr} - ${fdtaddr}] ... ;" \
374
					"bootz ${loadaddr} - ${fdtaddr}; " \
375
				"fi;" \
376
				"run args_mmc_old;" \
377
				"echo debug: [${bootargs}] ... ;" \
378
				"echo debug: [bootz ${loadaddr} - ${fdtaddr}] ... ;" \
379
				"bootz ${loadaddr} - ${fdtaddr}; " \
380
			"fi;" \
381
		"fi;\0" \
382

  
123 383
/*
124 384
 * DDR information.  If the CONFIG_NR_DRAM_BANKS is not defined,
125 385
 * we say (for simplicity) that we have 1 bank, always, even when
126
- 
(1-1/5)