1. 27 9月, 2014 1 次提交
  2. 21 7月, 2014 1 次提交
  3. 09 4月, 2014 1 次提交
  4. 28 3月, 2014 1 次提交
  5. 07 3月, 2014 1 次提交
  6. 05 3月, 2014 1 次提交
  7. 25 2月, 2014 1 次提交
    • P
      rtlwifi: properly apply filter flags · 711f145a
      Peter Wu 提交于
      commit 0baa0fd7
      ("rtlwifi: Convert core routines for addition of rtl8192se and
      rtl8192de") removed setting HW_VAR_RCR, HW_VAR_MGT_FILTER and
      HW_VAR_CTRL_FILTER. The last two are probably done because some hardware
      does not support them. The first is probably a mistake. This patch adds
      the missing set_hw_reg call.
      
      For PCI support, rx_conf is not touched directly. Instead, get_hw_reg is
      used to abstract between receive_config (for PCI) and rx_conf (for USB).
      
      This was tested on a 10ec:8176 Realtek RTL8188CE (according to the
      label on the mini-PCIe card). Before this patch, `iw wlan0 set monitor
      otherbss` did not capture frames from other BSS's. After this patch, it
      does print packets.
      Tested-by: NPeter Wu <lekensteyn@gmail.com>
      Signed-off-by: NPeter Wu <lekensteyn@gmail.com>
      Acked-by: NLarry Finger <Larry.Finger@lwfinger.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      711f145a
  8. 06 12月, 2013 2 次提交
  9. 03 10月, 2013 1 次提交
  10. 19 7月, 2013 1 次提交
    • L
      rtlwifi: Fix build errors for unusual cases · 6f334c2b
      Larry Finger 提交于
      The present build configuration for the rtlwifi family of drivers will
      fail under two known conditions:
      
      (1) If rtlwifi is selected without selecting any of the dependent drivers,
          there are errors in the build.
      (2) If the PCI drivers are built into the kernel and the USB drivers are modules,
          or vice versa, there are missing globals.
      
      The first condition is fixed by never building rtlwifi unless at least one
      of the device drivers is selected. The second failure is fixed by splitting
      the PCI and USB codes out of rtlwifi, and creating their own mini drivers.
      If the drivers that use them are modules, they will also be modules.
      
      Although a number of files are touched by this patch, only Makefile and Kconfig
      have undergone significant changes. The only modifications to the other files
      were to export entry points needed by the new rtl_pci and rtl_usb units, or to
      rename two variables that had names that were likely to cause namespace collisions.
      
      Reported-by: Fengguang Wu <fengguang.wu@intel.com>  [Condition 1]
      Reported-by: Ben Hutchings <bhutchings@solarflare.com> [Condition 2]
      Signed-off-by: NLarry Finger <Larry.Finger@lwfinger.net>
      Cc: Ben Hutchings <bhutchings@solarflare.com>
      Cc: Fengguang Wu <fengguang.wu@intel.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      6f334c2b
  11. 02 4月, 2013 2 次提交
    • L
      rtlwifi: Rework rtl_lps_leave() and rtl_lps_enter() to use work queue · a269913c
      Larry Finger 提交于
      In commit a5ffbe0a, some of the calls to rtl_lps_leave() were switched
      to be called from a work queue to avoid a scheduling while atomic bug.
      This patch converts the remaining calls to use the work queue. In
      addition, the call to rtl_lps_enter() is also switched to the work
      queue. None of these newly converted calls had triggered the bug (yet),
      but this change make all of them fit a single pattern.
      Signed-off-by: NLarry Finger <Larry.Finger@lwfinger.net>
      Cc: jcheung@suse.com
      Cc: machen@suse.com
      Cc: mmarek@suse.cz
      Cc: zhiyuan_yang@realsil.com.cn
      Cc: page_he@realsil.com.cn
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      a269913c
    • L
      rtlwifi Modify existing bits to match vendor version 2013.02.07 · 26634c4b
      Larry Finger 提交于
      These changes add the new variables for P2P and modify the various struct
      definitions for other new features.
      
      This patch updates files base.{c,h} for the changes in the newest vendor
      driver.
      
      This patch updates files ps.{c,h} for the changes in the newest vendor
      driver.
      
      This patch updates files debug.{c,h}, efuse.c, pci.{c,h}, and wifi.h for
      the changes in the newest vendor driver.
      
      This patch updates files core.c, ps.c, rc.c, and wifi.h for
      the changes in the newest vendor driver.
      Signed-off-by: NLarry Finger <Larry.Finger@lwfinger.net>
      Cc: jcheung@suse.com
      Cc: machen@suse.com
      Cc: mmarek@suse.cz
      Cc: zhiyuan_yang@realsil.com.cn
      Cc: page_he@realsil.com.cn
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      26634c4b
  12. 26 3月, 2013 1 次提交
  13. 19 3月, 2013 1 次提交
  14. 03 1月, 2013 1 次提交
    • J
      mac80211: split TX aggregation stop action · 18b559d5
      Johannes Berg 提交于
      When TX aggregation is stopped, there are a few
      different cases:
       - connection with the peer was dropped
       - session stop was requested locally
       - session stop was requested by the peer
       - connection was dropped while a session is stopping
      
      The behaviour in these cases should be different, if
      the connection is dropped then the driver should drop
      all frames, otherwise the frames may continue to be
      transmitted, aggregated in the case of a locally
      requested session stop or unaggregated in the case of
      the peer requesting session stop.
      
      Split these different cases so that the driver can
      act accordingly; however, treat local and remote stop
      the same way and ask the driver to not send frames as
      aggregated packets any more.
      
      In the case of connection drop, the stop callback the
      driver is otherwise supposed to call is no longer
      required.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      18b559d5
  15. 17 11月, 2012 1 次提交
  16. 31 7月, 2012 1 次提交
  17. 07 6月, 2012 1 次提交
    • J
      wireless: Remove casts to same type · 2c208890
      Joe Perches 提交于
      Adding casts of objects to the same type is unnecessary
      and confusing for a human reader.
      
      For example, this cast:
      
              int y;
              int *p = (int *)&y;
      
      I used the coccinelle script below to find and remove these
      unnecessary casts.  I manually removed the conversions this
      script produces of casts with __force, __iomem and __user.
      
      @@
      type T;
      T *p;
      @@
      
      -       (T *)p
      +       p
      
      Neatened the mwifiex_deauthenticate_infra function which
      was doing odd things with array pointers and not using
      is_zero_ether_addr.
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2c208890
  18. 07 2月, 2012 1 次提交
  19. 31 1月, 2012 1 次提交
  20. 28 1月, 2012 1 次提交
  21. 25 1月, 2012 3 次提交
  22. 04 10月, 2011 1 次提交
    • E
      mac80211: pass vif param to conf_tx() callback · 8a3a3c85
      Eliad Peller 提交于
      tx params should be configured per interface.
      add ieee80211_vif param to the conf_tx callback,
      and change all the drivers that use this callback.
      
      The following spatch was used:
      @rule1@
      struct ieee80211_ops ops;
      identifier conf_tx_op;
      @@
      	ops.conf_tx = conf_tx_op;
      
      @rule2@
      identifier rule1.conf_tx_op;
      identifier hw, queue, params;
      @@
      	conf_tx_op (
      -		struct ieee80211_hw *hw,
      +		struct ieee80211_hw *hw, struct ieee80211_vif *vif,
      		u16 queue,
      		const struct ieee80211_tx_queue_params *params) {...}
      Signed-off-by: NEliad Peller <eliad@wizery.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      8a3a3c85
  23. 28 9月, 2011 1 次提交
  24. 14 9月, 2011 1 次提交
  25. 21 7月, 2011 1 次提交
  26. 21 6月, 2011 2 次提交
  27. 11 6月, 2011 1 次提交
  28. 27 4月, 2011 1 次提交
  29. 10 4月, 2011 1 次提交
  30. 05 4月, 2011 1 次提交
  31. 01 3月, 2011 1 次提交
    • A
      rtlwifi: Add the missing rcu_read_lock/unlock · 701c2be0
      Alessio Igor Bogani 提交于
      ===================================================
      [ INFO: suspicious rcu_dereference_check() usage. ]
      ---------------------------------------------------
      net/mac80211/sta_info.c:125 invoked rcu_dereference_check() without protection!
      
      other info that might help us debug this:
      
      rcu_scheduler_active = 1, debug_locks = 0
      5 locks held by wpa_supplicant/468:
       #0:  (rtnl_mutex){+.+.+.}, at: [<c1465d84>] rtnl_lock+0x14/0x20
       #1:  (&rdev->mtx){+.+.+.}, at: [<f84b8c2b>] cfg80211_mgd_wext_siwfreq+0x6b/0x170 [cfg80211]
       #2:  (&rdev->devlist_mtx){+.+.+.}, at: [<f84b8c37>] cfg80211_mgd_wext_siwfreq+0x77/0x170 [cfg80211]
       #3:  (&wdev->mtx){+.+.+.}, at: [<f84b8c44>] cfg80211_mgd_wext_siwfreq+0x84/0x170 [cfg80211]
       #4:  (&rtlpriv->locks.conf_mutex){+.+.+.}, at: [<f8506476>] rtl_op_bss_info_changed+0x26/0xc10 [rtlwifi]
      
      stack backtrace:
      Pid: 468, comm: wpa_supplicant Not tainted 2.6.38-rc6+ #79
      Call Trace:
       [<c108806a>] ? lockdep_rcu_dereference+0xaa/0xb0
       [<f8523d2c>] ? sta_info_get_bss+0x19c/0x1b0 [mac80211]
       [<f8523d62>] ? ieee80211_find_sta+0x22/0x40 [mac80211]
       [<f850661c>] ? rtl_op_bss_info_changed+0x1cc/0xc10 [rtlwifi]
       [<c153671c>] ? __mutex_unlock_slowpath+0x14c/0x160
       [<c153673d>] ? mutex_unlock+0xd/0x10
       [<f8507180>] ? rtl_op_config+0x120/0x310 [rtlwifi]
       [<c10896db>] ? trace_hardirqs_on+0xb/0x10
       [<f8522169>] ? ieee80211_bss_info_change_notify+0xf9/0x1f0 [mac80211]
       [<f8506450>] ? rtl_op_bss_info_changed+0x0/0xc10 [rtlwifi]
       [<f853646f>] ? ieee80211_set_channel+0xbf/0xd0 [mac80211]
       [<f84b5f41>] ? cfg80211_set_freq+0x121/0x180 [cfg80211]
       [<f85363b0>] ? ieee80211_set_channel+0x0/0xd0 [mac80211]
       [<f84b8ceb>] ? cfg80211_mgd_wext_siwfreq+0x12b/0x170 [cfg80211]
       [<f84b87eb>] ? cfg80211_wext_siwfreq+0x9b/0x100 [cfg80211]
       [<c153b98b>] ? sub_preempt_count+0x7b/0xb0
       [<c150f874>] ? ioctl_standard_call+0x74/0x3b0
       [<c1465d84>] ? rtnl_lock+0x14/0x20
       [<f84b8750>] ? cfg80211_wext_siwfreq+0x0/0x100 [cfg80211]
       [<c14568bd>] ? __dev_get_by_name+0x8d/0xb0
       [<c150fddb>] ? wext_handle_ioctl+0x16b/0x180
       [<f84b8750>] ? cfg80211_wext_siwfreq+0x0/0x100 [cfg80211]
       [<c145bc7a>] ? dev_ioctl+0x5ba/0x720
       [<c108a947>] ? __lock_acquire+0x3e7/0x19b0
       [<c1443b0b>] ? sock_ioctl+0x1eb/0x290
       [<c108bfa5>] ? lock_release_non_nested+0x95/0x2f0
       [<c1443920>] ? sock_ioctl+0x0/0x290
       [<c114d74d>] ? do_vfs_ioctl+0x7d/0x5c0
       [<c1112232>] ? might_fault+0x62/0xb0
       [<c113e3c6>] ? fget_light+0x226/0x390
       [<c1112278>] ? might_fault+0xa8/0xb0
       [<c114dd17>] ? sys_ioctl+0x87/0x90
       [<c1002f9f>] ? sysenter_do_call+0x12/0x38
      
      This work was supported by a hardware donation from the CE Linux Forum.
      Signed-off-by: NAlessio Igor Bogani <abogani@kernel.org>
      Signed-off-by: NLarry Finger <Larry.Finger@lwfinger.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      701c2be0
  32. 26 2月, 2011 1 次提交
    • J
      mac80211: make tx() operation return void · 7bb45683
      Johannes Berg 提交于
      The return value of the tx operation is commonly
      misused by drivers, leading to errors. All drivers
      will drop frames if they fail to TX the frame, and
      they must also properly manage the queues (if they
      didn't, mac80211 would already warn).
      
      Removing the ability for drivers to return a BUSY
      value also allows significant cleanups of the TX
      TX handling code in mac80211.
      
      Note that this also fixes a bug in ath9k_htc, the
      old "return -1" there was wrong.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Tested-by: Sedat Dilek <sedat.dilek@googlemail.com> [ath5k]
      Acked-by: Gertjan van Wingerde <gwingerde@gmail.com> [rt2x00]
      Acked-by: Larry Finger <Larry.Finger@lwfinger.net> [b43, rtl8187, rtlwifi]
      Acked-by: Luciano Coelho <coelho@ti.com> [wl12xx]
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      7bb45683
  33. 22 2月, 2011 2 次提交
  34. 20 1月, 2011 1 次提交
    • J
      mac80211: track receiver's aggregation reorder buffer size · 0b01f030
      Johannes Berg 提交于
      The aggregation code currently doesn't implement the
      buffer size negotiation. It will always request a max
      buffer size (which is fine, if a little pointless, as
      the mac80211 code doesn't know and might just use 0
      instead), but if the peer requests a smaller size it
      isn't possible to honour this request.
      
      In order to fix this, look at the buffer size in the
      addBA response frame, keep track of it and pass it to
      the driver in the ampdu_action callback when called
      with the IEEE80211_AMPDU_TX_OPERATIONAL action. That
      way the driver can limit the number of subframes in
      aggregates appropriately.
      
      Note that this doesn't fix any drivers apart from the
      addition of the new argument -- they all need to be
      updated separately to use this variable!
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      0b01f030