Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/chr/carl9170fw
[carl9170fw.git] / carlfw / include / wl.h
index fb9b09fcbc0a761b416fa3ab4cfa0a4e0e5e6a77..9064dcb2c6af35e28691f1f147e27a86be293aec 100644 (file)
@@ -42,16 +42,21 @@ static inline __inline void set_wlan_txq_dma_curr_addr(const unsigned int q, con
        set(AR9170_MAC_REG_DMA_TXQ_CURR_ADDR + (q << 3), v);
 }
 
-static inline __inline struct dma_desc *get_wlan_txq_dma_addr(const unsigned int q)
+static inline __inline volatile struct dma_desc *get_wlan_txq_dma_addr(const unsigned int q)
 {
        return getp(AR9170_MAC_REG_DMA_TXQ_ADDR + (q << 3));
 }
 
-static inline __inline struct dma_desc *get_wlan_txq_addr(const unsigned int q)
+static inline __inline volatile struct dma_desc *get_wlan_txq_addr(const unsigned int q)
 {
        return getp(AR9170_MAC_REG_DMA_TXQ_CURR_ADDR + (q << 3));
 }
 
+static inline __inline volatile struct dma_desc *get_wlan_txq_last_addr(const unsigned int q)
+{
+       return getp(AR9170_MAC_REG_DMA_TXQ_LAST_ADDR + (q << 2));
+}
+
 static inline __inline void wlan_trigger(const uint32_t queue_bit)
 {
        set(AR9170_MAC_REG_DMA_TRIGGER, queue_bit);
@@ -261,14 +266,7 @@ void wlan_modify_beacon(const unsigned int vif,
 void wlan_tx_complete(struct carl9170_tx_superframe *super,
                       bool txs);
 
-static inline void wlan_prepare_wol(void)
-{
-       /* set filter policy to: discard everything */
-       fw.wlan.rx_filter = CARL9170_RX_FILTER_EVERYTHING;
-
-       /* reenable rx dma */
-       wlan_trigger(AR9170_DMA_TRIGGER_RXQ);
-}
+void wlan_prepare_wol(void);
 
 static inline void __check_wlantx(void)
 {