1. 03 Dec, 2013 1 commit
  2. 02 Dec, 2013 2 commits
  3. 25 Nov, 2013 9 commits
    • Luis R. Rodriguez's avatar
      cfg80211: use enum nl80211_dfs_regions for dfs_region everywhere · 4c7d3982
      Luis R. Rodriguez authored
      u8 was used in some other places, just stick to the enum,
      this forces us to express the values that are expected.
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@do-not-panic.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      4c7d3982
    • Eliad Peller's avatar
      mac80211: add min required channel definition field · 21f659bf
      Eliad Peller authored
      Add a new field to ieee80211_chanctx_conf to indicate
      the min required channel configuration.
      
      Tuning to a narrower channel might help reducing
      the noise level and saving some power.
      
      The min required channel definition is the max of
      all min required channel definitions of the interfaces
      bound to this channel context.
      
      In AP mode, use 20MHz when there are no connected station.
      When a new station is added/removed, calculate the new max
      bandwidth supported by any of the stations (e.g. 80MHz when
      80MHz and 40MHz stations are connected).
      
      In other cases, simply use bss_conf.chandef as the
      min required chandef.
      
      Notify drivers about changes to this field by calling
      drv_change_chanctx with a new CHANGE_MIN_WIDTH notification.
      Signed-off-by: default avatarEliad Peller <eliad@wizery.com>
      Reviewed-by: default avatarJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      21f659bf
    • Luis R. Rodriguez's avatar
      cfg80211: add an option to disable processing country IEs · 2a901468
      Luis R. Rodriguez authored
      Certain vendors may want to disable the processing of
      country IEs so that they can continue using the regulatory
      domain the driver or user has set.  Currently there is no
      way to stop the core from processing country IEs, so add
      support to the core to ignore country IE hints.
      
      Cc: Mihir Shete <smihir@qti.qualcomm.com>
      Cc: Henri Bahini <hbahini@qca.qualcomm.com>
      Cc: Tushnim Bhattacharyya <tushnimb@qca.qualcomm.com>
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@do-not-panic.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      2a901468
    • Luis R. Rodriguez's avatar
      cfg80211: add flags to define country IE processing rules · a09a85a0
      Luis R. Rodriguez authored
      802.11 cards may have different country IE parsing behavioural
      preferences and vendors may want to support these. These preferences
      were managed by the REGULATORY_CUSTOM_REG and the REGULATORY_STRICT_REG
      flags and their combination. Instead of using this existing notation,
      split out the country IE behavioural preferences as a new flag. This
      will allow us to add more customizations easily and make the code more
      maintainable.
      
      Cc: Mihir Shete <smihir@qti.qualcomm.com>
      Cc: Henri Bahini <hbahini@qca.qualcomm.com>
      Cc: Tushnim Bhattacharyya <tushnimb@qca.qualcomm.com>
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@do-not-panic.com>
      [fix up conflicts]
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      a09a85a0
    • Luis R. Rodriguez's avatar
      cfg80211: move regulatory flags to their own variable · a2f73b6c
      Luis R. Rodriguez authored
      We'll expand this later, this will make it easier to
      classify and review what things are related to regulatory
      or not.
      
      Coccinelle only missed 4 hits, which I had to do manually,
      supplying the SmPL in case of merge conflicts.
      
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags |= WIPHY_FLAG_CUSTOM_REGULATORY
      +wiphy->regulatory_flags |= REGULATORY_CUSTOM_REG
      @@
      expression e;
      @@
      -e->flags |= WIPHY_FLAG_CUSTOM_REGULATORY
      +e->regulatory_flags |= REGULATORY_CUSTOM_REG
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags &= ~WIPHY_FLAG_CUSTOM_REGULATORY
      +wiphy->regulatory_flags &= ~REGULATORY_CUSTOM_REG
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags & WIPHY_FLAG_CUSTOM_REGULATORY
      +wiphy->regulatory_flags & REGULATORY_CUSTOM_REG
      
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags |= WIPHY_FLAG_STRICT_REGULATORY
      +wiphy->regulatory_flags |= REGULATORY_STRICT_REG
      @@
      expression e;
      @@
      -e->flags |= WIPHY_FLAG_STRICT_REGULATORY
      +e->regulatory_flags |= REGULATORY_STRICT_REG
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags &= ~WIPHY_FLAG_STRICT_REGULATORY
      +wiphy->regulatory_flags &= ~REGULATORY_STRICT_REG
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags & WIPHY_FLAG_STRICT_REGULATORY
      +wiphy->regulatory_flags & REGULATORY_STRICT_REG
      
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags |= WIPHY_FLAG_DISABLE_BEACON_HINTS
      +wiphy->regulatory_flags |= REGULATORY_DISABLE_BEACON_HINTS
      @@
      expression e;
      @@
      -e->flags |= WIPHY_FLAG_DISABLE_BEACON_HINTS
      +e->regulatory_flags |= REGULATORY_DISABLE_BEACON_HINTS
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags &= ~WIPHY_FLAG_DISABLE_BEACON_HINTS
      +wiphy->regulatory_flags &= ~REGULATORY_DISABLE_BEACON_HINTS
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags & WIPHY_FLAG_DISABLE_BEACON_HINTS
      +wiphy->regulatory_flags & REGULATORY_DISABLE_BEACON_HINTS
      
      Generated-by: Coccinelle SmPL
      Cc: Julia Lawall <julia.lawall@lip6.fr>
      Cc: Peter Senna Tschudin <peter.senna@gmail.com>
      Cc: Mihir Shete <smihir@qti.qualcomm.com>
      Cc: Henri Bahini <hbahini@qca.qualcomm.com>
      Cc: Tushnim Bhattacharyya <tushnimb@qca.qualcomm.com>
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@do-not-panic.com>
      [fix up whitespace damage, overly long lines]
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      a2f73b6c
    • Max Stepanov's avatar
      mac80211: add generic cipher scheme support · 2475b1cc
      Max Stepanov authored
      This adds generic cipher scheme support to mac80211, such schemes
      are fully under control by the driver. On hw registration drivers
      may specify additional HW ciphers with a scheme how these ciphers
      have to be handled by mac80211 TX/RR. A cipher scheme specifies a
      cipher suite value, a size of the security header to be added to
      or stripped from frames and how the PN is to be verified on RX.
      Signed-off-by: default avatarMax Stepanov <Max.Stepanov@intel.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      2475b1cc
    • Janusz Dziedzic's avatar
      cfg80211/mac80211: DFS setup chandef for cac event · d2859df5
      Janusz Dziedzic authored
      To report channel width correctly we have
      to send correct channel parameters from
      mac80211 when calling cfg80211_cac_event().
      
      This is required in case of using channel width
      higher than 20MHz and we have to set correct
      dfs channel state after CAC (NL80211_DFS_AVAILABLE).
      Signed-off-by: default avatarJanusz Dziedzic <janusz.dziedzic@tieto.com>
      Reviewed-by: default avatarLuis R. Rodriguez <mcgrof@do-not-panic.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      d2859df5
    • Luis R. Rodriguez's avatar
      cfg80211: force WIPHY_FLAG_CUSTOM_REGULATORY on wiphy_apply_custom_regulatory() · 222ea581
      Luis R. Rodriguez authored
      wiphy_apply_custom_regulatory() implies WIPHY_FLAG_CUSTOM_REGULATORY
      but we never enforced it, do that now and warn if the driver
      didn't set it. All drivers should be following this today already.
      
      Having WIPHY_FLAG_CUSTOM_REGULATORY does not however mean you will
      use wiphy_apply_custom_regulatory() though, you may have your own
      _orig value set up tools / helpers. The intel drivers are examples
      of this type of driver.
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@do-not-panic.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      222ea581
    • Luis R. Rodriguez's avatar
      cfg80211: consolidate passive-scan and no-ibss flags · 8fe02e16
      Luis R. Rodriguez authored
      These two flags are used for the same purpose, just
      combine them into a no-ir flag to annotate no initiating
      radiation is allowed.
      
      Old userspace sending either flag will have it treated as
      the no-ir flag. To be considerate to older userspace we
      also send both the no-ir flag and the old no-ibss flags.
      Newer userspace will have to be aware of older kernels.
      
      Update all places in the tree using these flags with the
      following semantic patch:
      
      @@
      @@
      -NL80211_RRF_PASSIVE_SCAN
      +NL80211_RRF_NO_IR
      @@
      @@
      -NL80211_RRF_NO_IBSS
      +NL80211_RRF_NO_IR
      @@
      @@
      -IEEE80211_CHAN_PASSIVE_SCAN
      +IEEE80211_CHAN_NO_IR
      @@
      @@
      -IEEE80211_CHAN_NO_IBSS
      +IEEE80211_CHAN_NO_IR
      @@
      @@
      -NL80211_RRF_NO_IR | NL80211_RRF_NO_IR
      +NL80211_RRF_NO_IR
      @@
      @@
      -IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_IR
      +IEEE80211_CHAN_NO_IR
      @@
      @@
      -(NL80211_RRF_NO_IR)
      +NL80211_RRF_NO_IR
      @@
      @@
      -(IEEE80211_CHAN_NO_IR)
      +IEEE80211_CHAN_NO_IR
      
      Along with some hand-optimisations in documentation, to
      remove duplicates and to fix some indentation.
      Signed-off-by: default avatarLuis R. Rodriguez <mcgrof@do-not-panic.com>
      [do all the driver updates in one go]
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      8fe02e16
  4. 28 Oct, 2013 4 commits
  5. 21 Oct, 2013 2 commits
  6. 19 Oct, 2013 5 commits
  7. 18 Oct, 2013 3 commits
  8. 16 Oct, 2013 6 commits
  9. 15 Oct, 2013 8 commits