1. 25 1月, 2011 4 次提交
    • A
      wl12xx: Add AP related configuration to conf_drv_settings · 1e05a818
      Arik Nemtsov 提交于
      Rate class configuration has been split up for AP and STA modes.
      Template related configuration likewise separated.
      Signed-off-by: NArik Nemtsov <arik@wizery.com>
      Reviewed-by: NLuciano Coelho <coelho@ti.com>
      Signed-off-by: NLuciano Coelho <coelho@ti.com>
      1e05a818
    • E
      wl12xx: fix some sparse warnings · 6177eaea
      Eliad Peller 提交于
      Note that wl1271_write32() calls cpu_to_le32() by itself, so calling
      wl1271_write32(addr, cpu_to_le32(val)) is in fact a bug on BE systems.
      
      Fix the following sparse warnings:
      
      drivers/net/wireless/wl12xx/cmd.c:662:16: warning: incorrect type in assignment (different base types)
      drivers/net/wireless/wl12xx/cmd.c:662:16:    expected unsigned short [unsigned] [addressable] [usertype] llc_type
      drivers/net/wireless/wl12xx/cmd.c:662:16:    got restricted __be16 [usertype] <noident>
      drivers/net/wireless/wl12xx/cmd.c:674:17: warning: incorrect type in assignment (different base types)
      drivers/net/wireless/wl12xx/cmd.c:674:17:    expected unsigned int [unsigned] [addressable] [usertype] sender_ip
      drivers/net/wireless/wl12xx/cmd.c:674:17:    got restricted __be32 [usertype] ip_addr
      drivers/net/wireless/wl12xx/rx.c:202:4: warning: incorrect type in argument 3 (different base types)
      drivers/net/wireless/wl12xx/rx.c:202:4:    expected unsigned int [unsigned] [usertype] val
      drivers/net/wireless/wl12xx/rx.c:202:4:    got restricted __le32 [usertype] <noident>
      drivers/net/wireless/wl12xx/acx.c:1247:23: warning: incorrect type in assignment (different base types)
      drivers/net/wireless/wl12xx/acx.c:1247:23:    expected restricted __le32 [usertype] ht_capabilites
      drivers/net/wireless/wl12xx/acx.c:1247:23:    got unsigned long
      drivers/net/wireless/wl12xx/acx.c:1250:24: warning: invalid assignment: |=
      drivers/net/wireless/wl12xx/acx.c:1250:24:    left side has type restricted __le32
      drivers/net/wireless/wl12xx/acx.c:1250:24:    right side has type unsigned long
      drivers/net/wireless/wl12xx/acx.c:1253:24: warning: invalid assignment: |=
      drivers/net/wireless/wl12xx/acx.c:1253:24:    left side has type restricted __le32
      drivers/net/wireless/wl12xx/acx.c:1253:24:    right side has type unsigned long
      drivers/net/wireless/wl12xx/acx.c:1256:24: warning: invalid assignment: |=
      drivers/net/wireless/wl12xx/acx.c:1256:24:    left side has type restricted __le32
      drivers/net/wireless/wl12xx/acx.c:1256:24:    right side has type unsigned long
      Signed-off-by: NEliad Peller <eliad@wizery.com>
      Signed-off-by: NLuciano Coelho <coelho@ti.com>
      6177eaea
    • D
      wl12xx: use after free in debug code · 0dd38667
      Dan Carpenter 提交于
      If debugging is turned on, then wl1271_dump() dereferences a freed
      variable.
      Signed-off-by: NDan Carpenter <error27@gmail.com>
      Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
      0dd38667
    • E
      wl12xx: remove redundant debugfs_remove_recursive() call · 3c2c04a1
      Eliad Peller 提交于
      Upon rmmod, the <debugfs>/ieee80211/phyX dir is being removed.
      later, we try to remove <debugfs>/ieee80211/phyX/wl12xx, which
      might result in NULL dereference.
      
      Remove the excessive debugfs_remove_recursive() call.
      (consequently, there is no more need to save wl->rootdir)
      Reported-by: NArik Nemtsov <arik@wizery.com>
      Signed-off-by: NEliad Peller <eliad@wizery.com>
      Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
      3c2c04a1
  2. 22 1月, 2011 1 次提交
    • B
      cfg80211: Extend channel to frequency mapping for 802.11j · 59eb21a6
      Bruno Randolf 提交于
      Extend channel to frequency mapping for 802.11j Japan 4.9GHz band, according to
      IEEE802.11 section 17.3.8.3.2 and Annex J. Because there are now overlapping
      channel numbers in the 2GHz and 5GHz band we can't map from channel to
      frequency without knowing the band. This is no problem as in most contexts we
      know the band. In places where we don't know the band (and WEXT compatibility)
      we assume the 2GHz band for channels below 14.
      
      This patch does not implement all channel to frequency mappings defined in
      802.11, it's just an extension for 802.11j 20MHz channels. 5MHz and 10MHz
      channels as well as 802.11y channels have been omitted.
      
      The following drivers have been updated to reflect the API changes:
      iwl-3945, iwl-agn, iwmc3200wifi, libertas, mwl8k, rt2x00, wl1251, wl12xx.
      The drivers have been compile-tested only.
      Signed-off-by: NBruno Randolf <br1@einfach.org>
      Signed-off-by: NBrian Prodoehl <bprodoehl@gmail.com>
      Acked-by: NLuciano Coelho <coelho@ti.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      59eb21a6
  3. 03 1月, 2011 1 次提交
  4. 23 12月, 2010 1 次提交
  5. 15 12月, 2010 7 次提交
    • L
      wl12xx_sdio_test: rename files to match current style · 248daa08
      Luciano Coelho 提交于
      Change some file names and Kconfig settings so that this new module matches
      the new way of using wl12xx instead of wl1271.
      
      Also fix SDIO power enabling and disabling to match the latest way of doing
      it.
      
      Cc: Roger Quadros <roger.quadros@nokia.com>
      Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
      248daa08
    • J
      wl12xx: Change TX queue to be per AC · 6742f554
      Juuso Oikarinen 提交于
      With the current single-queue implementation traffic priorization is not
      working correctly - when using multiple BE streams and one, say VI stream,
      the VI stream will share bandwidth almost equally with the BE streams.
      
      To fix the issue, implement per AC queues, which are emptied in priority
      order to the firmware. To keep it relatively simple, maintain a global
      buffer count and global queue stop/wake instead of per-AC.
      
      With these changes, priorization appears to work just fine.
      Signed-off-by: NJuuso Oikarinen <juuso.oikarinen@nokia.com>
      Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
      6742f554
    • E
      wl12xx: allow runtime changing of debug_level · 17c1755c
      Eliad Peller 提交于
      Currently, the debug level is set in compilation time (by the DEBUG_LEVEL
      const). This method has the advantage of compiling only the relevant
      messages, while optimizing out the unused ones.
      
      In order to allow runtime control over the debug_level, while optimizing
      out messages when debug messages are not needed, we combine some methods:
      1. use dynamic_debug (pr_debug) rather then printk.
      2. add debug_level module param in order to set debug level during insmod.
      3. add debug_level sysfs file in order to allow dynamic control over the
         debug level.
      
      Since patches for pr_debug_hex_dump() implementation haven't been applied yet,
      we are still temporarly using print_hex_dump().
      Signed-off-by: NEliad Peller <eliad@wizery.com>
      Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
      17c1755c
    • G
      wl1271: fixed problem with WPS IEs in probe requests · ea559b46
      Guy Eilam 提交于
      Inclusion of a WPS IE in probe requests caused a problem
      in the driver due to the maximum size of the probe request
      template and the max_scan_ie_len values at initialization.
      
      Increased the size of probe request template
      to the maximum size allowed by the firmware.
      Struct wl12xx_probe_req_template, which was only used
      for calculating the max size of the probe request template,
      is no longer used and needed.
      
      max_scan_ie_len is used for validating the size of
      additional IEs in scan requests.
      Initialized the max_scan_ie_len field to the maximum size
      of the probe request template minus the ieee80211 header size.
      Signed-off-by: NGuy Eilam <guy@wizery.com>
      Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
      ea559b46
    • E
      wl12xx: add auto-arp support · c5312772
      Eliad Peller 提交于
      The auto-arp feature of wl12xx allows the firmware to automatically
      response to arp requests asking for its ip.
      
      in order to use it, we configure the arp response template and
      enable the corresponding bit in wl1271_acx_arp_filter (along with
      passing its ip)
      Signed-off-by: NEliad Peller <eliad@wizery.com>
      Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
      c5312772
    • R
      wl1271_sdio_test: Add module for sdio RX/TX testing · b69eb80b
      Roger Quadros 提交于
      This module enables individually generating RX and TX traffic
      over the SDIO bus on which the WL1271 chipset is connected.
      This is required to perform RF interference testing.
      
      The module takes 2 module parameters 'rx' and 'tx'.
      
      To generate RX traffic:
      	modprobe wl1271_sdio_test rx=1
      To generate TX traffic:
      	modprobe wl1271_sdio_test tx=1
      
      To generate both RX & TX traffic, set both rx and tx to 1.
      
      You can change the testing configuration at runtime by changing
      the rx & tx values at /sys/modules/wl1271_sdio_test/
      
      To stop testing simply unload the module.
      Signed-off-by: NRoger Quadros <roger.quadros@nokia.com>
      Reviewed-by: NCarlos Chinea <carlos.chinea@nokia.com>
      Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
      b69eb80b
    • L
      wl12xx: disable 11a channels when wl->enable_11a is known · fb6a6819
      Luciano Coelho 提交于
      Disabling the 11a channels when not supported in the reg_notify function was
      not working as it should, because when the driver is initiailizing (and
      registering itself with mac80211), it would get the reg notification too
      early.  At that point the driver wouldn't have received the NVS yet, so it
      wouldn't know whether 11a was supported.
      
      To fix this, we disable 11a channels when we read the NVS instead.  Also, it
      is easier (and still safe) to set n_channels to zero instead of setting the
      disabled flag on every 11a channel.
      Signed-off-by: NLuciano Coelho <luciano.coelho@nokia.com>
      fb6a6819
  6. 02 12月, 2010 5 次提交
  7. 26 11月, 2010 2 次提交
  8. 23 11月, 2010 1 次提交
  9. 22 11月, 2010 6 次提交
  10. 16 11月, 2010 12 次提交