Permalink
Switch branches/tags
wl18xx-r5-20120103 wl18xx-internal-2012-05-21 wl18xx-20120203 wl18xx-20120202 wl18xx-2012-07-08 wl18xx-2012-07-08-2 wl18xx-2012-04-04 wl18xx-2012-03-23 wl18xx-2012-03-22 wl18xx-2012-03-21 wl18xx-2012-03-20 wl18xx-2012-03-02 wl18xx-2012-02-28 wl18xx-2012-02-27 wl18xx-2012-02-22 wl18xx-2012-02-21 wl18xx-2012-02-15 wl18xx-2012-02-14 wl18xx-2012-02-09 wl18xx-2012-02-08 wl18xx-2012-02-07 wl18xx-2011-12-16 wl18xx-2011-12-15 wl18xx-2011-12-15-2 wl18xx-2011-12-14 wl18xx-2011-12-13 wl18xx-2011-12-08-pre-rebase wl18xx-2011-12-02 wl18xx-2011-12-02-3 wl18xx-2011-12-02-2 wl18xx-2011-12-01 wl18xx-2011-11-30 wl18xx-2011-11-29 wl18xx-2011-11-29-2 wl18xx-2011-11-22 wl18xx-2011-11-21 wl18xx-2011-11-19-blaze wl18xx-2011-11-17-blaze wl18xx-2011-11-14-blaze wl18xx-2011-11-14-2-blaze wl18xx-2011-11-04-blaze wl18xx-2011-10-11 wl18xx-02-20 upstreaming-2013-03-25 upstreaming-2013-03-07 upstreaming-2013-03-05 upstream-3.4 testing-2011-12-12 r8.a6.06_38 r8.a3.09-build_51 r8.a3.09-build_50 r8.a3.09-build_49 r8.a3.09-build_48 r8.a3.09-build_47 r8.a3.09-build_45 r8.a3.09-build_44 r8.a3.09-build_43 r8.a3.09-build_42 r8.a3.09-build_41 r8.a3.09-build_39 r8.a3.09-build_38 r8.a3.09-build_37 r8.a3.09-build_36 r8.a3.09-build_35 r8.a3.09-build_30 r8.a3.09-build_29 r8.a3.09-build_28 r8.a3.09-build_27 r8.a3.09-build_25 r8.a3.09-build_24 r8.a3.09-build_23 r8.a3.09-build_22 r8.a3.09-build_21 r8.a3.09-build_20 r8.a3.09-build_19 r8.a3.08-build_18 r8.a3.08-build_16 r8.a3.08-build_14 r8.a3.08-build_13 r8.a3.08-build_12 r8.a3.08-build_11 r8.a3.08-build_10 r8.a3.05-build_7 r8.a3.05-build_6 r8.a3.05-build_5 r8.a3.05-build_4 r8.a3.05-build_3 r8.a3.05-build_1 r8.a2.09 r8.a2.08 r8.a2.08-candidate r8.a2.07 r8.a2.07-build_146 r8.a2.07-build_141 r8.a2.07-build_140 r8.a2.07-build_139 r8.a2.07-build_136 r8.a2.06 r8.a2.05 r8.a2.04
Nothing to show
Commits on Sep 25, 2012
  1. mac80211: add cookie to remain_on_channel callback

    elp committed Sep 24, 2012
    a roc might get cancelled (by the user) after it was
    expired (by the low-level driver), but before mac80211
    processed the hw_roc_done work.
    
    In this case, the hw_roc_done work might expire the
    roc that has just started (when the previous roc
    was cancelled), which will get mac80211 and the
    low-level driver to go out of sync.
    
    Fix it by passing the pointer of the roc struct
    as cookie, and check this cookie on expiry
    notification.
    
    TODO: add flush_work, fix traces, ...
    a better solution should be implemented completely
    in mac80211, but the locking semantics complicate
    it, so leave it for now.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
