1. 15 7月, 2008 4 次提交
  2. 09 7月, 2008 1 次提交
  3. 08 7月, 2008 1 次提交
  4. 01 7月, 2008 2 次提交
  5. 27 6月, 2008 2 次提交
  6. 15 6月, 2008 2 次提交
  7. 22 5月, 2008 5 次提交
  8. 17 5月, 2008 1 次提交
    • I
      mac80211: Add RTNL version of ieee80211_iterate_active_interfaces · 2f561feb
      Ivo van Doorn 提交于
      Since commit e38bad47
      	mac80211: make ieee80211_iterate_active_interfaces not need rtnl
      rt2500usb and rt73usb broke down due to attempting register access
      in atomic context (which is not possible for USB hardware).
      
      This patch restores ieee80211_iterate_active_interfaces() to use RTNL lock,
      and provides the non-RTNL version under a new name:
      	ieee80211_iterate_active_interfaces_atomic()
      
      So far only rt2x00 uses ieee80211_iterate_active_interfaces(), and those
      drivers require the RTNL version of ieee80211_iterate_active_interfaces().
      Since they already call that function directly, this patch will automatically
      fix the USB rt2x00 drivers.
      
      v2: Rename ieee80211_iterate_active_interfaces_rtnl
      Signed-off-by: NIvo van Doorn <IvDoorn@gmail.com>
      Acked-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      2f561feb
  9. 15 5月, 2008 1 次提交
    • B
      mac80211: use hardware flags for signal/noise units · 566bfe5a
      Bruno Randolf 提交于
      trying to clean up the signal/noise code. the previous code in mac80211 had
      confusing names for the related variables, did not have much definition of
      what units of signal and noise were provided and used implicit mechanisms from
      the wireless extensions.
      
      this patch introduces hardware capability flags to let the hardware specify
      clearly if it can provide signal and noise level values and which units it can
      provide. this also anticipates possible new units like RCPI in the future.
      
      for signal:
      
        IEEE80211_HW_SIGNAL_UNSPEC - unspecified, unknown, hw specific
        IEEE80211_HW_SIGNAL_DB     - dB difference to unspecified reference point
        IEEE80211_HW_SIGNAL_DBM    - dBm, difference to 1mW
      
      for noise we currently only have dBm:
      
        IEEE80211_HW_NOISE_DBM     - dBm, difference to 1mW
      
      if IEEE80211_HW_SIGNAL_UNSPEC or IEEE80211_HW_SIGNAL_DB is used the driver has
      to provide the maximum value (max_signal) it reports in order for applications
      to make sense of the signal values.
      
      i tried my best to find out for each driver what it can provide and update it
      but i'm not sure (?) for some of them and used the more conservative guess in
      doubt. this can be fixed easily after this patch has been merged by changing
      the hardware flags of the driver.
      
      DRIVER          SIGNAL    MAX	NOISE   QUAL
      -----------------------------------------------------------------
      adm8211         unspec(?) 100   n/a     missing
      at76_usb        unspec(?) (?)   unused  missing
      ath5k           dBm             dBm     percent rssi
      b43legacy       dBm             dBm     percent jssi(?)
      b43             dBm             dBm     percent jssi(?)
      iwl-3945        dBm             dBm     percent snr+more
      iwl-4965        dBm             dBm     percent snr+more
      p54             unspec    127   n/a     missing
      rt2x00          dBm	        n/a     percent rssi+tx/rx frame success
        rt2400        dBm             n/a
        rt2500pci     dBm             n/a
        rt2500usb     dBm             n/a
        rt61pci       dBm             n/a
        rt73usb       dBm             n/a
      rtl8180         unspec(?) 65    n/a     (?)
      rtl8187         unspec(?) 65    (?)     noise(?)
      zd1211          dB(?)     100   n/a     percent
      
      drivers/net/wireless/ath5k/base.c:      Changes-licensed-under: 3-Clause-BSD
      Signed-off-by: NBruno Randolf <br1@einfach.org>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      566bfe5a
  10. 08 5月, 2008 5 次提交
  11. 17 4月, 2008 1 次提交
  12. 09 4月, 2008 4 次提交
  13. 26 3月, 2008 2 次提交
  14. 08 3月, 2008 2 次提交
  15. 07 3月, 2008 3 次提交
  16. 01 3月, 2008 4 次提交
    • J
      mac80211: clarify use of TX status/RX callbacks · 2485f710
      Johannes Berg 提交于
      This patch clarifies the use of the irqsafe vs. non-irq-safe
      functions and their respective locking requirements.
      Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      2485f710
    • J
      mac80211: rework TX filtered frame code · d46e144b
      Johannes Berg 提交于
      This reworks the code for TX filtered frames, splitting it out to
      a new function to handle those cases, making the clear instruction
      a flag and renaming a few things to be easier to understand and
      less Atheros hardware specific. Finally, it also makes the comments
      explain more.
      Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      d46e144b
    • B
      mac80211: enable IBSS merging · 9d9bf77d
      Bruno Randolf 提交于
      enable IBSS cell merging. if an IBSS beacon with the same channel, same ESSID
      and a TSF higher than the local TSF (mactime) is received, we have to join its
      BSSID. while this might not be immediately apparent from reading the 802.11
      standard it is compliant and necessary to make IBSS mode functional in many
      cases. most drivers have a similar behaviour.
      
      * move the relevant code section (previously only containing debug code) down
      to the end of the function, so we can reuse the bss structure.
      
      * we have to compare the mactime (TSF at the time of packet receive) rather
      than the current TSF. since mactime is defined as the time the first data
      symbol arrived we add the time until byte 24 where the timestamp resides, since
      this is how the beacon timestamp is defined. as some some drivers are not able
      to give a reliable mactime we fall back to use the current TSF, which will be
      enough to catch most (but not all) cases where an IBSS merge is necessary.
      
      * in IBSS mode we want to allow beacons to override probe response info so we
      can correctly do merges.
      
      * we don't only configure beacons based on scan results, so change that
      message.
      
      * to enable this we have to let all beacons thru in IBSS mode, even if they
      have a different BSSID.
      Signed-off-by: NBruno Randolf <bruno@thinktube.com>
      Acked-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      9d9bf77d
    • B
      mac80211: better definition of mactime · c132bec3
      Bruno Randolf 提交于
      define mactime as the time when the first data symbol arrived at the HW. the
      old definition was questionable because 802.11 defines timestamp only for
      beacon and probe response frames, and there it means the timestamp field.
      
      a stricter definition of mactime is necessary for correct merging of IBSS.
      
      note that it is up to the driver to convert whatever its hardware returns to
      this definition. unfortunately we don't know for example when atheros hardware
      takes its rx timestamp exactly :(
      Signed-off-by: NBruno Randolf <bruno@thinktube.com>
      Acked-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      c132bec3