sec_firmware.h 939 B

1234567891011121314151617181920212223242526272829303132333435
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright 2016 NXP Semiconductor, Inc.
  4. */
  5. #ifndef __SEC_FIRMWARE_H_
  6. #define __SEC_FIRMWARE_H_
  7. #define PSCI_INVALID_VER 0xffffffff
  8. #define SEC_JR3_OFFSET 0x40000
  9. #define WORD_MASK 0xffffffff
  10. #define WORD_SHIFT 32
  11. int sec_firmware_init(const void *, u32 *, u32 *, u32 *, u32 *);
  12. int _sec_firmware_entry(const void *, u32 *, u32 *);
  13. bool sec_firmware_is_valid(const void *);
  14. bool sec_firmware_support_hwrng(void);
  15. int sec_firmware_get_random(uint8_t *rand, int bytes);
  16. int fdt_fixup_kaslr(void *fdt);
  17. #ifdef CONFIG_SEC_FIRMWARE_ARMV8_PSCI
  18. unsigned int sec_firmware_support_psci_version(void);
  19. unsigned int _sec_firmware_support_psci_version(void);
  20. #else
  21. static inline unsigned int sec_firmware_support_psci_version(void)
  22. {
  23. return PSCI_INVALID_VER;
  24. }
  25. #endif
  26. static inline unsigned int sec_firmware_used_jobring_offset(void)
  27. {
  28. return SEC_JR3_OFFSET;
  29. }
  30. #endif /* __SEC_FIRMWARE_H_ */