Commits on Sep 20, 2012
  1. mac80211: ignore global channel type when starting AP

    ariknem committed Sep 20, 2012
    A bogus check was left in the code that failed the creation of an AP
    with a channel different from that configured to an already operating
    interface.
    
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
Commits on Sep 13, 2012
  1. nl80211: update definitions from newest wpa_s

    ariknem committed Sep 13, 2012
    added channel switch related commands
    
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
Commits on Sep 9, 2012
  1. 18xx: declare support for greenfield ht_cap

    elp authored and Ido Reis committed Aug 28, 2012
    The 18xx fw supports greenfield so add the
    IEEE80211_HT_CAP_GRN_FLD flag to the supported
    ht capabilities flags.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    Signed-off-by: Ido Reis <idor@ti.com>
  2. mac80211: use call_rcu() on sta deletion

    elp committed Sep 3, 2012
    mac80211 calls synchronize_rcu() on sta deletion,
    which increase the roaming time significantly.
    
    Convert it into a call_rcu() mechanism, in order
    to avoid blocking. Since some of the cleanup
    functions might sleep, schedule from the call_rcu
    callback a new work that will do the actual cleanup.
    
    In order to make sure the cleanup occurs before
    the interface went down, flush local->workqueue
    on ieee80211_do_stop().
    
    Signed-off-by: Yoni Divinsky <yoni.divinsky@ti.com>
    Signed-off-by: Eliad Peller <eliad@wizery.com>
  3. mac80211: use synchronize_net() on key destroying

    elp committed Sep 3, 2012
    __ieee80211_key_destroy() calls synchronize_rcu() in
    order to sync the tx path before destroying the key.
    
    However, synching the tx path can be done with
    synchronize_net() as well, which is usually faster
    (the timing might be important for roaming scenarios).
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
  4. mac80211: clear bssid on auth/assoc failure

    elp committed Sep 3, 2012
    ifmgd->bssid wasn't cleared properly in some
    auth/assoc failure cases, causing mac80211 and
    the low-level driver to go out of sync.
    
    Clear ifmgd->bssid on failure, and notify the driver.
    
    Cc: stable@kernel.org # 3.4+
    Signed-off-by: Eliad Peller <eliad@wizery.com>
  5. wlcore: check wl->state before setting default key

    elp committed Sep 3, 2012
    wl1271_op_set_default_key_idx() lacks a check
    of wl->state, causing the driver to try writing
    to a powered-off device in some cases (e.g.
    during recovery)
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
Commits on Sep 6, 2012
  1. wlcore: update AP rates after band change

    ariknem authored and Ido Reis committed Sep 6, 2012
    The channel and band are updated after the basic rates have already
    been set. This causes us to choose wrong HW rate indices that are passed
    to FW. Fix this by updating basic rates when the channel is updated.
    
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
Commits on Sep 5, 2012
  1. Revert "mac80211: use legacy mode for all ACs"

    ariknem committed Sep 5, 2012
    This reverts commit a5e6e2a.
    
    There are problems with BT voice if we don't use UAPSD mode for VO.
  2. wlcore: clear roc_vif on iface removal

    ariknem committed Sep 5, 2012
    When removing an interface currently performing a ROC operation, clear
    the current ROC state. This is useful especially during recovery and
    keeps mac80211 in sync to our state.
    
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
Commits on Sep 4, 2012
  1. mac80211: Delay sta deletion to make roaming faster (INTERNAL)

    yonid authored and ariknem committed Sep 3, 2012
    In mac80211 STA all peers are deleted before auth
    to a new AP. Due to the rcu synchornization this
    process can take a long period.
    
    Move the sta object freeing of the old AP and
    the rcu synchronization to a later time after
    the roaming is completed.
    
    Signed-off-by: Yoni Divinsky <yoni.divinsky@ti.com>
    Signed-off-by: Eliad Peller <eliad@wizery.com>
  2. wlcore: protect wlcore_op_set_key with mutex

    elp authored and ariknem committed Sep 3, 2012
    wlcore_op_set_key() calls wl18xx_set_key(),
    which in turn executes some of his function
    calls without acquiring wl->mutex and making
    sure the fw is awake.
    
    Adding mutex_lock()/ps_elp_wakeup() calls is
    not enough, as wl18xx_set_key() calls
    wl1271_tx_flush() which can't be called while
    the mutex is taken.
    
    Add the required calls to wlcore_op_set_key,
    but limit the queues_stop and flushing
    to the only encryption types in which
    a spare block might be needed (GEM and TKIP).
    
    [Arik - move state != ON check]
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
Commits on Sep 3, 2012
  1. wlcore: remove WLCORE_QUIRK_NO_ELP

    elp committed Sep 3, 2012
    all the current firmwares support elp, so
    we can safely remove WLCORE_QUIRK_NO_ELP.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
  2. wlcore: decrease elp timeout

    elp committed Sep 2, 2012
    The current elp timeout (the same as the dynamic
    ps timeout - 1500ms) is too high. Usually,
    wl1271_ps_elp_sleep() get called right after tx/rx,
    which is fine, but some command might get sent
    even when there is no traffic (e.g. ht changes
    triggered by beacon frames), and leaving the
    device awake for 1500ms in this case is redundant.
    
    Use a timeout of 10ms.
    The fw won't enter elp anyway before the dynamic-ps
    timeout was expired as well (and it entered ps
    successfully).
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
  3. Revert "wlcore: add extended elp timeout support"

    elp committed Sep 3, 2012
    This reverts commit 1ffffe4.
