]> err.no Git - linux-2.6/blobdiff - drivers/net/wireless/bcm43xx/bcm43xx.h
Pull motherboard into release branch
[linux-2.6] / drivers / net / wireless / bcm43xx / bcm43xx.h
index 1fca1f9c48feffc0af98de5c667e23223e293ead..2e83083935e1d9bd90570975c5cb771b62055a1e 100644 (file)
@@ -15,7 +15,6 @@
 
 #include "bcm43xx_debugfs.h"
 #include "bcm43xx_leds.h"
-#include "bcm43xx_sysfs.h"
 
 
 #define PFX                            KBUILD_MODNAME ": "
@@ -495,6 +494,10 @@ struct bcm43xx_phyinfo {
        const s8 *tssi2dbm;
        /* idle TSSI value */
        s8 idle_tssi;
+
+       /* Values from bcm43xx_calc_loopback_gain() */
+       u16 loopback_gain[2];
+
        /* PHY lock for core.rev < 3
         * This lock is only used by bcm43xx_phy_{un}lock()
         */
@@ -526,8 +529,16 @@ struct bcm43xx_radioinfo {
 
        /* Current Interference Mitigation mode */
        int interfmode;
-       /* Stack of saved values from the Interference Mitigation code */
-       u16 interfstack[20];
+       /* Stack of saved values from the Interference Mitigation code.
+        * Each value in the stack is layed out as follows:
+        * bit 0-11:  offset
+        * bit 12-15: register ID
+        * bit 16-32: value
+        * register ID is: 0x1 PHY, 0x2 Radio, 0x3 ILT
+        */
+#define BCM43xx_INTERFSTACK_SIZE       26
+       u32 interfstack[BCM43xx_INTERFSTACK_SIZE];
+
        /* Saved values from the NRSSI Slope calculation */
        s16 nrssi[2];
        s32 nrssislope;
@@ -613,6 +624,8 @@ struct bcm43xx_noise_calculation {
 
 struct bcm43xx_stats {
        u8 link_quality;
+       u8 noise;
+       struct iw_statistics wstats;
        /* Store the last TX/RX times here for updating the leds. */
        unsigned long last_tx;
        unsigned long last_rx;
@@ -624,8 +637,6 @@ struct bcm43xx_key {
 };
 
 struct bcm43xx_private {
-       struct bcm43xx_sysfs sysfs;
-
        struct ieee80211_device *ieee;
        struct ieee80211softmac_device *softmac;
 
@@ -664,6 +675,7 @@ struct bcm43xx_private {
 
        u16 chip_id;
        u8 chip_rev;
+       u8 chip_package;
 
        struct bcm43xx_sprominfo sprom;
 #define BCM43xx_NR_LEDS                4
@@ -757,6 +769,20 @@ struct bcm43xx_private * bcm43xx_priv(struct net_device *dev)
        return ieee80211softmac_priv(dev);
 }
 
+struct device;
+
+static inline
+struct bcm43xx_private * dev_to_bcm(struct device *dev)
+{
+       struct net_device *net_dev;
+       struct bcm43xx_private *bcm;
+
+       net_dev = dev_get_drvdata(dev);
+       bcm = bcm43xx_priv(net_dev);
+
+       return bcm;
+}
+
 
 /* Helper function, which returns a boolean.
  * TRUE, if PIO is used; FALSE, if DMA is used.