1. 06 10月, 2016 3 次提交
  2. 28 9月, 2016 1 次提交
  3. 09 9月, 2016 2 次提交
    • E
      ath6kl: Allow the radio to report 0 dbm txpower without timing out · cabd34d0
      Eric Bentley 提交于
      The ath6kl driver attempts to get the txpower value from the radio by first
      clearing the existing stored value and then watching the value to become
      non-zero.
      
      APs allow setting client power to values from -127..127, but this radio
      is not capable of setting values less then 0 and so will report txpower
      as 0dbm for both negative and 0 client power values.
      
      When the radio has txpower set to 0dbm txpower (equivalent to 1mw) the
      ath6kl_cfg80211_get_txpower() function will remain in the
      wait_event_interruptible_timeout() loop waiting for the value to be
      non-zero, and will eventually timeout. This results in a 5 second delay in
      response. However, the correct value of zero is eventually returned.
      
      The 6004 defaults to 63dbm which is then limited by regulatory and
      hardware limits with max of 18dbm (6003 max is 16dbm), therefore we can
      use values larger then these to be able to determine when the value has
      been updated.
      
      To correct the issue, set the value to a nonsensical value (255) and wait
      for it to change to the valid value.
      
      Tested on both 6003 and 6004 based radios.  Return value of zero is
      correctly returned in an expected amount of time (similar to when
      returning non-zero values) when AP client power is set to both 0 and
      negative values.
      Signed-off-by: NEric Bentley <eric.bentley@lairdtech.com>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      cabd34d0
    • D
      ath6kl: enable firmware crash dumps on the AR6004 · f3fa6314
      Dan Kephart 提交于
      The firmware crash dumps on the 6004 are the same as the 6003. Remove the
      statement guarding it from dumping on the 6004.  Renamed the
      REG_DUMP_COUNT_AR6003 to reflect support on both chips.
      Signed-off-by: NDan Kephart <dan.kephart@lairdtech.com>
      Reviewed-by: NSteve deRosier <steve.derosier@lairdtech.com>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      f3fa6314
  4. 04 8月, 2016 1 次提交
    • M
      tree-wide: replace config_enabled() with IS_ENABLED() · 97f2645f
      Masahiro Yamada 提交于
      The use of config_enabled() against config options is ambiguous.  In
      practical terms, config_enabled() is equivalent to IS_BUILTIN(), but the
      author might have used it for the meaning of IS_ENABLED().  Using
      IS_ENABLED(), IS_BUILTIN(), IS_MODULE() etc.  makes the intention
      clearer.
      
      This commit replaces config_enabled() with IS_ENABLED() where possible.
      This commit is only touching bool config options.
      
      I noticed two cases where config_enabled() is used against a tristate
      option:
      
       - config_enabled(CONFIG_HWMON)
        [ drivers/net/wireless/ath/ath10k/thermal.c ]
      
       - config_enabled(CONFIG_BACKLIGHT_CLASS_DEVICE)
        [ drivers/gpu/drm/gma500/opregion.c ]
      
      I did not touch them because they should be converted to IS_BUILTIN()
      in order to keep the logic, but I was not sure it was the authors'
      intention.
      
      Link: http://lkml.kernel.org/r/1465215656-20569-1-git-send-email-yamada.masahiro@socionext.comSigned-off-by: NMasahiro Yamada <yamada.masahiro@socionext.com>
      Acked-by: NKees Cook <keescook@chromium.org>
      Cc: Stas Sergeev <stsp@list.ru>
      Cc: Matt Redfearn <matt.redfearn@imgtec.com>
      Cc: Joshua Kinard <kumba@gentoo.org>
      Cc: Jiri Slaby <jslaby@suse.com>
      Cc: Bjorn Helgaas <bhelgaas@google.com>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Markos Chandras <markos.chandras@imgtec.com>
      Cc: "Dmitry V. Levin" <ldv@altlinux.org>
      Cc: yu-cheng yu <yu-cheng.yu@intel.com>
      Cc: James Hogan <james.hogan@imgtec.com>
      Cc: Brian Gerst <brgerst@gmail.com>
      Cc: Johannes Berg <johannes@sipsolutions.net>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Will Drewry <wad@chromium.org>
      Cc: Nikolay Martynov <mar.kolya@gmail.com>
      Cc: Huacai Chen <chenhc@lemote.com>
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Daniel Borkmann <daniel@iogearbox.net>
      Cc: Leonid Yegoshin <Leonid.Yegoshin@imgtec.com>
      Cc: Rafal Milecki <zajec5@gmail.com>
      Cc: James Cowgill <James.Cowgill@imgtec.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Alex Smith <alex.smith@imgtec.com>
      Cc: Adam Buchbinder <adam.buchbinder@gmail.com>
      Cc: Qais Yousef <qais.yousef@imgtec.com>
      Cc: Jiang Liu <jiang.liu@linux.intel.com>
      Cc: Mikko Rapeli <mikko.rapeli@iki.fi>
      Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
      Cc: Denys Vlasenko <dvlasenk@redhat.com>
      Cc: Brian Norris <computersforpeace@gmail.com>
      Cc: Hidehiro Kawai <hidehiro.kawai.ez@hitachi.com>
      Cc: "Luis R. Rodriguez" <mcgrof@do-not-panic.com>
      Cc: Andy Lutomirski <luto@amacapital.net>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
      Cc: Roland McGrath <roland@hack.frob.com>
      Cc: Paul Burton <paul.burton@imgtec.com>
      Cc: Kalle Valo <kvalo@qca.qualcomm.com>
      Cc: Viresh Kumar <viresh.kumar@linaro.org>
      Cc: Tony Wu <tung7970@gmail.com>
      Cc: Huaitong Han <huaitong.han@intel.com>
      Cc: Sumit Semwal <sumit.semwal@linaro.org>
      Cc: Alexei Starovoitov <ast@kernel.org>
      Cc: Juergen Gross <jgross@suse.com>
      Cc: Jason Cooper <jason@lakedaemon.net>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Cc: Rabin Vincent <rabin@rab.in>
      Cc: "Maciej W. Rozycki" <macro@imgtec.com>
      Cc: David Daney <david.daney@cavium.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      97f2645f
  5. 20 7月, 2016 1 次提交
  6. 19 7月, 2016 3 次提交
    • P
      ath6kl: Unset IFF_LOWER_UP flag on AP mode leave. · 76b817f6
      Pierre Le Magourou 提交于
      When disabling tethering after having enabled it, the ath6kl driver does
      not set the IFF_LOWER_UP flag to 0 (carrier off) on the wlan interface.
      
      The upper layers (eg. connman) are not notified of the tethering mode
      status change. So, tethering can not be activated anymore.
      
      This patch adds a netif_carrier_off() call when stopping AP mode to fix
      the problem.
      Signed-off-by: NPierre Le Magourou <plemagourou@aldebaran.com>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      76b817f6
    • P
      ath6kl: Fix wrong regulatory domain disconnection. · f3651bae
      Pierre Le Magourou 提交于
      One minute after a successful connection, the kernel checks if the
      frequency and the channel width are well configured for the country we
      are in. (regulatory domain)
      
      ath6kl driver was setting the NL80211_CHAN_HT20 channel without checking
      for the HT capabilities. (we should have NL80211_CHAN_NO_HT in our
      case because the firmware did not support HT)
      
      This patch adds a check on ht_cap.ht_supported in order to create the
      channel corresponding to the firmware capabilities.
      Signed-off-by: NPierre Le Magourou <plemagourou@aldebaran.com>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      f3651bae
    • P
      ath6kl: Fix WLAN tethering authentication problem. · 270df8f8
      Pierre Le Magourou 提交于
      When enabling WLAN tethering, a new AP is visible and a STA could
      connect to it. When the STA tries to authenticate to the newly created
      AP, the WPA authentication mechanism is stuck in the 1/4 msg of 4-Way
      Handshake.
      
      In ath6kl_rx(), the ath6kl_find_sta() function is looking for the
      h_source field of the Ethernet frame header received by the STA. The
      datap pointer that points to the Ethernet frame header is incorrect,
      and was pointing at the wrong offset in the buffer.
      
      This commit adds a pad_before_data_start offset to set the datap pointer
      to the Ethernet frame header. datap->h_source parameter is now really
      pointing to the source ethernet address and the authentication process
      can continue.
      Signed-off-by: NPierre Le Magourou <plemagourou@aldebaran.com>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      270df8f8
  7. 06 7月, 2016 1 次提交
    • A
      nl80211: support beacon report scanning · 1d76250b
      Avraham Stern 提交于
      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: NAssaf Krauss <assaf.krauss@intel.com>
      Signed-off-by: NDavid Spinadel <david.spinadel@intel.com>
      Signed-off-by: NAvraham Stern <avraham.stern@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      1d76250b
  8. 28 5月, 2016 2 次提交
  9. 26 4月, 2016 2 次提交
  10. 12 4月, 2016 1 次提交
  11. 11 3月, 2016 1 次提交
  12. 11 12月, 2015 2 次提交
  13. 08 12月, 2015 1 次提交
  14. 29 10月, 2015 5 次提交
  15. 27 10月, 2015 1 次提交
  16. 13 10月, 2015 1 次提交
    • A
      cfg80211: Add multiple scan plans for scheduled scan · 3b06d277
      Avraham Stern 提交于
      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: NAvraham Stern <avraham.stern@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      3b06d277
  17. 09 10月, 2015 2 次提交
  18. 07 8月, 2015 1 次提交
  19. 29 7月, 2015 1 次提交
  20. 09 6月, 2015 1 次提交
  21. 26 5月, 2015 1 次提交
  22. 30 3月, 2015 1 次提交
    • T
      cfg80211: pass name_assign_type to rdev_add_virtual_intf() · 6bab2e19
      Tom Gundersen 提交于
      This will expose in /sys whether the ifname of a device is set by
      userspace or generated by the kernel. The latter kind (wlanX, etc)
      is not deterministic, so userspace needs to rename these devices
      to names that are guaranteed to stay the same between reboots. The
      former, however should never be renamed, so userspace needs to be
      able to reliably tell the difference.
      
      Similar functionality was introduced for the rtnetlink core in
      commit 5517750f ("net: rtnetlink - make create_link take name_assign_type")
      Signed-off-by: NTom Gundersen <teg@jklm.no>
      Cc: Kalle Valo <kvalo@qca.qualcomm.com>
      Cc: Brett Rudley <brudley@broadcom.com>
      Cc: Arend van Spriel <arend@broadcom.com>
      Cc: Franky (Zhenhui) Lin <frankyl@broadcom.com>
      Cc: Hante Meuleman <meuleman@broadcom.com>
      Cc: Johannes Berg <johannes@sipsolutions.net>
      [reformat changelog to fit 72 cols]
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      6bab2e19
  23. 04 3月, 2015 1 次提交
  24. 03 3月, 2015 1 次提交
    • D
      cfg80211: add bss_type and privacy arguments in cfg80211_get_bss() · 6eb18137
      Dedy Lansky 提交于
      802.11ad adds new a network type (PBSS) and changes the capability
      field interpretation for the DMG (60G) band.
      The same 2 bits that were interpreted as "ESS" and "IBSS" before are
      re-used as a 2-bit field with 3 valid values (and 1 reserved). Valid
      values are: "IBSS", "PBSS" (new) and "AP".
      
      In order to get the BSS struct for the new PBSS networks, change the
      cfg80211_get_bss() function to take a new enum ieee80211_bss_type
      argument with the valid network types, as "capa_mask" and "capa_val"
      no longer work correctly (the search must be band-aware now.)
      
      The remaining bits in "capa_mask" and "capa_val" are used only for
      privacy matching so replace those two with a privacy enum as well.
      Signed-off-by: NDedy Lansky <dlansky@codeaurora.org>
      [rewrite commit log, tiny fixes]
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      6eb18137
  25. 16 1月, 2015 1 次提交
    • J
      cfg80211: change bandwidth reporting to explicit field · b51f3bee
      Johannes Berg 提交于
      For some reason, we made the bandwidth separate flags, which
      is rather confusing - a single rate cannot have different
      bandwidths at the same time.
      
      Change this to no longer be flags but use a separate field
      for the bandwidth ('bw') instead.
      
      While at it, add support for 5 and 10 MHz rates - these are
      reported as regular legacy rates with their real bitrate,
      but tagged as 5/10 now to make it easier to distinguish them.
      
      In the nl80211 API, the flags are preserved, but the code
      now can also clearly only set a single one of the flags.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      b51f3bee
  26. 08 1月, 2015 1 次提交
    • J
      cfg80211: remove enum station_info_flags · 319090bf
      Johannes Berg 提交于
      This is really just duplicating the list of information that's
      already available in the nl80211 attribute, so remove the list.
      Two small changes are needed:
       * remove STATION_INFO_ASSOC_REQ_IES complete, but the length
         (assoc_req_ies_len) can be used instead
       * add NL80211_STA_INFO_RX_DROP_MISC which exists internally
         but not in nl80211 yet
      
      This gets rid of the duplicate maintenance of the two lists.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      319090bf
  27. 04 11月, 2014 1 次提交