Commits on Sep 2, 2012
  1. wlcore: add extended elp timeout support

    elp authored and ariknem committed Sep 2, 2012
    The current elp timeout (the same as the dynamic
    ps timeout - 1500ms) is too high. Usually,
    wl1271_ps_elp_sleep() get called right after tx/rx,
    which is fine, but some command might get sent
    even when there is no traffic (e.g. ht changes
    triggered by beacon frames), and leaving the
    device awake for 1500ms is redundant.
    
    Revert the default elp timeout to 5ms, but add
    function to extend this period during rx/tx.
    
    Take care of previously configured extended elp
    timeout when calculating the timeout in
    wl1271_ps_elp_sleep().
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
Commits on Aug 30, 2012
  1. wl18xx: update phy config and defaults

    yairs534 authored and Ido Reis committed Aug 30, 2012
    Modify phy config params structure to latest phy version
    Default values and min FW version were updated accordingly.
    Default external_pa_dc2dc value set to 0 (internal dc2dc).
    New firmware baseline is 8.4.0.0.5.
    
    Signed-off-by: Yair Shapira <yair.shapira@ti.com>
  2. wlcore: allow ACX_BA_SESSION_RX_SETUP to fail

    elp committed Aug 27, 2012
    Under some circumstances, that fw might be asked to
    remove a rx ba sessions it doesn't know about. In
    this case, instead of triggering a recovery, accept
    the error code (CMD_STATUS_NO_RX_BA_SESSION) and
    ignore it.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
  3. wlcore: allow fw commands to fail

    elp committed Aug 27, 2012
    Currently, each fw command/acx that return a status code
    different than CMD_STATUS_SUCCESS will trigger a recovery
    in the driver.
    
    However, it is a valid for some fw commands to fail (e.g.
    due to temporary lack of resources), so add new functions
    that allow passing bitmap of valid error return values.
    
    (make the current wl1271_cmd_send/wl1271_cmd_configure
    wrappers around the new functions, in order to avoid
    changing the whole driver)
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
Commits on Aug 29, 2012
  1. Revert "18xx: declare support for greenfield ht_cap"

    Ido Reis
    Ido Reis committed Aug 29, 2012
    FW not support this yet, will be committed again once its does.
    
    This reverts commit 1473b8c.
  2. wlcore: pass wmm configuration to the fw

    elp committed Aug 28, 2012
    New fields were added to start_role(ap) and
    set_peer_state commands, so the fw will be
    able to know whether the sta/ap supports
    wmm (the fw uses it in order to choose the
    AC for some of its internally-generated frames)
    
    For sta, take this value right from bss_conf->qos.
    
    For ap, check for wmm support by looking for the
    WMM IE in the configured beacon.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
  3. wlcore: Allow memory access when the FW crashes

    codido authored and ariknem committed Aug 21, 2012
    When the no_recovery flag is used, the recovery work will not restart
    the FW and the state will not be set to 'on'. To enable post-mortem
    analysis, allow memory access in the 'restarting' state.
    
    Also, since the FW might not be operational, don't fail the read/write
    operations if elp_wakeup fails.
    
    Reported-by: Arkady Miasnikov <a-miasnikov@ti.com>
    Signed-off-by: Ido Yariv <ido@wizery.com>
  4. wlcore: fix init sequence for p2p mgmt interface

    ariknem committed Aug 28, 2012
    We didn't handle a failure case correctly. Should be squashed with
    2148a00.
    
    Reported-by: Victor Goldenshtein <victorg@ti.com>
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
Commits on Aug 28, 2012
  1. 18xx: declare support for greenfield ht_cap

    elp authored and Ido Reis committed Aug 28, 2012
    The 18xx fw supports greenfield so add the
    IEEE80211_HT_CAP_GRN_FLD flag to the supported
    ht capabilities flags.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
