carl9170 firmware: update copyright boilerplate
[carl9170fw.git] / carlfw / include / wl.h
index 86a7abfea818d2e47aeae75e230375d0072f2dd0..ff04536d4af7fd6291ef030be386678cc1f6c4e3 100644 (file)
@@ -6,7 +6,7 @@
  * Copyright (c) 2000-2005 ZyDAS Technology Corporation
  * Copyright (c) 2007-2009 Atheros Communications, Inc.
  * Copyright   2009    Johannes Berg <johannes@sipsolutions.net>
- * Copyright 2009, 2010 Christian Lamparter <chunkeey@googlemail.com>
+ * Copyright 2009-2011 Christian Lamparter <chunkeey@googlemail.com>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -259,21 +259,35 @@ static inline __inline __hot void read_tsf(uint32_t *tsf)
 void wlan_tx(struct dma_desc *desc);
 void wlan_timer(void);
 void handle_wlan(void);
-void wlan_tx_stuck(const struct carl9170_cmd *cmd, struct carl9170_rsp *rsp);
 
 void wlan_cab_flush_queue(const unsigned int vif);
-void wlan_cab_modify_dtim_beacon(const unsigned int vif,
-                                const unsigned int bcn_addr,
-                                const unsigned int bcn_len);
+void wlan_modify_beacon(const unsigned int vif,
+                       const unsigned int bcn_addr,
+                       const unsigned int bcn_len);
+
+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);
+}
 
 static inline void __check_wlantx(void)
 {
+       BUILD_BUG_ON(CARL9170_TX_SUPERDESC_LEN & 3);
        BUILD_BUG_ON(sizeof(struct carl9170_tx_superdesc) != CARL9170_TX_SUPERDESC_LEN);
+       BUILD_BUG_ON(sizeof(struct _carl9170_tx_superdesc) != CARL9170_TX_SUPERDESC_LEN);
+       BUILD_BUG_ON(sizeof(struct _carl9170_tx_superframe) != CARL9170_TX_SUPERFRAME_LEN);
        BUILD_BUG_ON((offsetof(struct carl9170_tx_superframe, f) & 3) != 0);
+       BUILD_BUG_ON(offsetof(struct _carl9170_tx_superframe, f) !=
+                    (offsetof(struct _carl9170_tx_superframe, f)));
        BUILD_BUG_ON(sizeof(struct ar9170_tx_hwdesc) != AR9170_TX_HWDESC_LEN);
-       BUILD_BUG_ON(sizeof(struct ar9170_rx_head) != 12);
-       BUILD_BUG_ON(sizeof(struct ar9170_rx_phystatus) != 20);
-       BUILD_BUG_ON(sizeof(struct ar9170_rx_macstatus) != 4);
+       BUILD_BUG_ON(sizeof(struct _ar9170_tx_hwdesc) != AR9170_TX_HWDESC_LEN);
+       BUILD_BUG_ON(sizeof(struct ar9170_rx_head) != AR9170_RX_HEAD_LEN);
+       BUILD_BUG_ON(sizeof(struct ar9170_rx_phystatus) != AR9170_RX_PHYSTATUS_LEN);
+       BUILD_BUG_ON(sizeof(struct ar9170_rx_macstatus) != AR9170_RX_MACSTATUS_LEN);
 }
 
 #endif /* __CARL9170FW_WLAN_H */