#ifndef _MWIFIEX_SDIO_H
#define _MWIFIEX_SDIO_H
#include <linux/completion.h>
#include <linux/mmc/sdio.h>
#include <linux/mmc/sdio_ids.h>
#include <linux/mmc/sdio_func.h>
#include <linux/mmc/card.h>
#include <linux/mmc/host.h>
#include "main.h"
#define SD8786_DEFAULT_FW_NAME …
#define SD8787_DEFAULT_FW_NAME …
#define SD8797_DEFAULT_FW_NAME …
#define SD8897_DEFAULT_FW_NAME …
#define SD8887_DEFAULT_FW_NAME …
#define SD8801_DEFAULT_FW_NAME …
#define SD8977_DEFAULT_FW_NAME …
#define SD8978_SDIOUART_FW_NAME …
#define SD8987_DEFAULT_FW_NAME …
#define SD8997_DEFAULT_FW_NAME …
#define SD8997_SDIOUART_FW_NAME …
#define BLOCK_MODE …
#define BYTE_MODE …
#define MWIFIEX_SDIO_IO_PORT_MASK …
#define MWIFIEX_SDIO_BYTE_MODE_MASK …
#define MWIFIEX_MAX_FUNC2_REG_NUM …
#define MWIFIEX_SDIO_SCRATCH_SIZE …
#define SDIO_MPA_ADDR_BASE …
#define CTRL_PORT …
#define CTRL_PORT_MASK …
#define CMD_PORT_UPLD_INT_MASK …
#define CMD_PORT_DNLD_INT_MASK …
#define HOST_TERM_CMD53 …
#define REG_PORT …
#define MEM_PORT …
#define CMD53_NEW_MODE …
#define CMD_PORT_RD_LEN_EN …
#define CMD_PORT_AUTO_EN …
#define CMD_PORT_SLCT …
#define UP_LD_CMD_PORT_HOST_INT_STATUS …
#define DN_LD_CMD_PORT_HOST_INT_STATUS …
#define MWIFIEX_MP_AGGR_BUF_SIZE_16K …
#define MWIFIEX_MP_AGGR_BUF_SIZE_32K …
#define MWIFIEX_MP_AGGR_BUF_SIZE_MAX …
#define AUTO_RE_ENABLE_INT …
#define CONFIGURATION_REG …
#define HOST_POWER_UP …
#define UP_LD_HOST_INT_MASK …
#define DN_LD_HOST_INT_MASK …
#define UP_LD_HOST_INT_STATUS …
#define DN_LD_HOST_INT_STATUS …
#define CARD_INT_STATUS_REG …
#define CARD_IO_READY …
#define DN_LD_CARD_RDY …
#define MAX_WRITE_IOMEM_RETRY …
#define MP_TX_AGGR_IN_PROGRESS(a) …
#define MP_TX_AGGR_BUF_HAS_ROOM(a, len) …
#define MP_TX_AGGR_BUF_PUT(a, payload, pkt_len, port) …
#define MP_TX_AGGR_PKT_LIMIT_REACHED(a) …
#define MP_TX_AGGR_BUF_RESET(a) …
#define MP_RX_AGGR_PKT_LIMIT_REACHED(a) …
#define MP_RX_AGGR_IN_PROGRESS(a) …
#define MP_RX_AGGR_BUF_HAS_ROOM(a, rx_len) …
#define MP_RX_AGGR_BUF_RESET(a) …
struct mwifiex_sdio_mpa_tx { … };
struct mwifiex_sdio_mpa_rx { … };
int mwifiex_bus_register(void);
void mwifiex_bus_unregister(void);
struct mwifiex_sdio_card_reg { … };
struct sdio_mmc_card { … };
struct mwifiex_sdio_device { … };
static inline int mwifiex_sdio_cmdrsp_complete(struct mwifiex_adapter *adapter,
struct sk_buff *skb)
{ … }
static inline int mwifiex_sdio_event_complete(struct mwifiex_adapter *adapter,
struct sk_buff *skb)
{ … }
static inline bool
mp_rx_aggr_port_limit_reached(struct sdio_mmc_card *card)
{ … }
static inline bool
mp_tx_aggr_port_limit_reached(struct sdio_mmc_card *card)
{ … }
static inline void mp_rx_aggr_setup(struct sdio_mmc_card *card,
u16 rx_len, u8 port)
{ … }
#endif