1 /* SPDX-License-Identifier: BSD-3-Clause-Clear*/ 2 /* 3 * Copyright (c) 2018-2021 The Linux Foundation. All rights reserved. 4 * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. 5 */ 6 7 #ifndef ATH12K_HAL_QCN9274_H 8 #define ATH12K_HAL_QCN9274_H 9 10 #include <linux/ieee80211.h> 11 #include <linux/etherdevice.h> 12 #include "../hal.h" 13 #include "hal_rx.h" 14 #include "hal.h" 15 16 extern const struct hal_ops hal_qcn9274_ops; 17 extern const struct ath12k_hw_regs qcn9274_v1_regs; 18 extern const struct ath12k_hw_regs qcn9274_v2_regs; 19 extern const struct ath12k_hw_regs ipq5332_regs; 20 extern const struct ath12k_hal_tcl_to_wbm_rbm_map 21 ath12k_hal_tcl_to_wbm_rbm_map_qcn9274[DP_TCL_NUM_RING_MAX]; 22 extern const struct ath12k_hw_hal_params ath12k_hw_hal_params_qcn9274; 23 extern const struct ath12k_hw_hal_params ath12k_hw_hal_params_ipq5332; 24 25 u8 ath12k_hal_rx_desc_get_l3_pad_bytes_qcn9274(struct hal_rx_desc *desc); 26 void ath12k_hal_rx_desc_copy_end_tlv_qcn9274(struct hal_rx_desc *fdesc, 27 struct hal_rx_desc *ldesc); 28 u32 ath12k_hal_rx_desc_get_mpdu_ppdu_id_qcn9274(struct hal_rx_desc *desc); 29 void ath12k_hal_rx_desc_set_msdu_len_qcn9274(struct hal_rx_desc *desc, u16 len); 30 u8 *ath12k_hal_rx_desc_get_msdu_payload_qcn9274(struct hal_rx_desc *desc); 31 u32 ath12k_hal_rx_desc_get_mpdu_start_offset_qcn9274(void); 32 u32 ath12k_hal_rx_desc_get_msdu_end_offset_qcn9274(void); 33 u32 ath12k_hal_get_rx_desc_size_qcn9274(void); 34 u8 ath12k_hal_rx_desc_get_msdu_src_link_qcn9274(struct hal_rx_desc *desc); 35 u16 ath12k_hal_rx_mpdu_start_wmask_get_qcn9274(void); 36 u32 ath12k_hal_rx_msdu_end_wmask_get_qcn9274(void); 37 void ath12k_hal_rx_desc_get_crypto_hdr_qcn9274(struct hal_rx_desc *desc, 38 u8 *crypto_hdr, 39 enum hal_encrypt_type enctype); 40 void ath12k_hal_rx_desc_get_dot11_hdr_qcn9274(struct hal_rx_desc *desc, 41 struct ieee80211_hdr *hdr); 42 void ath12k_hal_extract_rx_desc_data_qcn9274(struct hal_rx_desc_data *rx_desc_data, 43 struct hal_rx_desc *rx_desc, 44 struct hal_rx_desc *ldesc); 45 #endif 46