diff --git a/configs/pwa7200_defconfig b/configs/pwa7200_defconfig index 9d22ab2412..004647e98c 100644 --- a/configs/pwa7200_defconfig +++ b/configs/pwa7200_defconfig @@ -6,11 +6,11 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_NR_DRAM_BANKS=1 CONFIG_ENV_SIZE=0x4000 -CONFIG_ENV_OFFSET=0x40000 CONFIG_SPL_TEXT_BASE=0x00001000 CONFIG_TARGET_PWA7200=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y +CONFIG_USE_PREBOOT=y CONFIG_DEFAULT_FDT_FILE="imx28-pwa7200.dtb" # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_ARCH_MISC_INIT=y @@ -25,7 +25,6 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_ENV_OVERWRITE=y -CONFIG_ENV_IS_IN_MMC=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y # CONFIG_NET is not set CONFIG_MXS_GPIO=y diff --git a/configs/pwg4200_defconfig b/configs/pwg4200_defconfig index 0c0a91d3c7..611ecd1275 100644 --- a/configs/pwg4200_defconfig +++ b/configs/pwg4200_defconfig @@ -6,11 +6,11 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_NR_DRAM_BANKS=1 CONFIG_ENV_SIZE=0x4000 -CONFIG_ENV_OFFSET=0x40000 CONFIG_SPL_TEXT_BASE=0x00001000 CONFIG_TARGET_PWG4200=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y +CONFIG_USE_PREBOOT=y CONFIG_DEFAULT_FDT_FILE="imx28-pwg4200.dtb" # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_ARCH_MISC_INIT=y @@ -25,7 +25,6 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_ENV_OVERWRITE=y -CONFIG_ENV_IS_IN_MMC=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y # CONFIG_NET is not set CONFIG_MXS_GPIO=y diff --git a/configs/pwg5300_defconfig b/configs/pwg5300_defconfig index 5cc9265d73..63bcac9fee 100644 --- a/configs/pwg5300_defconfig +++ b/configs/pwg5300_defconfig @@ -6,11 +6,11 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_NR_DRAM_BANKS=1 CONFIG_ENV_SIZE=0x4000 -CONFIG_ENV_OFFSET=0x40000 CONFIG_SPL_TEXT_BASE=0x00001000 CONFIG_TARGET_PWG5300=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y +CONFIG_USE_PREBOOT=y CONFIG_DEFAULT_FDT_FILE="imx28-pwg5300.dtb" # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_ARCH_MISC_INIT=y @@ -25,7 +25,6 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_ENV_OVERWRITE=y -CONFIG_ENV_IS_IN_MMC=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y # CONFIG_NET is not set CONFIG_MXS_GPIO=y diff --git a/configs/pwsh1_defconfig b/configs/pwsh1_defconfig index e9b107e3bc..6b6ec451ec 100644 --- a/configs/pwsh1_defconfig +++ b/configs/pwsh1_defconfig @@ -6,11 +6,11 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_NR_DRAM_BANKS=1 CONFIG_ENV_SIZE=0x4000 -CONFIG_ENV_OFFSET=0x40000 CONFIG_SPL_TEXT_BASE=0x00001000 CONFIG_TARGET_PWSH1=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y +CONFIG_USE_PREBOOT=y CONFIG_DEFAULT_FDT_FILE="imx28-pwsh1.dtb" # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_ARCH_MISC_INIT=y @@ -25,7 +25,6 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_ENV_OVERWRITE=y -CONFIG_ENV_IS_IN_MMC=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y # CONFIG_NET is not set CONFIG_MXS_GPIO=y diff --git a/configs/pwsh2_defconfig b/configs/pwsh2_defconfig index ccd6a26118..7ac135c24a 100644 --- a/configs/pwsh2_defconfig +++ b/configs/pwsh2_defconfig @@ -6,11 +6,11 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_NR_DRAM_BANKS=1 CONFIG_ENV_SIZE=0x4000 -CONFIG_ENV_OFFSET=0x40000 CONFIG_SPL_TEXT_BASE=0x00001000 CONFIG_TARGET_PWSH2=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y +CONFIG_USE_PREBOOT=y CONFIG_DEFAULT_FDT_FILE="imx28-pwsh2.dtb" # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_ARCH_MISC_INIT=y @@ -25,7 +25,6 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_ENV_OVERWRITE=y -CONFIG_ENV_IS_IN_MMC=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y # CONFIG_NET is not set CONFIG_MXS_GPIO=y diff --git a/configs/pwsh3_defconfig b/configs/pwsh3_defconfig index bef306551d..6afd9fd68f 100644 --- a/configs/pwsh3_defconfig +++ b/configs/pwsh3_defconfig @@ -6,11 +6,11 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_NR_DRAM_BANKS=1 CONFIG_ENV_SIZE=0x4000 -CONFIG_ENV_OFFSET=0x40000 CONFIG_SPL_TEXT_BASE=0x00001000 CONFIG_TARGET_PWSH3=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y +CONFIG_USE_PREBOOT=y CONFIG_DEFAULT_FDT_FILE="imx28-pwsh3.dtb" # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_ARCH_MISC_INIT=y @@ -25,7 +25,6 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_ENV_OVERWRITE=y -CONFIG_ENV_IS_IN_MMC=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y # CONFIG_NET is not set CONFIG_MXS_GPIO=y diff --git a/configs/pwsh4_defconfig b/configs/pwsh4_defconfig index 7141d86bcf..e711909061 100644 --- a/configs/pwsh4_defconfig +++ b/configs/pwsh4_defconfig @@ -6,11 +6,11 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_NR_DRAM_BANKS=1 CONFIG_ENV_SIZE=0x4000 -CONFIG_ENV_OFFSET=0x40000 CONFIG_SPL_TEXT_BASE=0x00001000 CONFIG_TARGET_PWSH4=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y +CONFIG_USE_PREBOOT=y CONFIG_DEFAULT_FDT_FILE="imx28-pwsh4.dtb" # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_ARCH_MISC_INIT=y @@ -25,7 +25,6 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_ENV_OVERWRITE=y -CONFIG_ENV_IS_IN_MMC=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y # CONFIG_NET is not set CONFIG_MXS_GPIO=y diff --git a/configs/pwsh5_defconfig b/configs/pwsh5_defconfig index ec53227273..0d7d9ac84c 100644 --- a/configs/pwsh5_defconfig +++ b/configs/pwsh5_defconfig @@ -6,11 +6,11 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_NR_DRAM_BANKS=1 CONFIG_ENV_SIZE=0x4000 -CONFIG_ENV_OFFSET=0x40000 CONFIG_SPL_TEXT_BASE=0x00001000 CONFIG_TARGET_PWSH5=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y +CONFIG_USE_PREBOOT=y CONFIG_DEFAULT_FDT_FILE="imx28-pwsh5.dtb" # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_ARCH_MISC_INIT=y @@ -25,7 +25,6 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_ENV_OVERWRITE=y -CONFIG_ENV_IS_IN_MMC=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y # CONFIG_NET is not set CONFIG_MXS_GPIO=y diff --git a/configs/pwsh6_defconfig b/configs/pwsh6_defconfig index 02421bcdb9..8619c42693 100644 --- a/configs/pwsh6_defconfig +++ b/configs/pwsh6_defconfig @@ -6,11 +6,11 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_NR_DRAM_BANKS=1 CONFIG_ENV_SIZE=0x4000 -CONFIG_ENV_OFFSET=0x40000 CONFIG_SPL_TEXT_BASE=0x00001000 CONFIG_TARGET_PWSH6=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y +CONFIG_USE_PREBOOT=y CONFIG_DEFAULT_FDT_FILE="imx28-pwsh6.dtb" # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_ARCH_MISC_INIT=y @@ -25,7 +25,6 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_ENV_OVERWRITE=y -CONFIG_ENV_IS_IN_MMC=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y # CONFIG_NET is not set CONFIG_MXS_GPIO=y diff --git a/configs/pwsh7_defconfig b/configs/pwsh7_defconfig index a24264f1b1..28c41bca6d 100644 --- a/configs/pwsh7_defconfig +++ b/configs/pwsh7_defconfig @@ -6,11 +6,11 @@ CONFIG_SPL_LIBCOMMON_SUPPORT=y CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_NR_DRAM_BANKS=1 CONFIG_ENV_SIZE=0x4000 -CONFIG_ENV_OFFSET=0x40000 CONFIG_SPL_TEXT_BASE=0x00001000 CONFIG_TARGET_PWSH7=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL=y +CONFIG_USE_PREBOOT=y CONFIG_DEFAULT_FDT_FILE="imx28-pwsh7.dtb" # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_ARCH_MISC_INIT=y @@ -25,7 +25,6 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_ENV_OVERWRITE=y -CONFIG_ENV_IS_IN_MMC=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y # CONFIG_NET is not set CONFIG_MXS_GPIO=y diff --git a/include/configs/brain_mx28_common.h b/include/configs/brain_mx28_common.h index 0af1fddc97..2a7cd134dc 100644 --- a/include/configs/brain_mx28_common.h +++ b/include/configs/brain_mx28_common.h @@ -57,43 +57,103 @@ "stdin=serial\0" \ "stdout=serial,vga\0" \ "stderr=serial,vga\0" \ - "videomode=video=ctfb:x:" CONFIG_LCD_X ",y:" CONFIG_LCD_Y ",depth:16,pclk:30857,le:0,ri:0,up:0,lo:0,hs:0,vs:0,sync:0,vmode:0\0" \ "bootdelay=0\0" \ + "videomode=video=ctfb:x:" CONFIG_LCD_X ",y:" CONFIG_LCD_Y ",depth:16,pclk:30857,le:0,ri:0,up:0,lo:0,hs:0,vs:0,sync:0,vmode:0\0" \ "image=zImage\0" \ "console_mainline=ttyAMA0\0" \ + "bootargs_custom=fbcon=font:ProFont6x11\0" \ + "bootorder=emmc sd\0" \ "fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \ "fdt_addr=0x41000000\0" \ - "boot_fdt=try\0" \ - "mmcdev=1\0" \ - "mmcpart=1\0" \ - "mmcroot=/dev/mmcblk1p2 rw rootwait\0" \ - "mmcargs=setenv bootargs console=${console_mainline},${baudrate} console=tty1 " \ - "root=${mmcroot} fbcon=font:ProFont6x11\0" \ - "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\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 " \ - "bootz ${loadaddr} - ${fdt_addr}; " \ - "else " \ - "if test ${boot_fdt} = try; then " \ - "bootz; " \ - "else " \ - "echo WARN: Cannot load the DT; " \ - "fi; " \ - "fi; " \ - "else " \ - "bootz; " \ - "fi;\0" \ - -#define CONFIG_BOOTCOMMAND \ - "mmc dev ${mmcdev}; if mmc rescan; then " \ - "if run loadimage; then " \ - "run mmcboot; " \ - "else run netboot; " \ + "verbose=no\0" \ + "printfail=echo failed to ${fail}\0" \ + "quiet=" \ + "if test $verbose = no; then " \ + "setenv stdout_orig ${stdout}; " \ + "setenv stdout nulldev; " \ + "fi\0" \ + "unquiet=" \ + "setenv returncode $?; " \ + "if test -n $stdout_orig; then " \ + "setenv stdout ${stdout_orig}; " \ "fi; " \ - "else run netboot; fi" + "exit $returncode\0" \ + "sddev=1\0" \ + "sdpart=1\0" \ + "sdroot=/dev/mmcblk1p2 rw rootwait\0" \ + "selectsd=" \ + "setenv dev ${sddev}; " \ + "setenv part ${sdpart}; " \ + "setenv root ${sdroot}; " \ + "setenv devname SD; " \ + "run quiet; " \ + "mmc dev ${dev}; " \ + "run unquiet\0" \ + "emmcdev=0\0" \ + "emmcpart=1\0" \ + "emmcroot=/dev/mmcblk0p3 rw rootwait\0" \ + "selectemmc=" \ + "setenv dev ${emmcdev}; " \ + "setenv part ${emmcpart}; " \ + "setenv root ${emmcroot}; " \ + "setenv devname eMMC; " \ + "run quiet; " \ + "mmc dev ${dev}; " \ + "run unquiet\0" \ + "loadimage=" \ + "run quiet; " \ + "fatload mmc ${dev}:${part} ${loadaddr} ${image}; " \ + "run unquiet\0" \ + "loadfdt=" \ + "run quiet; " \ + "fatload mmc ${dev}:${part} ${fdt_addr} ${fdt_file}; " \ + "run unquiet\0" \ + "checkenvexists=" \ + "run quiet; " \ + "test -e mmc ${dev}:${part} uEnv.txt; " \ + "run unquiet\0" \ + "loadenv=" \ + "run quiet; " \ + "fatload mmc ${dev}:${part} ${loadaddr} uEnv.txt; " \ + "run unquiet\0" \ + "importenv=" \ + "run quiet; " \ + "env import -t ${loadaddr} ${filesize}; " \ + "run unquiet\0" \ + "loadandimportenv=" \ + "if run checkenvexists; then " \ + "echo -n \"Loading environment from ${devname} ... \"; " \ + "if setenv fail load && run loadenv && setenv fail parse && run importenv; then " \ + "echo OK; " \ + "else " \ + "run printfail; " \ + "fi; " \ + "fi\0" \ + "setargs=setenv bootargs console=${console_mainline},${baudrate} console=tty1 " \ + "root=${root} ${bootargs_custom}\0" \ + "mmcboot=" \ + "echo -n \"Loading kernel and device tree from ${devname} ... \"; " \ + "if setenv fail load image && run loadimage && setenv fail load DT && run loadfdt; then " \ + "echo OK; " \ + "echo \"Booting from ${devname} ... \"; " \ + "setenv fail bootz; " \ + "run setargs; " \ + "bootz ${loadaddr} - ${fdt_addr}; " \ + "fi; " \ + "run printfail\0" \ + "preboot=" \ + "for choice in emmc sd; do " /* Env in SD must have higher priority */ \ + "if run select$choice; then " \ + "run loadandimportenv; " \ + "fi; " \ + "done\0" \ + "bootcmd=" \ + "for choice in $bootorder; do " \ + "if run select$choice; then " \ + "run mmcboot; " \ + "fi; " \ + "done; " \ + "echo Failed to boot (X_X)" /* The rest of the configuration is shared */ #include