[U-Boot] [PATCH 6/6] i.mx: i.mx6q: Add the initial support for i.mx6q ARM2 board

Dirk Behme dirk.behme at de.bosch.com
Wed Nov 16 12:34:49 CET 2011


On 12.11.2011 11:36, Jason Liu wrote:
> Add the initial support for Freescale i.MX6Q Armadillo2 board
> Support: MMC boot from slot 0/1, debug UART(UART4), usdhc.
...
> diff --git a/include/configs/mx6qarm2.h b/include/configs/mx6qarm2.h
> new file mode 100644
> index 0000000..a4c7b31
> --- /dev/null
> +++ b/include/configs/mx6qarm2.h
...
> +#define CONFIG_EXTRA_ENV_SETTINGS \
> +       "script=boot.scr\0" \
> +       "uimage=uImage\0" \
> +       "mmcdev=0\0" \
> +       "mmcpart=2\0" \
> +       "mmcroot=/dev/mmcblk0p3 rw\0" \
> +       "mmcrootfstype=ext3 rootwait\0" \
> +       "mmcargs=setenv bootargs console=ttymxc0,${baudrate} " \
> +               "root=${mmcroot} " \
> +               "rootfstype=${mmcrootfstype}\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" \
> +       "mmcboot=echo Booting from mmc ...; " \
> +               "run mmcargs; " \
> +               "bootm\0" \
> +       "netargs=setenv bootargs console=ttymxc0,${baudrate} " \
> +               "root=/dev/nfs " \
> +               "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
> +       "netboot=echo Booting from net ...; " \
> +               "run netargs; " \
> +               "dhcp ${uimage}; bootm\0" \
> +
> +#define CONFIG_BOOTCOMMAND \
> +       "if mmc rescan ${mmcdev}; then " \
> +               "if run loadbootscript; then " \
> +                       "run bootscript; " \
> +               "else " \
> +                       "if run loaduimage; then " \
> +                               "run mmcboot; " \
> +                       "else run netboot; " \
> +                       "fi; " \
> +               "fi; " \
> +       "else run netboot; fi"

Testing this with the latest mainline kernel and a Linaro developer 
rootfs I'd like to propose the following changes to these settings [1]:

* Introduce a ${console} variable to centralize the console configuration
* The recent mainline kernel uses ttymxc3 instead of ttymxc0 for the 
console. I.e. switch from ttymxc0 to ttymxc3
* Add a 'mmc dev ${mmcdev}' command to be able to switch between the SD 
slots
* Use the SD card slot at the CPU board by default. Instead the one on 
the expansion base board. I.e. switch from mmcdev=0 to mmcdev=1
* The Linaro rootfs uses EXT4. For this, remove the hard coded 
rootfstype=ext3 and let the kernel auto detect the rootfs type.

Best regards

Dirk

[1]

---
  include/configs/mx6qarm2.h |   14 +++++++-------
  1 file changed, 7 insertions(+), 7 deletions(-)

Index: a/include/configs/mx6qarm2.h
===================================================================
--- a/include/configs/mx6qarm2.h
+++ b/include/configs/mx6qarm2.h
@@ -78,13 +78,12 @@
  #define CONFIG_EXTRA_ENV_SETTINGS \
  	"script=boot.scr\0" \
  	"uimage=uImage\0" \
-	"mmcdev=0\0" \
+	"mmcdev=1\0" \
+	"console=ttymxc3\0" \
  	"mmcpart=2\0" \
-	"mmcroot=/dev/mmcblk0p3 rw\0" \
-	"mmcrootfstype=ext3 rootwait\0" \
-	"mmcargs=setenv bootargs console=ttymxc0,${baudrate} " \
-		"root=${mmcroot} " \
-		"rootfstype=${mmcrootfstype}\0" \
+	"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \
+	"mmcargs=setenv bootargs console=${console},${baudrate} " \
+		"root=${mmcroot}\0" \
  	"loadbootscript=" \
  		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
  	"bootscript=echo Running bootscript from mmc ...; " \
@@ -93,7 +92,7 @@
  	"mmcboot=echo Booting from mmc ...; " \
  		"run mmcargs; " \
  		"bootm\0" \
-	"netargs=setenv bootargs console=ttymxc0,${baudrate} " \
+	"netargs=setenv bootargs console=${console},${baudrate} " \
  		"root=/dev/nfs " \
  		"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
  	"netboot=echo Booting from net ...; " \
@@ -101,6 +100,7 @@
  		"dhcp ${uimage}; bootm\0" \

  #define CONFIG_BOOTCOMMAND \
+	"mmc dev ${mmcdev};" \
  	"if mmc rescan ${mmcdev}; then " \
  		"if run loadbootscript; then " \
  			"run bootscript; " \


More information about the U-Boot mailing list