diff mbox series

arm64: zynqmp: Setup multiboot register to 0

Message ID edaf714a778bdd7447533a77b3455e4fd623f9da.1717420131.git.michal.simek@amd.com
State Accepted
Commit 8ef61c22cd4374e4fcef8278041ec4f69587e394
Delegated to: Michal Simek
Headers show
Series arm64: zynqmp: Setup multiboot register to 0 | expand

Commit Message

Michal Simek June 3, 2024, 1:09 p.m. UTC
On Kria when board starts from Image A or Image B partition multiboot
register is already setup to that location. When reset command is called
board is issuing soft reset which start SW at already used location (offset
of multiboot * 32k).
But board should continue to run from multiboot offset 0 (start of QSPI)
and call early bootloader every reboot that's why clear multiboot register
to 0 by default to go that route all the time.

Signed-off-by: Michal Simek <michal.simek@amd.com>
---

 board/xilinx/zynqmp/zynqmp_kria.env | 1 +
 1 file changed, 1 insertion(+)

Comments

Michal Simek June 11, 2024, 11:02 a.m. UTC | #1
On 6/3/24 15:09, Michal Simek wrote:
> On Kria when board starts from Image A or Image B partition multiboot
> register is already setup to that location. When reset command is called
> board is issuing soft reset which start SW at already used location (offset
> of multiboot * 32k).
> But board should continue to run from multiboot offset 0 (start of QSPI)
> and call early bootloader every reboot that's why clear multiboot register
> to 0 by default to go that route all the time.
> 
> Signed-off-by: Michal Simek <michal.simek@amd.com>
> ---
> 
>   board/xilinx/zynqmp/zynqmp_kria.env | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/board/xilinx/zynqmp/zynqmp_kria.env b/board/xilinx/zynqmp/zynqmp_kria.env
> index 846eceb0118d..69e333c53887 100644
> --- a/board/xilinx/zynqmp/zynqmp_kria.env
> +++ b/board/xilinx/zynqmp/zynqmp_kria.env
> @@ -65,6 +65,7 @@ kd240_setup=i2c dev 1 && run usb_hub_init;zynqmp pmufw node 33; zynqmp pmufw nod
>   tpm_setup=tpm autostart;
>   
>   board_setup=\
> +zynqmp mmio_write 0xFFCA0010 0xfff 0; \
>   if test ${card1_name} = SCK-KV-G; then run kv260_setup; fi;\
>   if test ${card1_name} = SCK-KR-G; then run kr260_setup; fi;\
>   if test ${card1_name} = SCK-KD-G; then run kd240_setup; fi;\

Applied.
M
diff mbox series

Patch

diff --git a/board/xilinx/zynqmp/zynqmp_kria.env b/board/xilinx/zynqmp/zynqmp_kria.env
index 846eceb0118d..69e333c53887 100644
--- a/board/xilinx/zynqmp/zynqmp_kria.env
+++ b/board/xilinx/zynqmp/zynqmp_kria.env
@@ -65,6 +65,7 @@  kd240_setup=i2c dev 1 && run usb_hub_init;zynqmp pmufw node 33; zynqmp pmufw nod
 tpm_setup=tpm autostart;
 
 board_setup=\
+zynqmp mmio_write 0xFFCA0010 0xfff 0; \
 if test ${card1_name} = SCK-KV-G; then run kv260_setup; fi;\
 if test ${card1_name} = SCK-KR-G; then run kr260_setup; fi;\
 if test ${card1_name} = SCK-KD-G; then run kd240_setup; fi;\