1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /****************************************************************************** 3 * 4 * Copyright(c) 2007 - 2017 Realtek Corporation. 5 * 6 * This program is free software; you can redistribute it and/or modify it 7 * under the terms of version 2 of the GNU General Public License as 8 * published by the Free Software Foundation. 9 * 10 * This program is distributed in the hope that it will be useful, but WITHOUT 11 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 12 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 13 * more details. 14 * 15 *****************************************************************************/ 16 #ifndef __PCI_OPS_H_ 17 #define __PCI_OPS_H_ 18 19 20 #ifdef CONFIG_RTL8188E 21 u32 rtl8188ee_init_desc_ring(_adapter *padapter); 22 u32 rtl8188ee_free_desc_ring(_adapter *padapter); 23 void rtl8188ee_reset_desc_ring(_adapter *padapter); 24 int rtl8188ee_interrupt(PADAPTER Adapter); 25 void rtl8188ee_xmit_tasklet(void *priv); 26 void rtl8188ee_recv_tasklet(void *priv); 27 void rtl8188ee_prepare_bcn_tasklet(void *priv); 28 void rtl8188ee_set_intf_ops(struct _io_ops *pops); 29 void rtw8188ee_unmap_beacon_icf(_adapter *padapter); 30 #endif 31 32 #if defined(CONFIG_RTL8812A) || defined(CONFIG_RTL8821A) 33 u32 rtl8812ae_init_desc_ring(_adapter *padapter); 34 u32 rtl8812ae_free_desc_ring(_adapter *padapter); 35 void rtl8812ae_reset_desc_ring(_adapter *padapter); 36 int rtl8812ae_interrupt(PADAPTER Adapter); 37 void rtl8812ae_xmit_tasklet(void *priv); 38 void rtl8812ae_recv_tasklet(void *priv); 39 void rtl8812ae_prepare_bcn_tasklet(void *priv); 40 void rtl8812ae_set_intf_ops(struct _io_ops *pops); 41 void rtw8812ae_unmap_beacon_icf(_adapter *padapter); 42 #endif 43 44 #ifdef CONFIG_RTL8192E 45 u32 rtl8192ee_init_desc_ring(_adapter *padapter); 46 u32 rtl8192ee_free_desc_ring(_adapter *padapter); 47 void rtl8192ee_reset_desc_ring(_adapter *padapter); 48 void rtl8192ee_recv_tasklet(void *priv); 49 void rtl8192ee_prepare_bcn_tasklet(void *priv); 50 int rtl8192ee_interrupt(PADAPTER Adapter); 51 void rtl8192ee_set_intf_ops(struct _io_ops *pops); 52 void rtw8192ee_unmap_beacon_icf(_adapter *padapter); 53 #endif 54 55 #ifdef CONFIG_RTL8192F 56 u32 rtl8192fe_init_desc_ring(_adapter *padapter); 57 u32 rtl8192fe_free_desc_ring(_adapter *padapter); 58 void rtl8192fe_reset_desc_ring(_adapter *padapter); 59 int rtl8192fe_interrupt(PADAPTER Adapter); 60 void rtl8192fe_recv_tasklet(void *priv); 61 void rtl8192fe_prepare_bcn_tasklet(void *priv); 62 void rtl8192fe_set_intf_ops(struct _io_ops *pops); 63 u8 check_tx_desc_resource(_adapter *padapter, int prio); 64 void rtl8192fe_unmap_beacon_icf(PADAPTER Adapter); 65 #endif 66 67 #ifdef CONFIG_RTL8723B 68 u32 rtl8723be_init_desc_ring(_adapter *padapter); 69 u32 rtl8723be_free_desc_ring(_adapter *padapter); 70 void rtl8723be_reset_desc_ring(_adapter *padapter); 71 int rtl8723be_interrupt(PADAPTER Adapter); 72 void rtl8723be_recv_tasklet(void *priv); 73 void rtl8723be_prepare_bcn_tasklet(void *priv); 74 void rtl8723be_set_intf_ops(struct _io_ops *pops); 75 void rtl8723be_unmap_beacon_icf(PADAPTER Adapter); 76 #endif 77 78 #ifdef CONFIG_RTL8723D 79 u32 rtl8723de_init_desc_ring(_adapter *padapter); 80 u32 rtl8723de_free_desc_ring(_adapter *padapter); 81 void rtl8723de_reset_desc_ring(_adapter *padapter); 82 int rtl8723de_interrupt(PADAPTER Adapter); 83 void rtl8723de_recv_tasklet(void *priv); 84 void rtl8723de_prepare_bcn_tasklet(void *priv); 85 void rtl8723de_set_intf_ops(struct _io_ops *pops); 86 u8 check_tx_desc_resource(_adapter *padapter, int prio); 87 void rtl8723de_unmap_beacon_icf(PADAPTER Adapter); 88 #endif 89 90 #ifdef CONFIG_RTL8814A 91 u32 rtl8814ae_init_desc_ring(_adapter *padapter); 92 u32 rtl8814ae_free_desc_ring(_adapter *padapter); 93 void rtl8814ae_reset_desc_ring(_adapter *padapter); 94 int rtl8814ae_interrupt(PADAPTER Adapter); 95 void rtl8814ae_xmit_tasklet(void *priv); 96 void rtl8814ae_recv_tasklet(void *priv); 97 void rtl8814ae_prepare_bcn_tasklet(void *priv); 98 void rtl8814ae_set_intf_ops(struct _io_ops *pops); 99 void rtl8814ae_unmap_beacon_icf(PADAPTER Adapter); 100 #endif 101 102 #ifdef CONFIG_RTL8822B 103 void rtl8822be_set_intf_ops(struct _io_ops *pops); 104 #endif 105 106 #ifdef CONFIG_RTL8821C 107 void rtl8821ce_set_intf_ops(struct _io_ops *pops); 108 #endif 109 110 #ifdef CONFIG_RTL8822C 111 void rtl8822ce_set_intf_ops(struct _io_ops *pops); 112 #endif 113 114 #ifdef CONFIG_RTL8814B 115 void rtl8814be_set_intf_ops(struct _io_ops *pops); 116 #endif 117 #endif 118