[U-Boot-Users] Loading a kernel on MX31ADS using U-boot

Guennadi Liakhovetski g.liakhovetski at gmx.de
Sat Apr 12 10:34:40 CEST 2008


On Fri, 11 Apr 2008, Fabio Estevam wrote:

> I am using U-boot 1.3.2 with the MX31ADS patches
> posted by Guennadi Liakhovetski.
> 
> I would like to load the zImage kernel from Freescale
> Linux BSP via TFTP and mount the rootfs via NFS.

You nead a uImage. Just use the same kernel sources and do make uImage 
instead of zImage.

> Does anyone have an example for doing this? I am not
> sure what address should I use to load the kernel into
> RAM.

Load it to 0x80800000. You can also try the patch below, which will give 
you a better default environment, it shall be submitted to the list soon.

Thanks
Guennadi
---
Guennadi Liakhovetski

[PATCH] mx31ads: Fix default environment

Fix wrong load address in RAM, undefined environment variables,
make the default environment more usable.

Signed-off-by: Guennadi Liakhovetski <lg at denx.de>
---
 include/configs/mx31ads.h |   25 ++++++++++++++++++-------
 1 files changed, 18 insertions(+), 7 deletions(-)

diff --git a/include/configs/mx31ads.h b/include/configs/mx31ads.h
index 78e2545..3ad3883 100644
--- a/include/configs/mx31ads.h
+++ b/include/configs/mx31ads.h
@@ -80,13 +80,24 @@
 #define CONFIG_IPADDR		192.168.23.168
 #define CONFIG_SERVERIP		192.168.23.2
 
-#define	CONFIG_EXTRA_ENV_SETTINGS											\
-	"bootargs_base=setenv bootargs console=ttymxc0,115200\0"							\
-	"bootargs_nfs=setenv bootargs $(bootargs) root=/dev/nfs ip=dhcp nfsroot=$(serverip):$(nfsrootfs),v3,tcp\0"	\
-	"bootcmd=run bootcmd_net\0"											\
-	"bootcmd_net=run bootargs_base bootargs_mtd bootargs_nfs; tftpboot 0x80000000 uImage-mx31; bootm\0"		\
-	"prg_uboot=tftpboot 0x80000000 u-boot-mx31ads.bin; protect off 0xa0000000 0xa001ffff; erase 0xa0000000 0xa001ffff; cp.b 0x80000000 0xa0000000 $(filesize)\0"
-
+#define	CONFIG_EXTRA_ENV_SETTINGS					\
+	"netdev=eth0\0"							\
+	"load_addr=0x80800000\0"					\
+	"uboot_addr=0xa0000000\0"					\
+	"uboot=mx31ads/u-boot.bin\0"					\
+	"kernel=mx31ads/uImage\0"					\
+	"nfsroot=/opt/eldk/arm\0"					\
+	"bootargs_base=setenv bootargs console=ttymxc0,115200\0"	\
+	"bootargs_nfs=setenv bootargs ${bootargs} root=/dev/nfs "	\
+		"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0"	\
+	"bootcmd=run bootcmd_net\0"					\
+	"bootcmd_net=run bootargs_base bootargs_nfs; "			\
+		"tftpboot ${load_addr} ${kernel}; bootm\0"		\
+	"prg_uboot=tftpboot ${load_addr} ${uboot}; "			\
+		"protect off ${uboot_addr} 0xa003ffff; "		\
+		"erase ${uboot_addr} 0xa003ffff; "			\
+		"cp.b ${load_addr} ${uboot_addr} ${filesize}; "		\
+		"setenv filesize; saveenv\0"
 
 #define CONFIG_DRIVER_CS8900	1
 #define CS8900_BASE		0xb4020300
-- 
1.5.4





More information about the U-Boot mailing list