1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * Copyright (c) 2022-2024 Qualcomm Innovation Center, Inc. All rights reserved. 4 */ 5 6 #ifndef __IRIS_HFI_GEN2_H__ 7 #define __IRIS_HFI_GEN2_H__ 8 9 #include "iris_instance.h" 10 11 struct iris_core; 12 13 #define to_iris_inst_hfi_gen2(ptr) \ 14 container_of(ptr, struct iris_inst_hfi_gen2, inst) 15 16 /** 17 * struct iris_inst_hfi_gen2 - holds per video instance parameters for hfi_gen2 18 * 19 * @inst: pointer to iris_instance structure 20 * @packet: HFI packet 21 * @ipsc_properties_set: boolean to set ipsc properties to fw 22 * @opsc_properties_set: boolean to set opsc properties to fw 23 * @hfi_frame_info: structure of frame info 24 * @src_subcr_params: subscription params to fw on input port 25 * @dst_subcr_params: subscription params to fw on output port 26 */ 27 struct iris_inst_hfi_gen2 { 28 struct iris_inst inst; 29 struct iris_hfi_header *packet; 30 bool ipsc_properties_set; 31 bool opsc_properties_set; 32 struct iris_hfi_frame_info hfi_frame_info; 33 struct hfi_subscription_params src_subcr_params; 34 struct hfi_subscription_params dst_subcr_params; 35 }; 36 37 void iris_hfi_gen2_command_ops_init(struct iris_core *core); 38 void iris_hfi_gen2_response_ops_init(struct iris_core *core); 39 struct iris_inst *iris_hfi_gen2_get_instance(void); 40 41 #endif 42