Commits on Aug 27, 2012
  1. wlcore: fix bogus WARN_ON

    elp committed Aug 21, 2012
    we currently don't support scan requests with multiple
    ssids, but passive scans (n_ssids=0) are supported,
    so no need to WARN in this case.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
  2. wlcore: use dynamic keep-alive template ids

    elp committed Aug 16, 2012
    Currently, all the (station) roles use the same
    keep-alive template id (0). However, the klv
    template ids shouldn't be shared by different
    roles.
    
    Implement a simple klv_templates bitmap, and let
    each role allocate its own klv template id on
    role initialization.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
Commits on Aug 16, 2012
  1. wlcore: invalidate keep-alive template on disconnection

    elp authored and ariknem committed Aug 16, 2012
    Previously, invalidation of the keep-alive template was
    done when going idle. However, while removing the
    idle-handling we didn't move the keep-alive template
    invalidation to another place.
    
    This finally resulted in fw error when trying to use
    the keep-alive template by another role.
    
    (Note that we still have an error here - each role
    should have its unique keep-alive template id, while
    currently they all use CMD_TEMPL_KLV_IDX_NULL_DATA (0).
    This only works now because we don't support concurrent
    connected stations yet)
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
Commits on Aug 15, 2012
  1. wl18xx: set default HT mode to automatic

    ariknem committed Aug 15, 2012
    We can correctly select between wide/mimo modes according to the number
    of antennas.
    
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
  2. wl18xx: default to siso40 in 2.4ghz with a single antenna

    ariknem committed Aug 15, 2012
    The driver used siso20 in this case for legacy reasons.
    
    Reported-by: Ido Reis <idor@ti.com>
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
  3. wlcore: Fix unbalanced interrupts enablement

    codido authored and ariknem committed Aug 15, 2012
    The interrupt line is enabled by wl12xx_enable_interrupts and
    wl18xx_enable_interrupts, but it will not be disabled in all failure
    paths. Fix this.
    
    Signed-off-by: Ido Yariv <ido@wizery.com>
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
  4. wlcore: Don't recover during boot

    codido authored and ariknem committed Aug 15, 2012
    While recursive recovery is avoided during shutdown, a new recovery may
    be queued when the FW boots. The recovery work will then try to stop an
    already stopped hardware, which will most likely result in a kernel
    panic.
    
    Fix this by verifying that wl->state is on before queueing a new
    recovery.
    
    Signed-off-by: Ido Yariv <ido@wizery.com>
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
  5. wl18xx: Add missing wl18xx conf default value

    yairs534 authored and Ido Reis committed Aug 15, 2012
    Added missing 18xx conf (phy parameter) default value for
    pwr_limit_reference_11p. Default is set to 0xc8
    
    Signed-off-by: Yair Shapira <yair.shapira@ti.com>