]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
xilinx: zynqmp: use zynqmp_mmio_read() in multi_boot()
authorMichal Simek <michal.simek@xilinx.com>
Tue, 27 Jul 2021 14:17:31 +0000 (16:17 +0200)
committerMichal Simek <michal.simek@xilinx.com>
Fri, 6 Aug 2021 07:32:02 +0000 (09:32 +0200)
When U-Boot runs in EL2 there is no access to csu_base registers that's why
this has to be done via firmware interface to find out multi boot register
value. Till now this function is called only from SPL in EL3.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
board/xilinx/zynqmp/zynqmp.c

index eb67116d5b44912e567447b844801af2ce68afe1..1b0356c84c5c524e876bf8b180dfec6313a3b593 100644 (file)
@@ -346,9 +346,12 @@ int board_early_init_f(void)
 
 static int multi_boot(void)
 {
-       u32 multiboot;
+       u32 multiboot = 0;
+       int ret;
 
-       multiboot = readl(&csu_base->multi_boot);
+       ret = zynqmp_mmio_read((ulong)&csu_base->multi_boot, &multiboot);
+       if (ret)
+               return -EINVAL;
 
        return multiboot;
 }