diff mbox

[U-Boot,v3,1/2] vf610twr: Add default environment in line with other Freescale boards

Message ID 1372271486-27136-1-git-send-email-otavio@ossystems.com.br
State Changes Requested
Headers show

Commit Message

Otavio Salvador June 26, 2013, 6:31 p.m. UTC
This adds a default environment which should be able to support both
3.0.15 from Timesys and upcoming 3.11.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Changes in v3:
- add dt boot support
- use ttyLP1 as console
- change loadaddr and sys text as iMX6SL
- NOTE: It needs to be boot tested as I don't have the board

Changes in v2:
- fix console for ttymxc1 (Fabio)

 include/configs/vf610twr.h | 93 ++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 90 insertions(+), 3 deletions(-)

Comments

Alison Wang June 27, 2013, 2:35 a.m. UTC | #1
> -----Original Message-----
> From: Otavio Salvador [mailto:otavio.salvador@gmail.com] On Behalf Of
> Otavio Salvador
> Sent: Thursday, June 27, 2013 2:31 AM
> To: U-Boot Mailing List
> Cc: Otavio Salvador; Stefano Babic; Estevam Fabio-R49496; Wang Huan-
> B18965; Andy Voltz
> Subject: [PATCH v3 1/2] vf610twr: Add default environment in line with
> other Freescale boards
> 
> This adds a default environment which should be able to support both
> 3.0.15 from Timesys and upcoming 3.11.
> 
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
> Changes in v3:
> - add dt boot support
> - use ttyLP1 as console
> - change loadaddr and sys text as iMX6SL
> - NOTE: It needs to be boot tested as I don't have the board
> 
> Changes in v2:
> - fix console for ttymxc1 (Fabio)
> 
>  include/configs/vf610twr.h | 93
> ++++++++++++++++++++++++++++++++++++++++++++--
>  1 file changed, 90 insertions(+), 3 deletions(-)
> 
> diff --git a/include/configs/vf610twr.h b/include/configs/vf610twr.h
> index 77fe893..94c69a6 100644
> --- a/include/configs/vf610twr.h
> +++ b/include/configs/vf610twr.h
> @@ -83,7 +83,95 @@
> 
>  #define CONFIG_BOOTDELAY		3
> 
> -#define CONFIG_SYS_TEXT_BASE		0x3f008000
> +#define CONFIG_LOADADDR			0x82000000
> +#define CONFIG_SYS_TEXT_BASE		0x87800000
[Alison Wang] Why do you change loadaddr and sys text base? After you change the sys text base, the u-boot could not work.
The original sys text base is SRAM address, you change it to DDR address. Here we should use SRAM address.
> +
> +#define CONFIG_EXTRA_ENV_SETTINGS \
> +	"script=boot.scr\0" \
> +	"uimage=uImage\0" \
> +	"console=ttyLP1\0" \
> +	"fdt_high=0xffffffff\0" \
> +	"initrd_high=0xffffffff\0" \
> +	"fdt_file=vf610-twr.dtb\0" \
> +	"fdt_addr=0x81000000\0" \
> +	"boot_fdt=try\0" \
> +	"ip_dyn=yes\0" \
> +	"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
> +	"mmcpart=1\0" \
> +	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
> +	"update_sd_firmware_filename=u-boot.imx\0" \
> +	"update_sd_firmware=" \
> +		"if test ${ip_dyn} = yes; then " \
> +			"setenv get_cmd dhcp; " \
> +		"else " \
> +			"setenv get_cmd tftp; " \
> +		"fi; " \
> +		"if mmc dev ${mmcdev}; then "	\
> +			"if ${get_cmd} ${update_sd_firmware_filename}; then "
> \
> +				"setexpr fw_sz ${filesize} / 0x200; " \
> +				"setexpr fw_sz ${fw_sz} + 1; "	\
> +				"mmc write ${loadaddr} 0x2 ${fw_sz}; " \
> +			"fi; "	\
> +		"fi\0" \
> +	"mmcargs=setenv bootargs console=${console},${baudrate} " \
> +		"root=${mmcroot}\0" \
> +	"loadbootscript=" \
> +		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0"
> \
> +	"bootscript=echo Running bootscript from mmc ...; " \
> +		"source\0" \
> +	"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr}
> ${uimage}\0" \
> +	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr}
> ${fdt_file}\0" \
> +	"mmcboot=echo Booting from mmc ...; " \
> +		"run mmcargs; " \
> +		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then
> " \
> +			"if run loadfdt; then " \
> +				"bootm ${loadaddr} - ${fdt_addr}; " \
> +			"else " \
> +				"if test ${boot_fdt} = try; then " \
> +					"bootm; " \
> +				"else " \
> +					"echo WARN: Cannot load the DT; " \
> +				"fi; " \
> +			"fi; " \
> +		"else " \
> +			"bootm; " \
> +		"fi;\0" \
> +	"netargs=setenv bootargs console=${console},${baudrate} " \
> +		"root=/dev/nfs " \
> +	"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
> +		"netboot=echo Booting from net ...; " \
> +		"run netargs; " \
> +		"if test ${ip_dyn} = yes; then " \
> +			"setenv get_cmd dhcp; " \
> +		"else " \
> +			"setenv get_cmd tftp; " \
> +		"fi; " \
> +		"${get_cmd} ${uimage}; " \
> +		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then
> " \
> +			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
> +				"bootm ${loadaddr} - ${fdt_addr}; " \
> +			"else " \
> +				"if test ${boot_fdt} = try; then " \
> +					"bootm; " \
> +				"else " \
> +					"echo WARN: Cannot load the DT; " \
> +				"fi; " \
> +			"fi; " \
> +		"else " \
> +			"bootm; " \
> +		"fi;\0"
> +
> +#define CONFIG_BOOTCOMMAND \
> +	   "mmc dev ${mmcdev}; if mmc rescan; then " \
> +		   "if run loadbootscript; then " \
> +			   "run bootscript; " \
> +		   "else " \
> +			   "if run loaduimage; then " \
> +				   "run mmcboot; " \
> +			   "else run netboot; " \
> +			   "fi; " \
> +		   "fi; " \
> +	   "else run netboot; fi"
> 
>  /* Miscellaneous configurable options */
>  #define CONFIG_SYS_LONGHELP		/* undef to save memory */
> @@ -101,8 +189,7 @@
>  #define CONFIG_SYS_MEMTEST_START	0x80010000
>  #define CONFIG_SYS_MEMTEST_END		0x87C00000
> 
> -#define CONFIG_SYS_LOAD_ADDR		0x80010000
> -
> +#define CONFIG_SYS_LOAD_ADDR		CONFIG_LOADADDR
>  #define CONFIG_SYS_HZ			1000
> 
>  /*
> --
> 1.8.3.1
>
Alison Wang June 27, 2013, 7:45 a.m. UTC | #2
Hi, Otavio,

> -----Original Message-----
> From: u-boot-bounces@lists.denx.de [mailto:u-boot-bounces@lists.denx.de]
> On Behalf Of Wang Huan-B18965
> Sent: Thursday, June 27, 2013 10:36 AM
> To: Otavio Salvador; U-Boot Mailing List
> Cc: Estevam Fabio-R49496
> Subject: Re: [U-Boot] [PATCH v3 1/2] vf610twr: Add default environment
> in line with other Freescale boards
> 
> 
> > -----Original Message-----
> > From: Otavio Salvador [mailto:otavio.salvador@gmail.com] On Behalf Of
> > Otavio Salvador
> > Sent: Thursday, June 27, 2013 2:31 AM
> > To: U-Boot Mailing List
> > Cc: Otavio Salvador; Stefano Babic; Estevam Fabio-R49496; Wang Huan-
> > B18965; Andy Voltz
> > Subject: [PATCH v3 1/2] vf610twr: Add default environment in line
> with
> > other Freescale boards
> >
> > This adds a default environment which should be able to support both
> > 3.0.15 from Timesys and upcoming 3.11.
> >
> > Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> > ---
> > Changes in v3:
> > - add dt boot support
> > - use ttyLP1 as console
> > - change loadaddr and sys text as iMX6SL
> > - NOTE: It needs to be boot tested as I don't have the board
> >
> > Changes in v2:
> > - fix console for ttymxc1 (Fabio)
> >
> >  include/configs/vf610twr.h | 93
> > ++++++++++++++++++++++++++++++++++++++++++++--
> >  1 file changed, 90 insertions(+), 3 deletions(-)
> >
> > diff --git a/include/configs/vf610twr.h b/include/configs/vf610twr.h
> > index 77fe893..94c69a6 100644
> > --- a/include/configs/vf610twr.h
> > +++ b/include/configs/vf610twr.h
> > @@ -83,7 +83,95 @@
> >
> >  #define CONFIG_BOOTDELAY		3
> >
> > -#define CONFIG_SYS_TEXT_BASE		0x3f008000
> > +#define CONFIG_LOADADDR			0x82000000
> > +#define CONFIG_SYS_TEXT_BASE		0x87800000
> [Alison Wang] Why do you change loadaddr and sys text base? After you
> change the sys text base, the u-boot could not work.
> The original sys text base is SRAM address, you change it to DDR
> address. Here we should use SRAM address.
[Alison Wang] As there are large internal SRAM for VF610, the current u-boot starts from internal SRAM instead of DDR. So in the current boot mechanism for VF610, the sys text base should be SRAM address.
> > +
> > +#define CONFIG_EXTRA_ENV_SETTINGS \
> > +	"script=boot.scr\0" \
> > +	"uimage=uImage\0" \
> > +	"console=ttyLP1\0" \
> > +	"fdt_high=0xffffffff\0" \
> > +	"initrd_high=0xffffffff\0" \
> > +	"fdt_file=vf610-twr.dtb\0" \
> > +	"fdt_addr=0x81000000\0" \
> > +	"boot_fdt=try\0" \
> > +	"ip_dyn=yes\0" \
> > +	"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
> > +	"mmcpart=1\0" \
> > +	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
> > +	"update_sd_firmware_filename=u-boot.imx\0" \
> > +	"update_sd_firmware=" \
> > +		"if test ${ip_dyn} = yes; then " \
> > +			"setenv get_cmd dhcp; " \
> > +		"else " \
> > +			"setenv get_cmd tftp; " \
> > +		"fi; " \
> > +		"if mmc dev ${mmcdev}; then "	\
> > +			"if ${get_cmd} ${update_sd_firmware_filename}; then "
> > \
> > +				"setexpr fw_sz ${filesize} / 0x200; " \
> > +				"setexpr fw_sz ${fw_sz} + 1; "	\
> > +				"mmc write ${loadaddr} 0x2 ${fw_sz}; " \
> > +			"fi; "	\
> > +		"fi\0" \
> > +	"mmcargs=setenv bootargs console=${console},${baudrate} " \
> > +		"root=${mmcroot}\0" \
> > +	"loadbootscript=" \
> > +		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0"
> > \
> > +	"bootscript=echo Running bootscript from mmc ...; " \
> > +		"source\0" \
> > +	"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr}
> > ${uimage}\0" \
> > +	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr}
> > ${fdt_file}\0" \
> > +	"mmcboot=echo Booting from mmc ...; " \
> > +		"run mmcargs; " \
> > +		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then
> > " \
> > +			"if run loadfdt; then " \
> > +				"bootm ${loadaddr} - ${fdt_addr}; " \
> > +			"else " \
> > +				"if test ${boot_fdt} = try; then " \
> > +					"bootm; " \
> > +				"else " \
> > +					"echo WARN: Cannot load the DT; " \
> > +				"fi; " \
> > +			"fi; " \
> > +		"else " \
> > +			"bootm; " \
> > +		"fi;\0" \
> > +	"netargs=setenv bootargs console=${console},${baudrate} " \
> > +		"root=/dev/nfs " \
> > +	"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
> > +		"netboot=echo Booting from net ...; " \
> > +		"run netargs; " \
> > +		"if test ${ip_dyn} = yes; then " \
> > +			"setenv get_cmd dhcp; " \
> > +		"else " \
> > +			"setenv get_cmd tftp; " \
> > +		"fi; " \
> > +		"${get_cmd} ${uimage}; " \
> > +		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then
> > " \
> > +			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
> > +				"bootm ${loadaddr} - ${fdt_addr}; " \
> > +			"else " \
> > +				"if test ${boot_fdt} = try; then " \
> > +					"bootm; " \
> > +				"else " \
> > +					"echo WARN: Cannot load the DT; " \
> > +				"fi; " \
> > +			"fi; " \
> > +		"else " \
> > +			"bootm; " \
> > +		"fi;\0"
> > +
> > +#define CONFIG_BOOTCOMMAND \
> > +	   "mmc dev ${mmcdev}; if mmc rescan; then " \
> > +		   "if run loadbootscript; then " \
> > +			   "run bootscript; " \
> > +		   "else " \
> > +			   "if run loaduimage; then " \
> > +				   "run mmcboot; " \
> > +			   "else run netboot; " \
> > +			   "fi; " \
> > +		   "fi; " \
> > +	   "else run netboot; fi"
[Alison Wang] I am ok with the default environment changes.
> >
> >  /* Miscellaneous configurable options */
> >  #define CONFIG_SYS_LONGHELP		/* undef to save memory */
> > @@ -101,8 +189,7 @@
> >  #define CONFIG_SYS_MEMTEST_START	0x80010000
> >  #define CONFIG_SYS_MEMTEST_END		0x87C00000
> >
> > -#define CONFIG_SYS_LOAD_ADDR		0x80010000
> > -
> > +#define CONFIG_SYS_LOAD_ADDR		CONFIG_LOADADDR
> >  #define CONFIG_SYS_HZ			1000
> >
> >  /*
> > --
> > 1.8.3.1
> >
> 
> 
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
diff mbox

Patch

diff --git a/include/configs/vf610twr.h b/include/configs/vf610twr.h
index 77fe893..94c69a6 100644
--- a/include/configs/vf610twr.h
+++ b/include/configs/vf610twr.h
@@ -83,7 +83,95 @@ 
 
 #define CONFIG_BOOTDELAY		3
 
-#define CONFIG_SYS_TEXT_BASE		0x3f008000
+#define CONFIG_LOADADDR			0x82000000
+#define CONFIG_SYS_TEXT_BASE		0x87800000
+
+#define CONFIG_EXTRA_ENV_SETTINGS \
+	"script=boot.scr\0" \
+	"uimage=uImage\0" \
+	"console=ttyLP1\0" \
+	"fdt_high=0xffffffff\0" \
+	"initrd_high=0xffffffff\0" \
+	"fdt_file=vf610-twr.dtb\0" \
+	"fdt_addr=0x81000000\0" \
+	"boot_fdt=try\0" \
+	"ip_dyn=yes\0" \
+	"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
+	"mmcpart=1\0" \
+	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
+	"update_sd_firmware_filename=u-boot.imx\0" \
+	"update_sd_firmware=" \
+		"if test ${ip_dyn} = yes; then " \
+			"setenv get_cmd dhcp; " \
+		"else " \
+			"setenv get_cmd tftp; " \
+		"fi; " \
+		"if mmc dev ${mmcdev}; then "	\
+			"if ${get_cmd} ${update_sd_firmware_filename}; then " \
+				"setexpr fw_sz ${filesize} / 0x200; " \
+				"setexpr fw_sz ${fw_sz} + 1; "	\
+				"mmc write ${loadaddr} 0x2 ${fw_sz}; " \
+			"fi; "	\
+		"fi\0" \
+	"mmcargs=setenv bootargs console=${console},${baudrate} " \
+		"root=${mmcroot}\0" \
+	"loadbootscript=" \
+		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
+	"bootscript=echo Running bootscript from mmc ...; " \
+		"source\0" \
+	"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
+	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
+	"mmcboot=echo Booting from mmc ...; " \
+		"run mmcargs; " \
+		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
+			"if run loadfdt; then " \
+				"bootm ${loadaddr} - ${fdt_addr}; " \
+			"else " \
+				"if test ${boot_fdt} = try; then " \
+					"bootm; " \
+				"else " \
+					"echo WARN: Cannot load the DT; " \
+				"fi; " \
+			"fi; " \
+		"else " \
+			"bootm; " \
+		"fi;\0" \
+	"netargs=setenv bootargs console=${console},${baudrate} " \
+		"root=/dev/nfs " \
+	"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
+		"netboot=echo Booting from net ...; " \
+		"run netargs; " \
+		"if test ${ip_dyn} = yes; then " \
+			"setenv get_cmd dhcp; " \
+		"else " \
+			"setenv get_cmd tftp; " \
+		"fi; " \
+		"${get_cmd} ${uimage}; " \
+		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
+			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
+				"bootm ${loadaddr} - ${fdt_addr}; " \
+			"else " \
+				"if test ${boot_fdt} = try; then " \
+					"bootm; " \
+				"else " \
+					"echo WARN: Cannot load the DT; " \
+				"fi; " \
+			"fi; " \
+		"else " \
+			"bootm; " \
+		"fi;\0"
+
+#define CONFIG_BOOTCOMMAND \
+	   "mmc dev ${mmcdev}; if mmc rescan; then " \
+		   "if run loadbootscript; then " \
+			   "run bootscript; " \
+		   "else " \
+			   "if run loaduimage; then " \
+				   "run mmcboot; " \
+			   "else run netboot; " \
+			   "fi; " \
+		   "fi; " \
+	   "else run netboot; fi"
 
 /* Miscellaneous configurable options */
 #define CONFIG_SYS_LONGHELP		/* undef to save memory */
@@ -101,8 +189,7 @@ 
 #define CONFIG_SYS_MEMTEST_START	0x80010000
 #define CONFIG_SYS_MEMTEST_END		0x87C00000
 
-#define CONFIG_SYS_LOAD_ADDR		0x80010000
-
+#define CONFIG_SYS_LOAD_ADDR		CONFIG_LOADADDR
 #define CONFIG_SYS_HZ			1000
 
 /*