1. 15 Dec, 2010 6 commits
    • Juuso Oikarinen's avatar
      wl12xx: Change TX queue to be per AC · 6742f554
      Juuso Oikarinen authored
      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: default avatarJuuso Oikarinen <juuso.oikarinen@nokia.com>
      Signed-off-by: default avatarLuciano Coelho <luciano.coelho@nokia.com>
      6742f554
    • Eliad Peller's avatar
      wl12xx: allow runtime changing of debug_level · 17c1755c
      Eliad Peller authored
      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: default avatarEliad Peller <eliad@wizery.com>
      Signed-off-by: default avatarLuciano Coelho <luciano.coelho@nokia.com>
      17c1755c
    • Guy Eilam's avatar
      wl1271: fixed problem with WPS IEs in probe requests · ea559b46
      Guy Eilam authored
      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: default avatarGuy Eilam <guy@wizery.com>
      Signed-off-by: default avatarLuciano Coelho <luciano.coelho@nokia.com>
      ea559b46
    • Eliad Peller's avatar
      wl12xx: add auto-arp support · c5312772
      Eliad Peller authored
      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: default avatarEliad Peller <eliad@wizery.com>
      Signed-off-by: default avatarLuciano Coelho <luciano.coelho@nokia.com>
      c5312772
    • Roger Quadros's avatar
      wl1271_sdio_test: Add module for sdio RX/TX testing · b69eb80b
      Roger Quadros authored
      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: default avatarRoger Quadros <roger.quadros@nokia.com>
      Reviewed-by: default avatarCarlos Chinea <carlos.chinea@nokia.com>
      Signed-off-by: default avatarLuciano Coelho <luciano.coelho@nokia.com>
      b69eb80b
    • Luciano Coelho's avatar
      wl12xx: disable 11a channels when wl->enable_11a is known · fb6a6819
      Luciano Coelho authored
      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: default avatarLuciano Coelho <luciano.coelho@nokia.com>
      fb6a6819
  2. 02 Dec, 2010 5 commits
  3. 26 Nov, 2010 2 commits
  4. 23 Nov, 2010 1 commit
  5. 22 Nov, 2010 6 commits
  6. 18 Nov, 2010 8 commits
  7. 17 Nov, 2010 12 commits