fpga: zynqmp: Modify PL bitstream loading sequence
[oweals/u-boot.git] / arch / arm / include / asm / arch-zynqmp / sys_proto.h
index ad3dc9aba50d0b956f575bb21dba9b4dbb74a47b..9fa44d084c0672414d3306928e1ebe74cdd610fc 100644 (file)
@@ -1,8 +1,7 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
  * (C) Copyright 2014 - 2015 Xilinx, Inc.
  * Michal Simek <michal.simek@xilinx.com>
- *
- * SPDX-License-Identifier:    GPL-2.0+
  */
 
 #ifndef _ASM_ARCH_SYS_PROTO_H
 #define ZYNQMP_SIP_SVC_PM_SECURE_IMG_LOAD      0xC200002D
 #define KEY_PTR_LEN    32
 
+#define ZYNQMP_FPGA_BIT_AUTH_DDR       1
+#define ZYNQMP_FPGA_BIT_AUTH_OCM       2
+#define ZYNQMP_FPGA_BIT_ENC_USR_KEY    3
+#define ZYNQMP_FPGA_BIT_ENC_DEV_KEY    4
+#define ZYNQMP_FPGA_BIT_NS             5
+
+#define ZYNQMP_FPGA_AUTH_DDR   1
+
+#define ZYNQMP_SIP_SVC_GET_API_VERSION         0xC2000001
+
+#define ZYNQMP_PM_VERSION_MAJOR                1
+#define ZYNQMP_PM_VERSION_MINOR                0
+#define ZYNQMP_PM_VERSION_MAJOR_SHIFT  16
+#define ZYNQMP_PM_VERSION_MINOR_MASK   0xFFFF
+
+#define ZYNQMP_PM_VERSION      \
+       ((ZYNQMP_PM_VERSION_MAJOR << ZYNQMP_PM_VERSION_MAJOR_SHIFT) | \
+                                ZYNQMP_PM_VERSION_MINOR)
+
+#define ZYNQMP_PM_VERSION_INVALID      ~0
+
+#define PMUFW_V1_0     ((1 << ZYNQMP_PM_VERSION_MAJOR_SHIFT) | 0)
+
 enum {
        IDCODE,
        VERSION,
@@ -37,14 +59,14 @@ unsigned int zynqmp_get_silicon_version(void);
 
 void handoff_setup(void);
 
-void zynqmp_pmufw_version(void);
+unsigned int zynqmp_pmufw_version(void);
 int zynqmp_mmio_write(const u32 address, const u32 mask, const u32 value);
 int zynqmp_mmio_read(const u32 address, u32 *value);
 int invoke_smc(u32 pm_api_id, u32 arg0, u32 arg1, u32 arg2, u32 arg3,
               u32 *ret_payload);
 
 void initialize_tcm(bool mode);
-
+void mem_map_fill(void);
 int chip_id(unsigned char id);
 
 #endif /* _ASM_ARCH_SYS_PROTO_H */