summaryrefslogtreecommitdiffstats
path: root/meta-xilinx-bsp/recipes-bsp/u-boot
diff options
context:
space:
mode:
authorRaju Kumar Pothuraju <raju.kumar-pothuraju@xilinx.com>2021-01-05 20:20:17 +0530
committerSai Hari Chandana Kalluri <chandana.kalluri@xilinx.com>2021-07-14 14:32:21 -0700
commitab8a21322538c77b6f66770102a8e97262458f9a (patch)
tree2ae60fadc1d3e5857176829eb71d246cf69b5aa6 /meta-xilinx-bsp/recipes-bsp/u-boot
parent0696df5ad0fd19faafe5e0f52715e6a0bff30d2b (diff)
downloadmeta-xilinx-ab8a21322538c77b6f66770102a8e97262458f9a.tar.gz
u-boot-zynq-scr: Add microblaze support for boot.scr
Adding microblaze support for boot.scr and moving the generic boot script from petalinux to yocto layers. The generic boot script will read the boot_target variable on uboot and based on the bootmode it will execute the boot commands. Signed-off-by: Raju Kumar Pothuraju <raju.kumar-pothuraju@xilinx.com> Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
Diffstat (limited to 'meta-xilinx-bsp/recipes-bsp/u-boot')
-rw-r--r--meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr.bb17
-rw-r--r--meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr/boot.cmd.generic10
-rw-r--r--meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr/boot.cmd.ubifs6
3 files changed, 23 insertions, 10 deletions
diff --git a/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr.bb b/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr.bb
index 0e91ae79..aecc36df 100644
--- a/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr.bb
+++ b/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr.bb
@@ -33,7 +33,6 @@ SKIP_APPEND_BASEADDR ?= "0"
33 33
34DDR_BASEADDR ?= "0x0" 34DDR_BASEADDR ?= "0x0"
35DDR_BASEADDR_microblaze ?= "0x80000000" 35DDR_BASEADDR_microblaze ?= "0x80000000"
36PRE_BOOTENV ?= ""
37 36
38SRC_URI = " \ 37SRC_URI = " \
39 file://boot.cmd.sd.zynq \ 38 file://boot.cmd.sd.zynq \
@@ -102,16 +101,16 @@ NAND_RAMDISK_SIZE ?= "0x3200000"
102## For zynqMP 101## For zynqMP
103## Load boot.scr at 0x3E80000 -> 62MB of QSPI/NAND Memory 102## Load boot.scr at 0x3E80000 -> 62MB of QSPI/NAND Memory
104QSPI_KERNEL_OFFSET ?= "0xF00000" 103QSPI_KERNEL_OFFSET ?= "0xF00000"
105QSPI_KERNEL_OFFSET_zynqmp-dr ?= "0x3F00000" 104QSPI_KERNEL_OFFSET_zynqmpdr ?= "0x3F00000"
106QSPI_RAMDISK_OFFSET ?= "0x4000000" 105QSPI_RAMDISK_OFFSET ?= "0x4000000"
107QSPI_RAMDISK_OFFSET_zynqmp-dr ?= "0x5D00000" 106QSPI_RAMDISK_OFFSET_zynqmpdr ?= "0x5D00000"
108 107
109NAND_KERNEL_OFFSET_zynqmp ?= "0x4100000" 108NAND_KERNEL_OFFSET_zynqmp ?= "0x4100000"
110NAND_RAMDISK_OFFSET_zynqmp ?= "0x7800000" 109NAND_RAMDISK_OFFSET_zynqmp ?= "0x7800000"
111 110
112QSPI_KERNEL_SIZE_zynqmp ?= "0x1D00000" 111QSPI_KERNEL_SIZE_zynqmp ?= "0x1D00000"
113QSPI_RAMDISK_SIZE ?= "0x4000000" 112QSPI_RAMDISK_SIZE ?= "0x4000000"
114QSPI_RAMDISK_SIZE_zynqmp-dr ?= "0x1D00000" 113QSPI_RAMDISK_SIZE_zynqmpdr ?= "0x1D00000"
115 114
116## For versal 115## For versal
117## Load boot.scr at 0x7F80000 -> 127MB of QSPI/NAND Memory 116## Load boot.scr at 0x7F80000 -> 127MB of QSPI/NAND Memory
@@ -131,15 +130,13 @@ QSPI_KERNEL_IMAGE_versal ?= "image.ub"
131 130
132NAND_KERNEL_IMAGE ?= "image.ub" 131NAND_KERNEL_IMAGE ?= "image.ub"
133 132
134QSPI_FIT_IMAGE_LOAD_ADDRESS ?= "${@append_baseaddr(d,d.getVar('QSPI_FIT_IMAGE_OFFSET'))}" 133QSPI_FIT_IMAGE_LOAD_ADDRESS ?= "${@append_baseaddr(d,"0x10000000")}"
135QSPI_FIT_IMAGE_OFFSET ?= "0x10000000"
136QSPI_FIT_IMAGE_SIZE ?= "0x6400000" 134QSPI_FIT_IMAGE_SIZE ?= "0x6400000"
137QSPI_FIT_IMAGE_SIZE_zynqmp-dr ?= "0x3F00000" 135QSPI_FIT_IMAGE_SIZE_zynqmpdr ?= "0x3F00000"
138QSPI_FIT_IMAGE_SIZE_zynq ?= "0xF00000" 136QSPI_FIT_IMAGE_SIZE_zynq ?= "0xF00000"
139QSPI_FIT_IMAGE_SIZE_microblaze ?= "0xF00000" 137QSPI_FIT_IMAGE_SIZE_microblaze ?= "0xF00000"
140 138
141NAND_FIT_IMAGE_LOAD_ADDRESS ?= "${@append_baseaddr(d,d.getVar('NAND_FIT_IMAGE_OFFSET'))}" 139NAND_FIT_IMAGE_LOAD_ADDRESS ?= "${@append_baseaddr(d,"0x10000000")}"
142NAND_FIT_IMAGE_OFFSET ?= "0x10000000"
143NAND_FIT_IMAGE_SIZE ?= "0x6400000" 140NAND_FIT_IMAGE_SIZE ?= "0x6400000"
144 141
145SDBOOTDEV ?= "0" 142SDBOOTDEV ?= "0"
@@ -152,7 +149,7 @@ do_install[noexec] = "1"
152python () { 149python () {
153 baseaddr = d.getVar('DDR_BASEADDR') or "0x0" 150 baseaddr = d.getVar('DDR_BASEADDR') or "0x0"
154 if baseaddr == "0x0": 151 if baseaddr == "0x0":
155 d.appendVar('PRE_BOOTENV','') 152 d.setVar('PRE_BOOTENV','')
156 else: 153 else:
157 soc_family = d.getVar('SOC_FAMILY') or "" 154 soc_family = d.getVar('SOC_FAMILY') or ""
158 if soc_family == "zynqmp": 155 if soc_family == "zynqmp":
diff --git a/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr/boot.cmd.generic b/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr/boot.cmd.generic
index 404b3b81..b8ebf645 100644
--- a/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr/boot.cmd.generic
+++ b/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr/boot.cmd.generic
@@ -9,11 +9,13 @@ for boot_target in ${boot_targets};
9do 9do
10 if test "${boot_target}" = "jtag" ; then 10 if test "${boot_target}" = "jtag" ; then
11 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@ 11 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@
12 exit;
12 fi 13 fi
13 if test "${boot_target}" = "mmc0" || test "${boot_target}" = "mmc1" ; then 14 if test "${boot_target}" = "mmc0" || test "${boot_target}" = "mmc1" ; then
14 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@FIT_IMAGE@@; then 15 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@FIT_IMAGE@@; then
15 fatload ${devtype} ${devnum}:${distro_bootpart} @@FIT_IMAGE_LOAD_ADDRESS@@ @@FIT_IMAGE@@; 16 fatload ${devtype} ${devnum}:${distro_bootpart} @@FIT_IMAGE_LOAD_ADDRESS@@ @@FIT_IMAGE@@;
16 bootm @@FIT_IMAGE_LOAD_ADDRESS@@; 17 bootm @@FIT_IMAGE_LOAD_ADDRESS@@;
18 exit;
17 fi 19 fi
18 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@KERNEL_IMAGE@@; then 20 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@KERNEL_IMAGE@@; then
19 fatload ${devtype} ${devnum}:${distro_bootpart} @@KERNEL_LOAD_ADDRESS@@ @@KERNEL_IMAGE@@;; 21 fatload ${devtype} ${devnum}:${distro_bootpart} @@KERNEL_LOAD_ADDRESS@@ @@KERNEL_IMAGE@@;;
@@ -24,35 +26,43 @@ do
24 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@RAMDISK_IMAGE1@@; then 26 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@RAMDISK_IMAGE1@@; then
25 fatload ${devtype} ${devnum}:${distro_bootpart} @@RAMDISK_IMAGE_ADDRESS@@ @@RAMDISK_IMAGE1@@; 27 fatload ${devtype} ${devnum}:${distro_bootpart} @@RAMDISK_IMAGE_ADDRESS@@ @@RAMDISK_IMAGE1@@;
26 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@ 28 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@
29 exit;
27 fi 30 fi
28 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@RAMDISK_IMAGE@@; then 31 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@RAMDISK_IMAGE@@; then
29 fatload ${devtype} ${devnum}:${distro_bootpart} @@RAMDISK_IMAGE_ADDRESS@@ @@RAMDISK_IMAGE@@; 32 fatload ${devtype} ${devnum}:${distro_bootpart} @@RAMDISK_IMAGE_ADDRESS@@ @@RAMDISK_IMAGE@@;
30 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@ 33 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@
34 exit;
31 fi 35 fi
32 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ - @@DEVICETREE_ADDRESS@@ 36 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ - @@DEVICETREE_ADDRESS@@
37 exit;
33 fi 38 fi
34 if test "${boot_target}" = "xspi0" || test "${boot_target}" = "qspi" || test "${boot_target}" = "qspi0"; then 39 if test "${boot_target}" = "xspi0" || test "${boot_target}" = "qspi" || test "${boot_target}" = "qspi0"; then
35 sf probe 0 0 0; 40 sf probe 0 0 0;
36 if test "@@QSPI_KERNEL_IMAGE@@" = "@@FIT_IMAGE@@"; then 41 if test "@@QSPI_KERNEL_IMAGE@@" = "@@FIT_IMAGE@@"; then
37 sf read @@QSPI_FIT_IMAGE_LOAD_ADDRESS@@ @@QSPI_KERNEL_OFFSET@@ @@QSPI_FIT_IMAGE_SIZE@@; 42 sf read @@QSPI_FIT_IMAGE_LOAD_ADDRESS@@ @@QSPI_KERNEL_OFFSET@@ @@QSPI_FIT_IMAGE_SIZE@@;
38 bootm @@QSPI_FIT_IMAGE_LOAD_ADDRESS@@; 43 bootm @@QSPI_FIT_IMAGE_LOAD_ADDRESS@@;
44 exit;
39 fi 45 fi
40 if test "@@QSPI_KERNEL_IMAGE@@" = "@@KERNEL_IMAGE@@"; then 46 if test "@@QSPI_KERNEL_IMAGE@@" = "@@KERNEL_IMAGE@@"; then
41 sf read @@KERNEL_LOAD_ADDRESS@@ @@QSPI_KERNEL_OFFSET@@ @@QSPI_KERNEL_SIZE@@; 47 sf read @@KERNEL_LOAD_ADDRESS@@ @@QSPI_KERNEL_OFFSET@@ @@QSPI_KERNEL_SIZE@@;
42 sf read @@RAMDISK_IMAGE_ADDRESS@@ @@QSPI_RAMDISK_OFFSET@@ @@QSPI_RAMDISK_SIZE@@ 48 sf read @@RAMDISK_IMAGE_ADDRESS@@ @@QSPI_RAMDISK_OFFSET@@ @@QSPI_RAMDISK_SIZE@@
43 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@ 49 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@
50 exit;
44 fi 51 fi
52 exit;
45 fi 53 fi
46 if test "${boot_target}" = "nand" || test "${boot_target}" = "nand0"; then 54 if test "${boot_target}" = "nand" || test "${boot_target}" = "nand0"; then
47 nand info 55 nand info
48 if test "@@NAND_KERNEL_IMAGE@@" = "@@FIT_IMAGE@@"; then 56 if test "@@NAND_KERNEL_IMAGE@@" = "@@FIT_IMAGE@@"; then
49 nand read @@NAND_FIT_IMAGE_LOAD_ADDRESS@@ @@NAND_KERNEL_OFFSET@@ @@NAND_FIT_IMAGE_SIZE@@; 57 nand read @@NAND_FIT_IMAGE_LOAD_ADDRESS@@ @@NAND_KERNEL_OFFSET@@ @@NAND_FIT_IMAGE_SIZE@@;
50 bootm @@NAND_FIT_IMAGE_LOAD_ADDRESS@@; 58 bootm @@NAND_FIT_IMAGE_LOAD_ADDRESS@@;
59 exit;
51 fi 60 fi
52 if test "@@NAND_KERNEL_IMAGE@@" = "@@KERNEL_IMAGE@@"; then 61 if test "@@NAND_KERNEL_IMAGE@@" = "@@KERNEL_IMAGE@@"; then
53 nand read @@KERNEL_LOAD_ADDRESS@@ @@NAND_KERNEL_OFFSET@@ @@NAND_KERNEL_SIZE@@; 62 nand read @@KERNEL_LOAD_ADDRESS@@ @@NAND_KERNEL_OFFSET@@ @@NAND_KERNEL_SIZE@@;
54 nand read @@RAMDISK_IMAGE_ADDRESS@@ @@NAND_RAMDISK_OFFSET@@ @@NAND_RAMDISK_SIZE@@; 63 nand read @@RAMDISK_IMAGE_ADDRESS@@ @@NAND_RAMDISK_OFFSET@@ @@NAND_RAMDISK_SIZE@@;
55 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@ 64 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@
65 exit;
56 fi 66 fi
57 fi 67 fi
58done 68done
diff --git a/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr/boot.cmd.ubifs b/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr/boot.cmd.ubifs
index 9ca552a5..2b21c3cf 100644
--- a/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr/boot.cmd.ubifs
+++ b/meta-xilinx-bsp/recipes-bsp/u-boot/u-boot-zynq-scr/boot.cmd.ubifs
@@ -12,6 +12,7 @@ do
12 if test $? = 0; then 12 if test $? = 0; then
13 ubifsload @@QSPI_FIT_IMAGE_LOAD_ADDRESS@@ @@FIT_IMAGE@@; 13 ubifsload @@QSPI_FIT_IMAGE_LOAD_ADDRESS@@ @@FIT_IMAGE@@;
14 bootm @@QSPI_FIT_IMAGE_LOAD_ADDRESS@@; 14 bootm @@QSPI_FIT_IMAGE_LOAD_ADDRESS@@;
15 exit;
15 fi 16 fi
16 ubifsls @@KERNEL_IMAGE@@ 17 ubifsls @@KERNEL_IMAGE@@
17 if test $? = 0; then 18 if test $? = 0; then
@@ -25,14 +26,17 @@ do
25 if test $? = 0; then 26 if test $? = 0; then
26 ubifsload @@RAMDISK_IMAGE_ADDRESS@@ @@RAMDISK_IMAGE@@ 27 ubifsload @@RAMDISK_IMAGE_ADDRESS@@ @@RAMDISK_IMAGE@@
27 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@ 28 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@
29 exit;
28 fi 30 fi
29 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ - @@DEVICETREE_ADDRESS@@ 31 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ - @@DEVICETREE_ADDRESS@@
32 exit;
30 fi 33 fi
31 if test "${boot_target}" = "mmc0" || test "${boot_target}" = "mmc1" ; then 34 if test "${boot_target}" = "mmc0" || test "${boot_target}" = "mmc1" ; then
32 run bootcmd_${boot_target}; 35 run bootcmd_${boot_target};
33 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@FIT_IMAGE@@; then 36 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@FIT_IMAGE@@; then
34 ext4load ${devtype} ${devnum}:${distro_bootpart} @@FIT_IMAGE_LOAD_ADDRESS@@ @@FIT_IMAGE@@; 37 ext4load ${devtype} ${devnum}:${distro_bootpart} @@FIT_IMAGE_LOAD_ADDRESS@@ @@FIT_IMAGE@@;
35 bootm @@FIT_IMAGE_LOAD_ADDRESS@@; 38 bootm @@FIT_IMAGE_LOAD_ADDRESS@@;
39 exit;
36 fi 40 fi
37 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@KERNEL_IMAGE@@; then 41 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@KERNEL_IMAGE@@; then
38 ext4load ${devtype} ${devnum}:${distro_bootpart} @@KERNEL_LOAD_ADDRESS@@ @@KERNEL_IMAGE@@; 42 ext4load ${devtype} ${devnum}:${distro_bootpart} @@KERNEL_LOAD_ADDRESS@@ @@KERNEL_IMAGE@@;
@@ -43,7 +47,9 @@ do
43 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@RAMDISK_IMAGE@@; then 47 if test -e ${devtype} ${devnum}:${distro_bootpart} /@@RAMDISK_IMAGE@@; then
44 ext4load ${devtype} ${devnum}:${distro_bootpart} @@RAMDISK_IMAGE_ADDRESS@@ @@RAMDISK_IMAGE@@; 48 ext4load ${devtype} ${devnum}:${distro_bootpart} @@RAMDISK_IMAGE_ADDRESS@@ @@RAMDISK_IMAGE@@;
45 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@ 49 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ @@RAMDISK_IMAGE_ADDRESS@@ @@DEVICETREE_ADDRESS@@
50 exit;
46 fi 51 fi
47 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ - @@DEVICETREE_ADDRESS@@ 52 @@KERNEL_BOOTCMD@@ @@KERNEL_LOAD_ADDRESS@@ - @@DEVICETREE_ADDRESS@@
53 exit;
48 fi 54 fi
49done 55done