cam_icp_utils.h 638 B

12345678910111213141516171819202122232425262728293031
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copyright (c) 2021, The Linux Foundation. All rights reserved.
  4. */
  5. #ifndef _CAM_ICP_UTILS_H_
  6. #define _CAM_ICP_UTILS_H_
  7. #include <linux/firmware.h>
  8. #include <linux/elf.h>
  9. #include <linux/iopoll.h>
  10. #include "cam_debug_util.h"
  11. /**
  12. * @brief : Validate FW elf image
  13. */
  14. int32_t cam_icp_validate_fw(const uint8_t *elf, uint32_t machine_id);
  15. /**
  16. * @brief : Get FW elf size
  17. */
  18. int32_t cam_icp_get_fw_size(const uint8_t *elf, uint32_t *fw_size);
  19. /**
  20. * @brief : Program FW memory
  21. */
  22. int32_t cam_icp_program_fw(const uint8_t *elf,
  23. uintptr_t fw_kva_addr);
  24. #endif /* _CAM_ICP_UTILS_H_ */