| 1 | /* SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0-only) */ |
| 2 | /* Copyright(c) 2014 - 2020 Intel Corporation */ |
| 3 | #ifndef _ICP_QAT_FW_PKE_ |
| 4 | #define _ICP_QAT_FW_PKE_ |
| 5 | |
| 6 | #include "icp_qat_fw.h" |
| 7 | |
| 8 | struct icp_qat_fw_req_hdr_pke_cd_pars { |
| 9 | __u64 content_desc_addr; |
| 10 | __u32 content_desc_resrvd; |
| 11 | __u32 func_id; |
| 12 | }; |
| 13 | |
| 14 | struct icp_qat_fw_req_pke_mid { |
| 15 | __u64 opaque; |
| 16 | __u64 src_data_addr; |
| 17 | __u64 dest_data_addr; |
| 18 | }; |
| 19 | |
| 20 | struct icp_qat_fw_req_pke_hdr { |
| 21 | __u8 resrvd1; |
| 22 | __u8 resrvd2; |
| 23 | __u8 service_type; |
| 24 | __u8 hdr_flags; |
| 25 | __u16 comn_req_flags; |
| 26 | __u16 resrvd4; |
| 27 | struct icp_qat_fw_req_hdr_pke_cd_pars cd_pars; |
| 28 | }; |
| 29 | |
| 30 | struct icp_qat_fw_pke_request { |
| 31 | struct icp_qat_fw_req_pke_hdr pke_hdr; |
| 32 | struct icp_qat_fw_req_pke_mid pke_mid; |
| 33 | __u8 output_param_count; |
| 34 | __u8 input_param_count; |
| 35 | __u16 resrvd1; |
| 36 | __u32 resrvd2; |
| 37 | __u64 next_req_adr; |
| 38 | }; |
| 39 | |
| 40 | struct icp_qat_fw_resp_pke_hdr { |
| 41 | __u8 resrvd1; |
| 42 | __u8 resrvd2; |
| 43 | __u8 response_type; |
| 44 | __u8 hdr_flags; |
| 45 | __u16 comn_resp_flags; |
| 46 | __u16 resrvd4; |
| 47 | }; |
| 48 | |
| 49 | struct icp_qat_fw_pke_resp { |
| 50 | struct icp_qat_fw_resp_pke_hdr pke_resp_hdr; |
| 51 | __u64 opaque; |
| 52 | __u64 src_data_addr; |
| 53 | __u64 dest_data_addr; |
| 54 | }; |
| 55 | |
| 56 | #define ICP_QAT_FW_PKE_HDR_VALID_FLAG_BITPOS 7 |
| 57 | #define ICP_QAT_FW_PKE_HDR_VALID_FLAG_MASK 0x1 |
| 58 | #define ICP_QAT_FW_PKE_RESP_PKE_STAT_GET(status_word) \ |
| 59 | QAT_FIELD_GET(((status_word >> ICP_QAT_FW_COMN_ONE_BYTE_SHIFT) & \ |
| 60 | ICP_QAT_FW_COMN_SINGLE_BYTE_MASK), \ |
| 61 | QAT_COMN_RESP_PKE_STATUS_BITPOS, \ |
| 62 | QAT_COMN_RESP_PKE_STATUS_MASK) |
| 63 | |
| 64 | #define ICP_QAT_FW_PKE_HDR_VALID_FLAG_SET(hdr_t, val) \ |
| 65 | QAT_FIELD_SET((hdr_t.hdr_flags), (val), \ |
| 66 | ICP_QAT_FW_PKE_HDR_VALID_FLAG_BITPOS, \ |
| 67 | ICP_QAT_FW_PKE_HDR_VALID_FLAG_MASK) |
| 68 | #endif |
| 69 | |