All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
To: buildroot@busybox.net
Subject: [Buildroot] [git commit] board/boundarydevices: update boot scripts
Date: Mon, 26 Apr 2021 21:50:11 +0200	[thread overview]
Message-ID: <20210426192305.961E183FB4@busybox.osuosl.org> (raw)

commit: https://git.buildroot.net/buildroot/commit/?id=3dd168d6278a2458082f0b41d06f523ad7bed38d
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

- Add support for 8M Plus CPU (A1 and A0 silicon)
- Simplify cpu type parsing
- Update to be closer to Yocto counterpart

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
 board/boundarydevices/common/boot.cmd    | 65 +++++++++++++++++++-------------
 board/boundarydevices/common/upgrade.cmd | 25 ++++++++----
 2 files changed, 56 insertions(+), 34 deletions(-)

diff --git a/board/boundarydevices/common/boot.cmd b/board/boundarydevices/common/boot.cmd
index dbc3b3c373..2f2bd8d045 100644
--- a/board/boundarydevices/common/boot.cmd
+++ b/board/boundarydevices/common/boot.cmd
@@ -1,17 +1,20 @@
 setenv bootargs ''
 
-setenv initrd_high 0xffffffff
 m4=''
 kernelimage=zImage
 bootcommand=bootz
 a_base=0x10000000
-if itest.s x51 == "x${imx_cpu}" ; then
+
+#grab 1st 2/3 characters of string
+setexpr cpu2 sub "^(..?).*" "\\1" "${imx_cpu}"
+setexpr cpu3 sub "^(..?.?).*" "\\1" "${imx_cpu}"
+if itest.s x51 == "x${cpu2}" ; then
 	a_base=0x90000000
-elif itest.s x53 == "x${imx_cpu}"; then
+elif itest.s x53 == "x${cpu2}"; then
 	a_base=0x70000000
-elif itest.s x6SX == "x${imx_cpu}" || itest.s x6ULL == "x${imx_cpu}" || itest.s x7D == "x${imx_cpu}"; then
+elif itest.s x6SX == "x${cpu3}" || itest.s x6U == "x${cpu2}" || itest.s x7D == "x${cpu2}"; then
 	a_base=0x80000000
-elif itest.s x8MQ == "x${imx_cpu}" || itest.s x8MM == "x${imx_cpu}" || itest.s x8MMQ == "x${imx_cpu}" || itest.s x8MNano == "x${imx_cpu}"; then
+elif itest.s x8M == "x${cpu2}"; then
 	a_base=0x40000000
 	kernelimage=Image
 	bootcommand=booti
@@ -24,8 +27,7 @@ fi
 setexpr a_script  ${a_base} + 0x00800000
 setexpr a_zImage  ${a_base} + 0x00800000
 setexpr a_fdt     ${a_base} + 0x03000000
-setexpr a_ramdisk ${a_base} + 0x03800000
-setexpr a_initrd  ${a_base} + 0x03a00000
+setexpr a_initrd  ${a_base} + 0x03100000
 setexpr a_reset_cause_marker ${a_base} + 0x80
 setexpr a_reset_cause	     ${a_base} + 0x84
 
@@ -35,30 +37,32 @@ if itest.s "x" == "x${board}" ; then
 fi
 
 if itest.s "x" == "x${fdt_file}" ; then
-	if itest.s x6SOLO == "x${imx_cpu}" ; then
-		fdt_file=imx6dl-${board}.dtb;
-	elif itest.s x6DL == "x${imx_cpu}" ; then
+	if itest.s x51 == "x${cpu2}" ; then
+		fdt_file=imx51-${board}${m4}.dtb;
+	elif itest.s x53 == "x${cpu2}" ; then
+		fdt_file=imx53-${board}${m4}.dtb;
+	elif itest.s x6DL == "x${cpu3}" || itest.s x6SO == "x${cpu3}" ; then
 		fdt_file=imx6dl-${board}.dtb;
-	elif itest.s x6QP == "x${imx_cpu}" ; then
+	elif itest.s x6QP == "x${cpu3}" ; then
 		fdt_file=imx6qp-${board}.dtb;
-	elif itest.s x6SX == "x${imx_cpu}" ; then
+	elif itest.s x6SX == "x${cpu3}" ; then
 		fdt_file=imx6sx-${board}${m4}.dtb;
-	elif itest.s x6ULL == "x${imx_cpu}" ; then
+	elif itest.s x6UL == "x${cpu3}" ; then
 		fdt_file=imx6ull-${board}.dtb;
-	elif itest.s x7D == "x${imx_cpu}" ; then
+	elif itest.s x7D == "x${cpu2}" ; then
 		fdt_file=imx7d-${board}${m4}.dtb;
-	elif itest.s x8MQ == "x${imx_cpu}" ; then
-		fdt_file=imx8mq-${board}${m4}.dtb;
-	elif itest.s x8MM == "x${imx_cpu}" ; then
+	elif itest.s x8MM == "x${cpu3}" ; then
 		fdt_file=imx8mm-${board}${m4}.dtb;
