GNU Linux-libre 4.19.264-gnu1
[releases.git] / drivers / staging / rtlwifi / halmac / halmac_88xx / halmac_api_88xx_usb.h
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_USB_H_
15 #define _HALMAC_API_88XX_USB_H_
16
17 #include "../halmac_2_platform.h"
18 #include "../halmac_type.h"
19
20 enum halmac_ret_status
21 halmac_init_usb_cfg_88xx(struct halmac_adapter *halmac_adapter);
22
23 enum halmac_ret_status
24 halmac_deinit_usb_cfg_88xx(struct halmac_adapter *halmac_adapter);
25
26 enum halmac_ret_status
27 halmac_cfg_rx_aggregation_88xx_usb(struct halmac_adapter *halmac_adapter,
28                                    struct halmac_rxagg_cfg *phalmac_rxagg_cfg);
29
30 u8 halmac_reg_read_8_usb_88xx(struct halmac_adapter *halmac_adapter,
31                               u32 halmac_offset);
32
33 enum halmac_ret_status
34 halmac_reg_write_8_usb_88xx(struct halmac_adapter *halmac_adapter,
35                             u32 halmac_offset, u8 halmac_data);
36
37 u16 halmac_reg_read_16_usb_88xx(struct halmac_adapter *halmac_adapter,
38                                 u32 halmac_offset);
39
40 enum halmac_ret_status
41 halmac_reg_write_16_usb_88xx(struct halmac_adapter *halmac_adapter,
42                              u32 halmac_offset, u16 halmac_data);
43
44 u32 halmac_reg_read_32_usb_88xx(struct halmac_adapter *halmac_adapter,
45                                 u32 halmac_offset);
46
47 enum halmac_ret_status
48 halmac_reg_write_32_usb_88xx(struct halmac_adapter *halmac_adapter,
49                              u32 halmac_offset, u32 halmac_data);
50
51 enum halmac_ret_status
52 halmac_set_bulkout_num_88xx(struct halmac_adapter *halmac_adapter,
53                             u8 bulkout_num);
54
55 enum halmac_ret_status
56 halmac_get_usb_bulkout_id_88xx(struct halmac_adapter *halmac_adapter,
57                                u8 *halmac_buf, u32 halmac_size, u8 *bulkout_id);
58
59 enum halmac_ret_status halmac_cfg_tx_agg_align_usb_not_support_88xx(
60         struct halmac_adapter *halmac_adapter, u8 enable, u16 align_size);
61
62 #endif /* _HALMAC_API_88XX_USB_H_ */