Message ID | 1358968329-15341-1-git-send-email-otavio@ossystems.com.br |
---|---|
State | Not Applicable |
Headers | show |
Dear Otavio Salvador, > This adds a default environment with support for MMC booting. > > Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> > --- > Changes in v5: > - Remove duplicate environment setting > - Improve commit log > > Changes in v4: None > Changes in v3: None > Changes in v2: None > > include/configs/mx23_olinuxino.h | 74 > ++++++++++++++++++++++++++++++++++++---- 1 file changed, 67 insertions(+), > 7 deletions(-) > > diff --git a/include/configs/mx23_olinuxino.h > b/include/configs/mx23_olinuxino.h index bc63481..fc859b3 100644 > --- a/include/configs/mx23_olinuxino.h > +++ b/include/configs/mx23_olinuxino.h > @@ -114,6 +114,14 @@ > /* > * MMC Driver > */ > +#define CONFIG_ENV_IS_IN_MMC > +#define CONFIG_ENV_OVERWRITE > +#ifdef CONFIG_ENV_IS_IN_MMC > +#define CONFIG_ENV_OFFSET (256 * 1024) > +#define CONFIG_ENV_SIZE (16 * 1024) > +#define CONFIG_SYS_MMC_ENV_DEV 0 > +#endif The stuff aboce goes into ENV section below > +#define CONFIG_CMD_SAVEENV CMD goes under CMD section (is this really even needed? saveenv is there all the time anyway) > #ifdef CONFIG_CMD_MMC > #define CONFIG_MMC > #define CONFIG_BOUNCE_BUFFER > @@ -127,21 +135,73 @@ > #define CONFIG_APBH_DMA > > /* > - * ENV -- nowhere so far > - */ > -#define CONFIG_ENV_SIZE (16 * 1024) > -#define CONFIG_ENV_IS_NOWHERE > - > -/* > * Boot Linux > */ > #define CONFIG_CMDLINE_TAG > #define CONFIG_SETUP_MEMORY_TAGS > #define CONFIG_BOOTDELAY 3 > #define CONFIG_BOOTFILE "uImage" > -#define CONFIG_BOOTARGS "console=ttyAMA0,115200n8 " > #define CONFIG_LOADADDR 0x42000000 > #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR > #define CONFIG_OF_LIBFDT > > +/* > + * Extra Environments > + */ > +#define CONFIG_EXTRA_ENV_SETTINGS \ > + "update_sd_firmware_filename=u-boot.sd\0" \ This is still broken, mxsboot doesn't work on mx23. > + "update_sd_firmware=" /* Update the SD firmware partition */ \ > + "if mmc rescan ; then " \ > + "if tftp ${update_sd_firmware_filename} ; then " \ > + "setexpr fw_sz ${filesize} / 0x200 ; " /* SD block size */ \ > + "setexpr fw_sz ${fw_sz} + 1 ; " \ > + "mmc write ${loadaddr} 0x800 ${fw_sz} ; " \ > + "fi ; " \ > + "fi\0" \ > + "script=boot.scr\0" \ > + "uimage=uImage\0" \ > + "console=ttyAMA0\0" \ > + "fdt_file=imx23-olinuxino.dtb\0" \ > + "fdt_addr=0x41000000\0" \ > + "boot_fdt=try\0" \ > + "mmcdev=0\0" \ > + "mmcpart=2\0" \ > + "mmcroot=/dev/mmcblk0p3 rw rootwait\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" > + > +#define CONFIG_BOOTCOMMAND \ > + "mmc dev ${mmcdev}; if mmc rescan; then " \ > + "if run loadbootscript; then " \ > + "run bootscript; " \ > + "else " \ > + "if run loaduimage; then " \ > + "run mmcboot; " \ > + "else " \ > + "echo ERR: Fail to boot from MMC; " \ > + "fi; " \ > + "fi; " \ > + "else exit; fi" > + > #endif /* __MX23_OLINUXINO_CONFIG_H__ */
On Wed, Jan 23, 2013 at 5:12 PM, Marek Vasut <marex@denx.de> wrote: > Dear Otavio Salvador, > >> This adds a default environment with support for MMC booting. >> >> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> >> --- >> Changes in v5: >> - Remove duplicate environment setting >> - Improve commit log >> >> Changes in v4: None >> Changes in v3: None >> Changes in v2: None >> >> include/configs/mx23_olinuxino.h | 74 >> ++++++++++++++++++++++++++++++++++++---- 1 file changed, 67 insertions(+), >> 7 deletions(-) >> >> diff --git a/include/configs/mx23_olinuxino.h >> b/include/configs/mx23_olinuxino.h index bc63481..fc859b3 100644 >> --- a/include/configs/mx23_olinuxino.h >> +++ b/include/configs/mx23_olinuxino.h >> @@ -114,6 +114,14 @@ >> /* >> * MMC Driver >> */ >> +#define CONFIG_ENV_IS_IN_MMC >> +#define CONFIG_ENV_OVERWRITE >> +#ifdef CONFIG_ENV_IS_IN_MMC >> +#define CONFIG_ENV_OFFSET (256 * 1024) >> +#define CONFIG_ENV_SIZE (16 * 1024) >> +#define CONFIG_SYS_MMC_ENV_DEV 0 >> +#endif > > The stuff aboce goes into ENV section below > >> +#define CONFIG_CMD_SAVEENV > > CMD goes under CMD section (is this really even needed? saveenv is there all the > time anyway) Indeed this is not need; I removed it. >> #ifdef CONFIG_CMD_MMC >> #define CONFIG_MMC >> #define CONFIG_BOUNCE_BUFFER >> @@ -127,21 +135,73 @@ >> #define CONFIG_APBH_DMA >> >> /* >> - * ENV -- nowhere so far >> - */ >> -#define CONFIG_ENV_SIZE (16 * 1024) >> -#define CONFIG_ENV_IS_NOWHERE >> - >> -/* >> * Boot Linux >> */ >> #define CONFIG_CMDLINE_TAG >> #define CONFIG_SETUP_MEMORY_TAGS >> #define CONFIG_BOOTDELAY 3 >> #define CONFIG_BOOTFILE "uImage" >> -#define CONFIG_BOOTARGS "console=ttyAMA0,115200n8 " >> #define CONFIG_LOADADDR 0x42000000 >> #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR >> #define CONFIG_OF_LIBFDT >> >> +/* >> + * Extra Environments >> + */ >> +#define CONFIG_EXTRA_ENV_SETTINGS \ >> + "update_sd_firmware_filename=u-boot.sd\0" \ > > This is still broken, mxsboot doesn't work on mx23. Well, yes but I see no reason to not put this here as it will work when mxsboot is done. I can hold it if you prefer... >> + "update_sd_firmware=" /* Update the SD firmware partition */ \ >> + "if mmc rescan ; then " \ >> + "if tftp ${update_sd_firmware_filename} ; then " \ >> + "setexpr fw_sz ${filesize} / 0x200 ; " /* SD block size */ \ >> + "setexpr fw_sz ${fw_sz} + 1 ; " \ >> + "mmc write ${loadaddr} 0x800 ${fw_sz} ; " \ >> + "fi ; " \ >> + "fi\0" \ >> + "script=boot.scr\0" \ >> + "uimage=uImage\0" \ >> + "console=ttyAMA0\0" \ >> + "fdt_file=imx23-olinuxino.dtb\0" \ >> + "fdt_addr=0x41000000\0" \ >> + "boot_fdt=try\0" \ >> + "mmcdev=0\0" \ >> + "mmcpart=2\0" \ >> + "mmcroot=/dev/mmcblk0p3 rw rootwait\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" >> + >> +#define CONFIG_BOOTCOMMAND \ >> + "mmc dev ${mmcdev}; if mmc rescan; then " \ >> + "if run loadbootscript; then " \ >> + "run bootscript; " \ >> + "else " \ >> + "if run loaduimage; then " \ >> + "run mmcboot; " \ >> + "else " \ >> + "echo ERR: Fail to boot from MMC; " \ >> + "fi; " \ >> + "fi; " \ >> + "else exit; fi" >> + >> #endif /* __MX23_OLINUXINO_CONFIG_H__ */ -- Otavio Salvador O.S. Systems E-mail: otavio@ossystems.com.br http://www.ossystems.com.br Mobile: +55 53 9981-7854 http://projetos.ossystems.com.br
Dear Otavio Salvador, > On Wed, Jan 23, 2013 at 5:12 PM, Marek Vasut <marex@denx.de> wrote: > > Dear Otavio Salvador, > > > >> This adds a default environment with support for MMC booting. > >> > >> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> > >> --- > >> Changes in v5: > >> - Remove duplicate environment setting > >> - Improve commit log > >> > >> Changes in v4: None > >> Changes in v3: None > >> Changes in v2: None > >> > >> include/configs/mx23_olinuxino.h | 74 > >> > >> ++++++++++++++++++++++++++++++++++++---- 1 file changed, 67 > >> insertions(+), 7 deletions(-) > >> > >> diff --git a/include/configs/mx23_olinuxino.h > >> b/include/configs/mx23_olinuxino.h index bc63481..fc859b3 100644 > >> --- a/include/configs/mx23_olinuxino.h > >> +++ b/include/configs/mx23_olinuxino.h > >> @@ -114,6 +114,14 @@ > >> > >> /* > >> > >> * MMC Driver > >> */ > >> > >> +#define CONFIG_ENV_IS_IN_MMC > >> +#define CONFIG_ENV_OVERWRITE > >> +#ifdef CONFIG_ENV_IS_IN_MMC > >> +#define CONFIG_ENV_OFFSET (256 * 1024) > >> +#define CONFIG_ENV_SIZE (16 * 1024) > >> +#define CONFIG_SYS_MMC_ENV_DEV 0 > >> +#endif > > > > The stuff aboce goes into ENV section below > > > >> +#define CONFIG_CMD_SAVEENV > > > > CMD goes under CMD section (is this really even needed? saveenv is there > > all the time anyway) > > Indeed this is not need; I removed it. > > >> #ifdef CONFIG_CMD_MMC > >> #define CONFIG_MMC > >> #define CONFIG_BOUNCE_BUFFER > >> > >> @@ -127,21 +135,73 @@ > >> > >> #define CONFIG_APBH_DMA > >> > >> /* > >> > >> - * ENV -- nowhere so far > >> - */ > >> -#define CONFIG_ENV_SIZE (16 * 1024) > >> -#define CONFIG_ENV_IS_NOWHERE > >> - > >> -/* > >> > >> * Boot Linux > >> */ > >> > >> #define CONFIG_CMDLINE_TAG > >> #define CONFIG_SETUP_MEMORY_TAGS > >> #define CONFIG_BOOTDELAY 3 > >> #define CONFIG_BOOTFILE "uImage" > >> > >> -#define CONFIG_BOOTARGS "console=ttyAMA0,115200n8 " > >> > >> #define CONFIG_LOADADDR 0x42000000 > >> #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR > >> #define CONFIG_OF_LIBFDT > >> > >> +/* > >> + * Extra Environments > >> + */ > >> +#define CONFIG_EXTRA_ENV_SETTINGS \ > >> + "update_sd_firmware_filename=u-boot.sd\0" \ > > > > This is still broken, mxsboot doesn't work on mx23. > > Well, yes but I see no reason to not put this here as it will work > when mxsboot is done. I can hold it if you prefer... You're adding broken code -- hold it of course. Or split this into two patches Best regards, Marek Vasut
diff --git a/include/configs/mx23_olinuxino.h b/include/configs/mx23_olinuxino.h index bc63481..fc859b3 100644 --- a/include/configs/mx23_olinuxino.h +++ b/include/configs/mx23_olinuxino.h @@ -114,6 +114,14 @@ /* * MMC Driver */ +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_ENV_OVERWRITE +#ifdef CONFIG_ENV_IS_IN_MMC +#define CONFIG_ENV_OFFSET (256 * 1024) +#define CONFIG_ENV_SIZE (16 * 1024) +#define CONFIG_SYS_MMC_ENV_DEV 0 +#endif +#define CONFIG_CMD_SAVEENV #ifdef CONFIG_CMD_MMC #define CONFIG_MMC #define CONFIG_BOUNCE_BUFFER @@ -127,21 +135,73 @@ #define CONFIG_APBH_DMA /* - * ENV -- nowhere so far - */ -#define CONFIG_ENV_SIZE (16 * 1024) -#define CONFIG_ENV_IS_NOWHERE - -/* * Boot Linux */ #define CONFIG_CMDLINE_TAG #define CONFIG_SETUP_MEMORY_TAGS #define CONFIG_BOOTDELAY 3 #define CONFIG_BOOTFILE "uImage" -#define CONFIG_BOOTARGS "console=ttyAMA0,115200n8 " #define CONFIG_LOADADDR 0x42000000 #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR #define CONFIG_OF_LIBFDT +/* + * Extra Environments + */ +#define CONFIG_EXTRA_ENV_SETTINGS \ + "update_sd_firmware_filename=u-boot.sd\0" \ + "update_sd_firmware=" /* Update the SD firmware partition */ \ + "if mmc rescan ; then " \ + "if tftp ${update_sd_firmware_filename} ; then " \ + "setexpr fw_sz ${filesize} / 0x200 ; " /* SD block size */ \ + "setexpr fw_sz ${fw_sz} + 1 ; " \ + "mmc write ${loadaddr} 0x800 ${fw_sz} ; " \ + "fi ; " \ + "fi\0" \ + "script=boot.scr\0" \ + "uimage=uImage\0" \ + "console=ttyAMA0\0" \ + "fdt_file=imx23-olinuxino.dtb\0" \ + "fdt_addr=0x41000000\0" \ + "boot_fdt=try\0" \ + "mmcdev=0\0" \ + "mmcpart=2\0" \ + "mmcroot=/dev/mmcblk0p3 rw rootwait\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" + +#define CONFIG_BOOTCOMMAND \ + "mmc dev ${mmcdev}; if mmc rescan; then " \ + "if run loadbootscript; then " \ + "run bootscript; " \ + "else " \ + "if run loaduimage; then " \ + "run mmcboot; " \ + "else " \ + "echo ERR: Fail to boot from MMC; " \ + "fi; " \ + "fi; " \ + "else exit; fi" + #endif /* __MX23_OLINUXINO_CONFIG_H__ */
This adds a default environment with support for MMC booting. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> --- Changes in v5: - Remove duplicate environment setting - Improve commit log Changes in v4: None Changes in v3: None Changes in v2: None include/configs/mx23_olinuxino.h | 74 ++++++++++++++++++++++++++++++++++++---- 1 file changed, 67 insertions(+), 7 deletions(-)