-	elif itest.s x8MMQ == "x${imx_cpu}" ; then
-		fdt_file=imx8mm-${board}${m4}.dtb;
-	elif itest.s x8MNano == "x${imx_cpu}" ; then
+	elif itest.s x8MN == "x${cpu3}" ; then
 		fdt_file=imx8mn-${board}${m4}.dtb;
-	elif itest.s x51 == "x${imx_cpu}" ; then
-		fdt_file=imx51-${board}.dtb;
-	elif itest.s x53 == "x${imx_cpu}" ; then
-		fdt_file=imx53-${board}.dtb;
+	elif itest.s x8MP == "x${cpu3}" ; then
+		if itest *0x30360800 == 0x00824310 ; then
+			fdt_file=imx8mp-a0-${board}${m4}.dtb;
+		else
+			fdt_file=imx8mp-${board}${m4}.dtb;
+		fi
+	elif itest.s x8MQ == "x${cpu3}" ; then
+		fdt_file=imx8mq-${board}${m4}.dtb;
 	else
 		fdt_file=imx6q-${board}.dtb;
 	fi
@@ -71,11 +75,20 @@ fi
 if load ${devtype} ${devnum}:${distro_bootpart} ${a_script} uEnv.txt ; then
     env import -t ${a_script} ${filesize}
 fi
-setenv bootargs ${bootargs} console=${console},115200 vmalloc=400M consoleblank=0 rootwait fixrtc cpu=${imx_cpu} board=${board}
+
+if itest.s x${console} != x ; then
+	setenv bootargs ${bootargs} console=${console},115200
+fi
+if itest.s "x" == "x$vmalloc" ; then
+	vmalloc=400M
+fi
+if itest.s x${consoleblank} == x ; then
+	consoleblank=0
+fi
+setenv bootargs ${bootargs} vmalloc=${vmalloc} consoleblank=${consoleblank} rootwait fixrtc cpu=${imx_cpu} board=${board} uboot_release=${uboot_release}
 
 if load ${devtype} ${devnum}:${distro_bootpart} ${a_fdt} ${prefix}${fdt_file} ; then
 	fdt addr ${a_fdt}
-	setenv fdt_high 0xffffffff
 else
 	echo "!!!! Error loading ${prefix}${fdt_file}";
 	exit;
diff --git a/board/boundarydevices/common/upgrade.cmd b/board/boundarydevices/common/upgrade.cmd
index ce32d77b5b..a26bacd9aa 100644
--- a/board/boundarydevices/common/upgrade.cmd
+++ b/board/boundarydevices/common/upgrade.cmd
@@ -9,18 +9,24 @@ qspi_offset=0x0
 a_base=0x12000000
 block_size=0x200
 
-if itest.s x51 == "x${imx_cpu}"; then
+#grab 1st 2/3 characters of string
+setexpr cpu2 sub "^(..?).*" "\\1" "${imx_cpu}"
+setexpr cpu3 sub "^(..?.?).*" "\\1" "${imx_cpu}"
+if itest.s x51 == "x${cpu2}"; then
 	a_base=0x92000000
-elif itest.s x53 == "x${imx_cpu}"; then
+elif itest.s x53 == "x${cpu2}"; then
 	a_base=0x72000000
-elif itest.s x6SX == "x${imx_cpu}" || itest.s x6ULL == "x${imx_cpu}" || itest.s x7D == "x${imx_cpu}"; then
+elif itest.s x6SX == "x${cpu3}" || itest.s x6U == "x${cpu2}" || itest.s x7D == "x${cpu2}"; then
 	a_base=0x82000000
-elif itest.s x8MQ == "x${imx_cpu}" || itest.s x8MM == "x${imx_cpu}" || itest.s x8MMQ == "x${imx_cpu}"; then
+elif itest.s x8M == "x${cpu2}"; then
 	a_base=0x42000000
 	offset=0x8400
-elif itest.s x8MNano == "x${imx_cpu}"; then
-	a_base=0x42000000
-	offset=0x8000
+	if itest.s x8MN == "x${cpu3}" || itest.s x8MP == "x${cpu3}"; then
+		offset=0x8000
+		if itest ${env_part} != 0 ; then
+			offset=0x0
+		fi
+	fi
 fi
 
 qspi_match=1
@@ -30,7 +36,10 @@ setexpr a_uImage1 ${a_qspi1} + 0x400
 setexpr a_uImage2 ${a_qspi2} + 0x400
 setexpr a_script ${a_base}
 
-setenv stdout serial,vga
+if itest.s "x${vidconsole}" == "x" ; then
+	vidconsole=vga
+fi
+setenv stdout serial,${vidconsole}
 
 if itest.s "x${sfname}" == "x" ; then
 # U-Boot resides in (e)MMC

             reply	other threads:[~2021-04-26 19:50 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-26 19:50 Thomas Petazzoni [this message]
  -- strict thread matches above, loose matches on Subject: below --
2020-03-26 20:47 [Buildroot] [git commit] board/boundarydevices: update boot scripts Thomas Petazzoni

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=20210426192305.961E183FB4@busybox.osuosl.org \
    --to=thomas.petazzoni@bootlin.com \
    --cc=buildroot@busybox.net \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.