public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Jagan Teki <jagan@openedev.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 06/10] imx6: engicam: Add nandboot env support
Date: Wed, 21 Dec 2016 12:00:25 +0100	[thread overview]
Message-ID: <1482318029-21701-7-git-send-email-jagan@openedev.com> (raw)
In-Reply-To: <1482318029-21701-1-git-send-email-jagan@openedev.com>

From: Jagan Teki <jagan@amarulasolutions.com>

Add config options for booting Linux from NAND in UBI format.

Cc: Stefano Babic <sbabic@denx.de>
Cc: Matteo Lisi <matteo.lisi@engicam.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
 include/configs/imx6qdl_icore.h | 21 +++++++++++++++++++--
 include/configs/imx6ul_geam.h   | 21 +++++++++++++++++++--
 2 files changed, 38 insertions(+), 4 deletions(-)

diff --git a/include/configs/imx6qdl_icore.h b/include/configs/imx6qdl_icore.h
index 55eb100..9d5951f 100644
--- a/include/configs/imx6qdl_icore.h
+++ b/include/configs/imx6qdl_icore.h
@@ -47,9 +47,12 @@
 	"mmcdev=0\0" \
 	"mmcpart=1\0" \
 	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
+	"nandroot=ubi0:rootfs rootfstype=ubifs\0" \
 	"mmcautodetect=yes\0" \
 	"mmcargs=setenv bootargs console=${console},${baudrate} " \
 		"root=${mmcroot}\0" \
+	"ubiargs=setenv bootargs console=${console},${baudrate} " \
+		"ubi.mtd=5 root=${nandroot} ${mtdparts}\0" \
 	"loadbootscript=" \
 		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
 	"bootscript=echo Running bootscript from mmc ...; " \
@@ -70,9 +73,22 @@
 			"fi; " \
 		"else " \
 			"bootm; " \
-		"fi\0"
+		"fi\0" \
+	"nandboot=echo Booting from nand ...; " \
+		"if mtdparts; then " \
+			"echo Starting nand boot ...; " \
+		"else " \
+			"mtdparts default; " \
+		"fi; " \
+		"run ubiargs; " \
+		"nand read ${loadaddr} kernel 0x800000; " \
+		"nand read ${fdt_addr} dtb 0x100000; " \
+		"bootm ${loadaddr} - ${fdt_addr}\0"
 
-#define CONFIG_BOOTCOMMAND \
+#ifdef CONFIG_NAND_MXS
+# define CONFIG_BOOTCOMMAND		"run nandboot"
+#else
+# define CONFIG_BOOTCOMMAND \
 	   "mmc dev ${mmcdev};" \
 	   "mmc dev ${mmcdev}; if mmc rescan; then " \
 		   "if run loadbootscript; then " \
@@ -83,6 +99,7 @@
 			"fi; " \
 		   "fi; " \
 	   "fi"
+#endif
 
 /* Miscellaneous configurable options */
 #define CONFIG_SYS_MEMTEST_START	0x80000000
diff --git a/include/configs/imx6ul_geam.h b/include/configs/imx6ul_geam.h
index 3e26a81..507e743 100644
--- a/include/configs/imx6ul_geam.h
+++ b/include/configs/imx6ul_geam.h
@@ -46,9 +46,12 @@
 	"mmcdev=0\0" \
 	"mmcpart=1\0" \
 	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
+	"nandroot=ubi0:rootfs rootfstype=ubifs\0" \
 	"mmcautodetect=yes\0" \
 	"mmcargs=setenv bootargs console=${console},${baudrate} " \
 		"root=${mmcroot}\0" \
+	"ubiargs=setenv bootargs console=${console},${baudrate} " \
+		"ubi.mtd=5 root=${nandroot} ${mtdparts}\0" \
 	"loadbootscript=" \
 		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
 	"bootscript=echo Running bootscript from mmc ...; " \
@@ -69,9 +72,22 @@
 			"fi; " \
 		"else " \
 			"bootm; " \
-		"fi\0"
+		"fi\0" \
+	"nandboot=echo Booting from nand ...; " \
+		"if mtdparts; then " \
+			"echo Starting nand boot ...; " \
+		"else " \
+			"mtdparts default; " \
+		"fi; " \
+		"run ubiargs; " \
+		"nand read ${loadaddr} kernel 0x800000; " \
+		"nand read ${fdt_addr} dtb 0x100000; " \
+		"bootm ${loadaddr} - ${fdt_addr}\0"
 
-#define CONFIG_BOOTCOMMAND \
+#ifdef CONFIG_NAND_MXS
+# define CONFIG_BOOTCOMMAND		"run nandboot"
+#else
+# define CONFIG_BOOTCOMMAND \
 	   "mmc dev ${mmcdev};" \
 	   "mmc dev ${mmcdev}; if mmc rescan; then " \
 		   "if run loadbootscript; then " \
@@ -82,6 +98,7 @@
 			"fi; " \
 		   "fi; " \
 	   "fi"
+#endif
 
 /* Miscellaneous configurable options */
 #define CONFIG_SYS_MEMTEST_START	0x80000000
-- 
1.9.1

  parent reply	other threads:[~2016-12-21 11:00 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-21 11:00 [U-Boot] [PATCH 00/10] i.MX6: engicam: Add nandboot env and FIT support Jagan Teki
2016-12-21 11:00 ` [U-Boot] [PATCH 01/10] configs: engicam: Increase nand kernel partition size Jagan Teki
2016-12-21 11:00 ` [U-Boot] [PATCH 02/10] imx6: engicam: Use bootm instead of bootz Jagan Teki
2016-12-21 11:00 ` [U-Boot] [PATCH 03/10] configs: engicam: Rename nand with gpmi-name in mtdparts Jagan Teki
2016-12-21 11:00 ` [U-Boot] [PATCH 04/10] defconfigs: engicam: Enable MMC commands in nand Jagan Teki
2016-12-21 11:00 ` [U-Boot] [PATCH 05/10] defconfigs: engicam: Enable UBI commands Jagan Teki
2016-12-21 11:00 ` Jagan Teki [this message]
2016-12-21 11:00 ` [U-Boot] [PATCH 07/10] defconfigs: imx6: engicam: Enable FIT Jagan Teki
2016-12-21 11:00 ` [U-Boot] [PATCH 08/10] configs: engicam: Enable CONFIG_IMAGE_FORMAT_LEGACY Jagan Teki
2016-12-21 11:00 ` [U-Boot] [PATCH 09/10] configs: engicam: Cleanup on mmcboot env Jagan Teki
2016-12-21 11:00 ` [U-Boot] [PATCH 10/10] configs: engicam: Add fitboot env support Jagan Teki
2016-12-29 13:37 ` [U-Boot] [PATCH 00/10] i.MX6: engicam: Add nandboot env and FIT support Jagan Teki
2017-01-01 19:05   ` Jagan Teki
2017-01-02 16:19     ` Stefano Babic
2017-01-02 16:52 ` Stefano Babic
2017-01-02 16:58   ` Jagan Teki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1482318029-21701-7-git-send-email-jagan@openedev.com \
    --to=jagan@openedev.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox