1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /****************************************************************************** 3 * 4 * Copyright(c) 2016 Realtek Corporation. 5 * 6 * Contact Information: 7 * wlanfae <wlanfae@realtek.com> 8 * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 9 * Hsinchu 300, Taiwan. 10 * 11 * Larry Finger <Larry.Finger@lwfinger.net> 12 * 13 *****************************************************************************/ 14 #ifndef _HALMAC_API_88XX_SDIO_H_ 15 #define _HALMAC_API_88XX_SDIO_H_ 16 17 #include "../halmac_2_platform.h" 18 #include "../halmac_type.h" 19 20 enum halmac_ret_status 21 halmac_init_sdio_cfg_88xx(struct halmac_adapter *halmac_adapter); 22 23 enum halmac_ret_status 24 halmac_deinit_sdio_cfg_88xx(struct halmac_adapter *halmac_adapter); 25 26 enum halmac_ret_status 27 halmac_cfg_rx_aggregation_88xx_sdio(struct halmac_adapter *halmac_adapter, 28 struct halmac_rxagg_cfg *phalmac_rxagg_cfg); 29 30 u8 halmac_reg_read_8_sdio_88xx(struct halmac_adapter *halmac_adapter, 31 u32 halmac_offset); 32 33 enum halmac_ret_status 34 halmac_reg_write_8_sdio_88xx(struct halmac_adapter *halmac_adapter, 35 u32 halmac_offset, u8 halmac_data); 36 37 u16 halmac_reg_read_16_sdio_88xx(struct halmac_adapter *halmac_adapter, 38 u32 halmac_offset); 39 40 enum halmac_ret_status 41 halmac_reg_write_16_sdio_88xx(struct halmac_adapter *halmac_adapter, 42 u32 halmac_offset, u16 halmac_data); 43 44 u32 halmac_reg_read_32_sdio_88xx(struct halmac_adapter *halmac_adapter, 45 u32 halmac_offset); 46 47 enum halmac_ret_status 48 halmac_reg_write_32_sdio_88xx(struct halmac_adapter *halmac_adapter, 49 u32 halmac_offset, u32 halmac_data); 50 51 enum halmac_ret_status 52 halmac_get_sdio_tx_addr_88xx(struct halmac_adapter *halmac_adapter, 53 u8 *halmac_buf, u32 halmac_size, u32 *pcmd53_addr); 54 55 enum halmac_ret_status 56 halmac_cfg_tx_agg_align_sdio_88xx(struct halmac_adapter *halmac_adapter, 57 u8 enable, u16 align_size); 58 59 enum halmac_ret_status halmac_cfg_tx_agg_align_sdio_not_support_88xx( 60 struct halmac_adapter *halmac_adapter, u8 enable, u16 align_size); 61 62 enum halmac_ret_status 63 halmac_tx_allowed_sdio_88xx(struct halmac_adapter *halmac_adapter, 64 u8 *halmac_buf, u32 halmac_size); 65 66 u32 halmac_reg_read_indirect_32_sdio_88xx(struct halmac_adapter *halmac_adapter, 67 u32 halmac_offset); 68 69 u8 halmac_reg_read_nbyte_sdio_88xx(struct halmac_adapter *halmac_adapter, 70 u32 halmac_offset, u32 halmac_size, 71 u8 *halmac_data); 72 73 #endif /* _HALMAC_API_88XX_SDIO_H_ */ 74