carl9170 firmware: upgrade API struct layout checks
authorChristian Lamparter <chunkeey@googlemail.com>
Thu, 30 Sep 2010 15:30:42 +0000 (17:30 +0200)
committerChristian Lamparter <chunkeey@googlemail.com>
Thu, 30 Sep 2010 15:30:42 +0000 (17:30 +0200)
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
carlfw/include/wl.h
include/shared/fwdesc.h
include/shared/wlan.h

index 86a7abfea818d2e47aeae75e230375d0072f2dd0..f56303e4254e62da56b82be5c4352616b3dd06a8 100644 (file)
@@ -268,12 +268,18 @@ void wlan_cab_modify_dtim_beacon(const unsigned int vif,
 
 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 */
index 67e4581b9ddb2bebf16a32ee38f4e30a97d20fc1..71f3821f60581d721bd203cea46ed31245e26679 100644 (file)
@@ -145,7 +145,7 @@ struct carl9170fw_fix_desc {
        (sizeof(struct carl9170fw_fix_desc))
 
 #define CARL9170FW_DBG_DESC_MIN_VER                    1
-#define CARL9170FW_DBG_DESC_CUR_VER                    2
+#define CARL9170FW_DBG_DESC_CUR_VER                    3
 struct carl9170fw_dbg_desc {
        struct carl9170fw_desc_head head;
 
index 48ead2268f505308eb623f081eeb2c320ae04a48..ce8885ba6cc9ef493b7dc200d45f2124630c1234 100644 (file)
@@ -329,13 +329,15 @@ struct _carl9170_tx_superframe {
 
 #define        CARL9170_TX_SUPERDESC_LEN               24
 #define        AR9170_TX_HWDESC_LEN                    8
-#define        AR9170_TX_SUPERFRAME_LEN                (CARL9170_TX_HWDESC_LEN + \
-                                                AR9170_TX_SUPERDESC_LEN)
+#define        CARL9170_TX_SUPERFRAME_LEN              (CARL9170_TX_SUPERDESC_LEN + \
+                                                AR9170_TX_HWDESC_LEN)
 
 struct ar9170_rx_head {
        u8 plcp[12];
 } __packed;
 
+#define AR9170_RX_HEAD_LEN                     12
+
 struct ar9170_rx_phystatus {
        union {
                struct {
@@ -350,12 +352,16 @@ struct ar9170_rx_phystatus {
        u8 phy_err;
 } __packed;
 
+#define AR9170_RX_PHYSTATUS_LEN                        20
+
 struct ar9170_rx_macstatus {
        u8 SAidx, DAidx;
        u8 error;
        u8 status;
 } __packed;
 
+#define AR9170_RX_MACSTATUS_LEN                        4
+
 struct ar9170_rx_frame_single {
        struct ar9170_rx_head phy_head;
        struct ieee80211_hdr i3e;