]> git.sur5r.net Git - u-boot/commitdiff
arm64: zynqmp: Access timestamp_ref_ctrl register only if running in el3
authorSiva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com>
Thu, 7 Dec 2017 09:35:30 +0000 (15:05 +0530)
committerMichal Simek <michal.simek@xilinx.com>
Mon, 18 Dec 2017 08:32:07 +0000 (09:32 +0100)
Access the timestamp ref ctrl register only if runinng
at el3 level otherwise just return. This change fixes
the issue when CRL APB is marked as secure and accessing
when not in el3 causes exception.

Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
board/xilinx/zynqmp/zynqmp.c

index 44af49782cce1e261a01c95ddc33ad96f8378d99..c198a4d9206349e4bfe8aba6108d0dc33868bac9 100644 (file)
@@ -277,10 +277,13 @@ int board_early_init_r(void)
 {
        u32 val;
 
+       if (current_el() != 3)
+               return 0;
+
        val = readl(&crlapb_base->timestamp_ref_ctrl);
        val &= ZYNQMP_CRL_APB_TIMESTAMP_REF_CTRL_CLKACT;
 
-       if (current_el() == 3 && !val) {
+       if (!val) {
                val = readl(&crlapb_base->timestamp_ref_ctrl);
                val |= ZYNQMP_CRL_APB_TIMESTAMP_REF_CTRL_CLKACT;
                writel(val, &crlapb_base->timestamp_ref_ctrl);