tzh
2024-08-15 d4a1bd480003f3e1a0590bc46fbcb24f05652ca7
longan/kernel/linux-4.9/drivers/net/wireless/aic8800/aic8800_fdrv/aicwf_sdio.h
old mode 100644new mode 100755
....@@ -39,11 +39,14 @@
3939 #define SDIO_SLEEP_ST 0
4040 #define SDIO_ACTIVE_ST 1
4141
42
+#define DATA_FLOW_CTRL_THRESH 2
43
+
4244 typedef enum {
4345 SDIO_TYPE_DATA = 0X00,
4446 SDIO_TYPE_CFG = 0X10,
4547 SDIO_TYPE_CFG_CMD_RSP = 0X11,
46
- SDIO_TYPE_CFG_DATA_CFM = 0X12
48
+ SDIO_TYPE_CFG_DATA_CFM = 0X12,
49
+ SDIO_TYPE_CFG_PRINT = 0X13
4750 } sdio_type;
4851
4952 struct rwnx_hw;
....@@ -75,6 +78,7 @@
7578 int aicwf_sdio_func_init(struct aic_sdio_dev *sdiodev);
7679 void aicwf_sdio_func_deinit(struct aic_sdio_dev *sdiodev);
7780 int aicwf_sdio_flow_ctrl(struct aic_sdio_dev *sdiodev);
81
+int aicwf_sdio_flow_ctrl_msg(struct aic_sdio_dev *sdiodev);
7882 int aicwf_sdio_recv_pkt(struct aic_sdio_dev *sdiodev, struct sk_buff *skbbuf, u32 size);
7983 int aicwf_sdio_send_pkt(struct aic_sdio_dev *sdiodev, u8 *buf, uint count);
8084 void *aicwf_sdio_bus_init(struct aic_sdio_dev *sdiodev);
....@@ -85,10 +89,11 @@
8589 int sdio_bustx_thread(void *data);
8690 int sdio_busrx_thread(void *data);
8791 int aicwf_sdio_aggr(struct aicwf_tx_priv *tx_priv, struct sk_buff *pkt);
88
-int aicwf_sdio_send(struct aicwf_tx_priv *tx_priv);
92
+int aicwf_sdio_send(struct aicwf_tx_priv *tx_priv, u8 txnow);
8993 void aicwf_sdio_aggr_send(struct aicwf_tx_priv *tx_priv);
9094 void aicwf_sdio_aggrbuf_reset(struct aicwf_tx_priv *tx_priv);
9195 extern void aicwf_hostif_ready(void);
96
+extern void aicwf_hostif_fail(void);
9297 #ifdef CONFIG_PLATFORM_NANOPI
9398 extern void extern_wifi_set_enable(int is_on);
9499 extern void sdio_reinit(void);