Skip to content
Snippets Groups Projects
  1. Apr 26, 2017
  2. Mar 17, 2017
  3. Mar 06, 2017
    • Vasanthakumar Thiagarajan's avatar
      cfg80211: Share Channel DFS state across wiphys of same DFS domain · 89766727
      Vasanthakumar Thiagarajan authored
      
      Sharing DFS channel state across multiple wiphys (radios) could
      be useful with multiple radios on the system. When one radio
      completes CAC and markes the channel available another radio
      can use this information and start beaconing without really doing
      CAC.
      
      Whenever there is a state change in dfs channel associated to
      a particular wiphy the the same state change is propagated to
      other wiphys having the same DFS reg domain configuration.
      Also when a new wiphy is created the dfs channel state of
      other existing wiphys of same DFS domain is copied.
      
      Signed-off-by: default avatarVasanthakumar Thiagarajan <vthiagar@qti.qualcomm.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      89766727
    • Johannes Berg's avatar
      cfg80211: combine two nested ifs into a single condition · d4f29978
      Johannes Berg authored
      
      Combine two instances of having two nested if statements
      into a single one with a combined condition to reduce the
      indentation.
      
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      d4f29978
    • Andrew Zaborowski's avatar
      cfg80211: Accept multiple RSSI thresholds for CQM · 4a4b8169
      Andrew Zaborowski authored
      
      Change the SET CQM command's RSSI threshold attribute to accept any
      number of thresholds as a sorted array.  The API should be backwards
      compatible so that if one s32 threshold value is passed, the old
      mechanism is enabled.  The netlink event generated is the same in both
      cases.
      
      cfg80211 handles an arbitrary number of RSSI thresholds but drivers have
      to provide a method (set_cqm_rssi_range_config) that configures a range
      set by a high and a low value.  Drivers have to call back when the RSSI
      goes out of that range and there's no additional event for each time the
      range is reconfigured as there was with the current one-threshold API.
      
      This method doesn't have a hysteresis parameter because there's no
      benefit to the cfg80211 code from having the hysteresis be handled by
      hardware/driver in terms of the number of wakeups.  At the same time
      it would likely be less consistent between drivers if offloaded or
      done in the drivers.
      
      Signed-off-by: default avatarAndrew Zaborowski <andrew.zaborowski@intel.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      4a4b8169
  4. Feb 09, 2017
    • Luca Coelho's avatar
      cfg80211: fix NAN bands definition · 8585989d
      Luca Coelho authored
      
      The nl80211_nan_dual_band_conf enumeration doesn't make much sense.
      The default value is assigned to a bit, which makes it weird if the
      default bit and other bits are set at the same time.
      
      To improve this, get rid of NL80211_NAN_BAND_DEFAULT and add a wiphy
      configuration to let the drivers define which bands are supported.
      This is exposed to the userspace, which then can make a decision on
      which band(s) to use.  Additionally, rename all "dual_band" elements
      to "bands", to make things clearer.
      
      Signed-off-by: default avatarLuca Coelho <luciano.coelho@intel.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      8585989d
  5. Jan 09, 2017
  6. Oct 27, 2016
    • Johannes Berg's avatar
      cfg80211: disallow beacon_int_min_gcd with IBSS · 56271da2
      Johannes Berg authored
      
      This can't really be supported right now, because the IBSS
      interface may change its beacon interval at any time due to
      joining another network; thus, there's already "support"
      for different beacon intervals here, implicitly.
      
      Until we figure out how we should handle this case (continue
      to allow it to arbitrarily join? Join only if compatible?)
      disallow advertising that different beacon intervals are
      supported if IBSS is allowed.
      
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      56271da2
    • Arend Van Spriel's avatar
      cfg80211: add generic helper to check interface is running · 73c7da3d
      Arend Van Spriel authored
      
      Add a helper using wdev to check if interface is running. This
      deals with both non-netdev and netdev interfaces. In struct
      wireless_dev replace 'p2p_started' and 'nan_started' by
      'is_running' as those are mutually exclusive anyway, and unify
      all the code to use wdev_running().
      
      Signed-off-by: default avatarArend van Spriel <arend.vanspriel@broadcom.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      73c7da3d
    • Johannes Berg's avatar
      wireless: deprecate WDS and disable by default · 8f205423
      Johannes Berg authored
      
      The old WDS 4-addr frame support is very limited, e.g.
       * no encryption is possible on such links
       * it cannot support rate/HT/VHT negotiation
       * management APIs are very restricted
      
      These make the WDS legacy mode useless in practice.
      
      All of these are resolved by the 4-addr AP/client support,
      so there's also no reason to improve WDS in the future.
      
      Therefore, add a Kconfig option to disable legacy WDS.
      This gives people an "emergency valve" while they migrate
      to the better-supported 4-addr AP/client option; we plan
      to remove it (and the associated cfg80211/mac80211 code,
      which is the ultimate goal) in the future.
      
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      8f205423
  7. Sep 30, 2016
  8. Sep 12, 2016
  9. Aug 11, 2016
    • Denis Kenzior's avatar
      cfg80211: always notify userspace when wireless netdev is removed · 7f8ed01e
      Denis Kenzior authored
      
      This change alters the semantics of NL80211_CMD_DEL_INTERFACE events
      by always sending this event whenever a net_device object associated
      with a wdev is destroyed.  Prior to this change, this event was only
      emitted as a result of NL80211_CMD_DEL_INTERFACE command sent from
      userspace.  This allows userspace to reliably detect when wireless
      interfaces have been removed, e.g. due to USB removal events, etc.
      
      For wireless device objects without an associated net_device (e.g.
      NL80211_IFTYPE_P2P_DEVICE), the NL80211_CMD_DEL_INTERFACE event is
      now generated inside cfg80211_unregister_wdev.
      
      Signed-off-by: default avatarDenis Kenzior <denkenz@gmail.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      7f8ed01e
    • Denis Kenzior's avatar
      cfg80211: always notify userspace of new wireless netdevs · 896ff063
      Denis Kenzior authored
      
      This change alters the semantics of NL80211_CMD_NEW_INTERFACE events
      by always sending this event whenever a new net_device object
      associated with a wdev is registered.  Prior to this change, this event
      was only sent as a result of NL80211_CMD_NEW_INTERFACE command sent
      from userspace.  This allows userspace to reliably detect new wireless
      interfaces (e.g. due to hardware hot-plug events, etc).
      
      For wdevs created without an associated net_device object (e.g.
      NL80211_IFTYPE_P2P_DEVICE), the NL80211_CMD_NEW_INTERFACE event is
      still generated inside the relevant nl80211 command handler.
      
      Signed-off-by: default avatarDenis Kenzior <denkenz@gmail.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      896ff063
  10. Jul 06, 2016
    • Avraham Stern's avatar
      nl80211: support beacon report scanning · 1d76250b
      Avraham Stern authored
      
      Beacon report radio measurement requires reporting observed BSSs
      on the channels specified in the beacon request. If the measurement
      mode is set to passive or active, it requires actually performing a
      scan (passive or active, accordingly), and reporting the time that
      the scan was started and the time each beacon/probe was received
      (both in terms of TSF of the BSS of the requesting AP). If the
      request mode is table, this information is optional.
      In addition, the radio measurement request specifies the channel
      dwell time for the measurement.
      
      In order to use scan for beacon report when the mode is active or
      passive, add a parameter to scan request that specifies the
      channel dwell time, and add scan start time and beacon received time
      to scan results information.
      
      Supporting beacon report is required for Multi Band Operation (MBO).
      
      Signed-off-by: default avatarAssaf Krauss <assaf.krauss@intel.com>
      Signed-off-by: default avatarDavid Spinadel <david.spinadel@intel.com>
      Signed-off-by: default avatarAvraham Stern <avraham.stern@intel.com>
      Signed-off-by: default avatarLuca Coelho <luciano.coelho@intel.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      1d76250b
  11. Jun 09, 2016
  12. May 31, 2016
  13. May 12, 2016
  14. Apr 12, 2016
  15. Apr 05, 2016
  16. Feb 24, 2016
  17. Jan 29, 2016
    • Johannes Berg's avatar
      cfg80211/wext: fix message ordering · cb150b9d
      Johannes Berg authored
      
      Since cfg80211 frequently takes actions from its netdev notifier
      call, wireless extensions messages could still be ordered badly
      since the wext netdev notifier, since wext is built into the
      kernel, runs before the cfg80211 netdev notifier. For example,
      the following can happen:
      
      5: wlan1: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN group default
          link/ether 02:00:00:00:01:00 brd ff:ff:ff:ff:ff:ff
      5: wlan1: <BROADCAST,MULTICAST,UP>
          link/ether
      
      when setting the interface down causes the wext message.
      
      To also fix this, export the wireless_nlevent_flush() function
      and also call it from the cfg80211 notifier.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      cb150b9d
  18. Oct 15, 2015
  19. Oct 13, 2015
    • Avraham Stern's avatar
      cfg80211: Add multiple scan plans for scheduled scan · 3b06d277
      Avraham Stern authored
      
      Add the option to configure multiple 'scan plans' for scheduled scan.
      Each 'scan plan' defines the number of scan cycles and the interval
      between scans. The scan plans are executed in the order they were
      configured. The last scan plan will always run infinitely and thus
      defines only the interval between scans.
      The maximum number of scan plans supported by the device and the
      maximum number of iterations in a single scan plan are advertised
      to userspace so it can configure the scan plans appropriately.
      
      When scheduled scan results are received there is no way to know which
      scan plan is being currently executed, so there is no way to know when
      the next scan iteration will start. This is not a problem, however.
      The scan start timestamp is only used for flushing old scan results,
      and there is no difference between flushing all results received until
      the end of the previous iteration or the start of the current one,
      since no results will be received in between.
      
      Signed-off-by: default avatarAvraham Stern <avraham.stern@intel.com>
      Signed-off-by: default avatarLuca Coelho <luciano.coelho@intel.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      3b06d277
  20. Sep 29, 2015
  21. Jul 17, 2015
    • Johannes Berg's avatar
      cfg80211: allow mgmt_frame_register callback to sleep · 33d8783c
      Johannes Berg authored
      
      This callback is currently not allowed to sleep, which makes it more
      difficult to implement proper driver methods in mac80211 than it has
      to be. Instead of doing asynchronous work here in mac80211, make it
      possible for the callback to sleep by doing some asynchronous work
      in cfg80211. This also enables improvements to other drivers, like
      ath6kl, that would like to sleep in this callback.
      
      While at it, also fix the code to call the driver on the implicit
      unregistration when an interface is removed, and do that also when
      a P2P-Device wdev is destroyed (otherwise we leak the structs.)
      
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      33d8783c
  22. Feb 24, 2015
  23. Jan 19, 2015
  24. Dec 18, 2014
  25. Dec 17, 2014
    • Jonathan Doron's avatar
      cfg80211: allow wiphy specific regdomain management · b0d7aa59
      Jonathan Doron authored
      
      Add a new regulatory flag that allows a driver to manage regdomain
      changes/updates for its own wiphy.
      A self-managed wiphys only employs regulatory information obtained from
      the FW and driver and does not use other cfg80211 sources like
      beacon-hints, country-code IEs and hints from other devices on the same
      system. Conversely, a self-managed wiphy does not share its regulatory
      hints with other devices in the system. If a system contains several
      devices, one or more of which are self-managed, there might be
      contradictory regulatory settings between them. Usage of flag is
      generally discouraged. Only use it if the FW/driver is incompatible
      with non-locally originated hints.
      
      A new API lets the driver send a complete regdomain, to be applied on
      its wiphy only.
      
      After a wiphy-specific regdomain change takes place, usermode will get
      a new type of change notification. The regulatory core also takes care
      enforce regulatory restrictions, in case some interfaces are on
      forbidden channels.
      
      Signed-off-by: default avatarJonathan Doron <jonathanx.doron@intel.com>
      Signed-off-by: default avatarArik Nemtsov <arikx.nemtsov@intel.com>
      Reviewed-by: default avatarLuis R. Rodriguez <mcgrof@suse.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      b0d7aa59
  26. Dec 12, 2014
    • Vadim Kochan's avatar
      wireless: Support of IFLA_INFO_KIND rtnl attribute · ba1debdf
      Vadim Kochan authored
      
      It allows to identify the wlan kind of device for the user application,
      e.g.:
      
          # ip -d link
      
          1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default
              link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 promiscuity 0
          2: enp0s25: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
              link/ether XX:XX:XX:XX:XX:XX brd ff:ff:ff:ff:ff:ff promiscuity 0
          3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
              link/ether XX:XX:XX:XX:XX:XX brd ff:ff:ff:ff:ff:ff promiscuity 0
              wlan
      
      Signed-off-by: default avatarVadim Kochan <vadim4j@gmail.com>
      Acked-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      [make wireless_link_ops const]
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      ba1debdf
  27. Nov 28, 2014
  28. Nov 19, 2014
  29. Nov 04, 2014
    • Rostislav Lisovy's avatar
      cfg80211: 802.11p OCB mode handling · 6e0bd6c3
      Rostislav Lisovy authored
      
      This patch adds new iface type (NL80211_IFTYPE_OCB) representing
      the OCB (Outside the Context of a BSS) mode.
      When establishing a connection to the network a cfg80211_join_ocb
      function is called (particular nl80211_command is added as well).
      A mandatory parameters during the ocb_join operation are 'center
      frequency' and 'channel width (5/10 MHz)'.
      
      Changes done in mac80211 are minimal possible required to avoid
      many warnings (warning: enumeration value 'NL80211_IFTYPE_OCB'
      not handled in switch) during compilation. Full functionality
      (where needed) is added in the following patch.
      
      Signed-off-by: default avatarRostislav Lisovy <rostislav.lisovy@fel.cvut.cz>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      6e0bd6c3
  30. Oct 31, 2014
  31. Oct 27, 2014
  32. Sep 11, 2014
Loading