6
#define MAX_RX_SIZE IEEE80211_MAX_RTS_THRESHOLD
8
#define RF_PARAM_ANALOGPHY (1 << 0)
9
#define RF_PARAM_ANTBDEFAULT (1 << 1)
10
#define RF_PARAM_CARRIERSENSE1 (1 << 2)
11
#define RF_PARAM_CARRIERSENSE2 (1 << 3)
13
#define BB_ANTATTEN_CHAN14 0x0C
14
#define BB_ANTENNA_B 0x40
16
#define BB_HOST_BANG (1 << 30)
17
#define BB_HOST_BANG_EN (1 << 2)
18
#define BB_HOST_BANG_CLK (1 << 1)
19
#define BB_HOST_BANG_DATA 1
21
#define ANAPARAM_TXDACOFF_SHIFT 27
22
#define ANAPARAM_PWR0_SHIFT 28
23
#define ANAPARAM_PWR0_MASK (0x07 << ANAPARAM_PWR0_SHIFT)
24
#define ANAPARAM_PWR1_SHIFT 20
25
#define ANAPARAM_PWR1_MASK (0x7F << ANAPARAM_PWR1_SHIFT)
27
struct rtl8180_tx_desc {
41
struct rtl8180_rx_desc {
50
struct rtl8180_tx_ring {
51
struct rtl8180_tx_desc *desc;
55
struct sk_buff_head queue;
59
struct ieee80211_hw *dev;
62
struct delayed_work beacon_work;
67
/* common between rtl818x drivers */
68
struct rtl818x_csr __iomem *map;
69
const struct rtl818x_rf_ops *rf;
70
struct ieee80211_vif *vif;
72
/* rtl8180 driver specific */
74
struct rtl8180_rx_desc *rx_ring;
75
dma_addr_t rx_ring_dma;
77
struct sk_buff *rx_buf[32];
78
struct rtl8180_tx_ring tx_ring[4];
79
struct ieee80211_channel channels[14];
80
struct ieee80211_rate rates[12];
81
struct ieee80211_supported_band band;
94
void rtl8180_write_phy(struct ieee80211_hw *dev, u8 addr, u32 data);
95
void rtl8180_set_anaparam(struct rtl8180_priv *priv, u32 anaparam);
97
static inline u8 rtl818x_ioread8(struct rtl8180_priv *priv, u8 __iomem *addr)
102
static inline u16 rtl818x_ioread16(struct rtl8180_priv *priv, __le16 __iomem *addr)
104
return ioread16(addr);
107
static inline u32 rtl818x_ioread32(struct rtl8180_priv *priv, __le32 __iomem *addr)
109
return ioread32(addr);
112
static inline void rtl818x_iowrite8(struct rtl8180_priv *priv,
113
u8 __iomem *addr, u8 val)
118
static inline void rtl818x_iowrite16(struct rtl8180_priv *priv,
119
__le16 __iomem *addr, u16 val)
121
iowrite16(val, addr);
124
static inline void rtl818x_iowrite32(struct rtl8180_priv *priv,
125
__le32 __iomem *addr, u32 val)
127
iowrite32(val, addr);
130
#endif /* RTL8180_H */