hfi_packet.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copyright (c) 2020, The Linux Foundation. All rights reserved.
  4. */
  5. #ifndef _HFI_PACKET_H_
  6. #define _HFI_PACKET_H_
  7. #include "msm_vidc_internal.h"
  8. #include "msm_vidc_inst.h"
  9. #include "msm_vidc_core.h"
  10. #include "hfi_command.h"
  11. #include "hfi_property.h"
  12. #include "hfi_definition.h"
  13. int hfi_create_header(u8 *pkt, u32 session_id,
  14. u32 header_id, u32 num_packets, u32 total_size);
  15. int hfi_create_packet(u8 *packet, u32 packet_size, u32 *offset,
  16. u32 pkt_type, u32 pkt_flags, u32 payload_type, u32 port,
  17. u32 packet_id, void *payload, u32 payload_size);
  18. int hfi_create_buffer(u8 *packet, u32 packet_size, u32 *offset,
  19. enum msm_vidc_domain_type domain, struct msm_vidc_buffer *data);
  20. int hfi_packet_sys_init(struct msm_vidc_core *core,
  21. u8 *pkt, u32 pkt_size);
  22. int hfi_packet_image_version(struct msm_vidc_core *core,
  23. u8 *pkt, u32 pkt_size);
  24. int hfi_packet_sys_pc_prep(struct msm_vidc_core *core,
  25. u8 *pkt, u32 pkt_size);
  26. int hfi_packet_sys_debug_config(struct msm_vidc_core *core,
  27. u8 *pkt, u32 pkt_size, u32 debug_config);
  28. int hfi_packet_session_command(struct msm_vidc_inst *inst,
  29. u32 pkt_type, u32 flags, u32 port, u32 session_id,
  30. u32 payload_type, void *payload, u32 payload_size);
  31. int hfi_packet_create_property(struct msm_vidc_inst *inst,
  32. void *pkt, u32 pkt_size, u32 pkt_type, u32 flags,
  33. u32 port, u32 payload, u32 payload_type, u32 payload_size);
  34. #endif // _HFI_PACKET_H_