param_header_exp.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /*
  2. * Copyright (c) 2019, ARM Limited and Contributors. All rights reserved.
  3. *
  4. * SPDX-License-Identifier: BSD-3-Clause
  5. */
  6. #ifndef ARM_TRUSTED_FIRMWARE_EXPORT_COMMON_PARAM_HEADER_EXP_H
  7. #define ARM_TRUSTED_FIRMWARE_EXPORT_COMMON_PARAM_HEADER_EXP_H
  8. /* EXPORT HEADER -- See include/export/README for details! -- EXPORT HEADER */
  9. #include "../lib/utils_def_exp.h"
  10. /* Param header types */
  11. #define PARAM_EP U(0x01)
  12. #define PARAM_IMAGE_BINARY U(0x02)
  13. #define PARAM_BL31 U(0x03)
  14. #define PARAM_BL_LOAD_INFO U(0x04)
  15. #define PARAM_BL_PARAMS U(0x05)
  16. #define PARAM_PSCI_LIB_ARGS U(0x06)
  17. #define PARAM_SP_IMAGE_BOOT_INFO U(0x07)
  18. /* Param header version */
  19. #define PARAM_VERSION_1 U(0x01)
  20. #define PARAM_VERSION_2 U(0x02)
  21. #ifndef __ASSEMBLER__
  22. /***************************************************************************
  23. * This structure provides version information and the size of the
  24. * structure, attributes for the structure it represents
  25. ***************************************************************************/
  26. typedef struct param_header {
  27. uint8_t type; /* type of the structure */
  28. uint8_t version; /* version of this structure */
  29. uint16_t size; /* size of this structure in bytes */
  30. uint32_t attr; /* attributes: unused bits SBZ */
  31. } param_header_t;
  32. #endif /*__ASSEMBLER__*/
  33. #endif /* ARM_TRUSTED_FIRMWARE_EXPORT_COMMON_PARAM_HEADER_EXP_H */