Commits on May 9, 2013
  1. @elp

    wlcore: increase max roc duration to 30 seconds

    we don't have any actual limitation in the driver, so
    increase it arbitrarily to 30 seconds (for smart_config)
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Mar 27, 2013
  2. @elp

    wlcore: add testmode smart_config set group key command

    Add testmode command to configure a group key for
    a smart config group.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Apr 18, 2013
  3. @elp

    wlcore: add smart_config set group key command

    implement wlcore_cmd_smart_config_set_group_key which
    will be used in order to configure a key for
    a smart_config group.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Mar 27, 2013
  4. @elp

    wlcore: handle SMART_CONFIG events

    add defintions and handling for SMART_CONFIG_SYNC_EVENT_ID
    and SMART_CONFIG_DECODE_EVENT_ID events.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Mar 18, 2013
  5. @elp

    wlcore: handle smart_config_start/stop testmode commands

    userspace can ask to enter/exit smart_config mode via
    smart_config_start and smart_config_stop testmode commands.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Mar 18, 2013
  6. @elp

    wlcore: add smart_config testmode definitions

    Add testmode attributes and events that will be used
    during smart_config.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Apr 18, 2013
  7. @elp

    wlcore: move testmode definitions to testmode.h

    These definitions will be used by userspace as well
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Apr 18, 2013
  8. @elp

    wlcore: wrap testmode.h code with __KERNEL__

    we are going to move the testmode definitions to testmode.h,
    and then use it by userspace as well, so wrap any kernel-only
    code with a proper ifdef.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Mar 18, 2013
  9. @elp

    wlcore: add smart_config_start/stop commands

    These commands configures the fw to enter and
    exit smart_config mode.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Mar 18, 2013
  10. @elp

    wlcore: add smart config definitions

    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Mar 12, 2013
Commits on May 7, 2013
  1. @igalc

    wlcore: fix interrogate command length

    Change interrogate command prototype to have command size and returned
    buffer length. This fixes the issue when command parameters are to
    be passed to FW in addition to acx header as in the case with get RSSI command
    where role_id is to be passed.
    
    Signed-off-by: Igal Chernobelsky <igalc@ti.com>
    igalc committed Apr 28, 2013
Commits on Apr 17, 2013
  1. @elp

    mac80211: notify dissassoc/bssid_change on suspend (INTERNAL)

    On suspend, notify the low-level driver about disassoc.
    Otherwise, the interface will be removed while the sta
    is connected, resulting in some invalid state (which
    might end with a fw error).
    
    Change the relevant bss_conf fields, notify the
    driver, and then restore the original values.
    
    NOTE: This patch is not needed for upstream, as the
    suspend/resume flow was completely changed there.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Apr 15, 2013
Commits on Apr 9, 2013
  1. @victorgld

    wl18xx: print new RDL versions during boot

    Extract and print info for the new RDL 5, 6, 7 and 8.
    Replace const struct with function which translates
    the RDL number to string.
    
    Signed-off-by: Victor Goldenshtein <victorg@ti.com>
    victorgld committed Apr 9, 2013
Commits on Apr 4, 2013
  1. @elp

    mac80211: use freezable workqueue for restart work

    Requesting hw restart during suspend might result
    in the restart work being executed after mac80211
    and the hw are suspended.
    
    Solve the race by simply scheduling the restart
    work on a freezable workqueue.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Apr 2, 2013
  2. @victorgld

    wl18xx: fix boot process in high temperature environment

    In addition to existing WCS PLL configuration add and enable
    also the coex PLL during init phase. This fixes boot failures
    due to silicon latchup in high temperature environment (>85c).
    
    Signed-off-by: Victor Goldenshtein <victorg@ti.com>
    victorgld committed Apr 3, 2013
Commits on Apr 3, 2013
  1. @victorgld

    wlcore: fix regulatory domain bit translation

    This is a fix for channels 52,56,60,64 bit translation.
    
    Reported-by: Yaniv Machani <yanivma@ti.com>
    Signed-off-by: Ido Reis <idor@ti.com>
    Signed-off-by: Victor Goldenshtein <victorg@ti.com>
    Ido Reis committed with victorgld Jan 2, 2013
Commits on Mar 20, 2013
  1. @igalc

    wl18xx: default config alignment with phy defaults

    Driver default config is aligned with phy default parameters.
    
    Signed-off-by: Igal Chernobelsky <igalc@ti.com>
    igalc committed Mar 20, 2013
Commits on Mar 19, 2013
  1. @victorgld

    wlcore: fix unsafe dereference of the wlvif

    wlvif could be passed as NULL from the wlcore_tx_work_locked()
    to the wl1271_prepare_tx_frame() and to wl1271_skb_queue_head()
    functions. This may lead to a Kernel panic, fix this by
    validating that wlvif != NULL.
    
    Signed-off-by: Victor Goldenshtein <victorg@ti.com>
    victorgld committed Jan 17, 2013
Commits on Mar 18, 2013
  1. @elp

    mac80211: use short slot for ap on 11a channel (INTERNAL?)

    ieee80211_change_bss is responsible for setting use_short_slot
    when beaconing on 11a channel. However, since SET_BSS is called
    before START_AP (which sets the channel), the channel is still
    unknown at this stage.
    
    Add a similar check for ieee80211_start_ap as well.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Mar 18, 2013
  2. @elp

    wlcore: don't bail out when beacon/probe resp are missing

    On ap initialization, the ap rates are configured before
    the beacon and probe-response are configured.
    
    Trying to set the beacon/probe-response in this stage
    results in bailing out from wl1271_bss_info_changed_ap,
    before all the configurations took place.
    
    Identify this case by checking explicitly for -ENOENT
    return value when configuring the beacon/probe-response.
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    elp committed Mar 17, 2013
  3. @victorgld

    wlcore: optimize scan debug prints

    Remove scan debug dumps which are rarely used.
    Make scan debug prints clear and short.
    
    Signed-off-by: Victor Goldenshtein <victorg@ti.com>
    victorgld committed Mar 17, 2013
Commits on Mar 17, 2013
  1. @victorgld

    wl18xx: update chip ROM version mask and offset

    This should properly handle new PG 2.2 devices.
    
    Should be squashed with:
    da61174 wl18xx: print chip info during boot
    
    Signed-off-by: Victor Goldenshtein <victorg@ti.com>
    victorgld committed Mar 13, 2013
Commits on Mar 5, 2013
  1. @igalc

    wl18xx: update FW min ver to 86.0.0.1

    New features added to FW API:
    - Mailbox event RX_BA_WIN_SIZE_CHANGE_EVENT_ID
    - TX descriptor attribute TX_HW_ATTR_EAPOL_FRAME
    
    Signed-off-by: Igal Chernobelsky <igalc@ti.com>
    igalc committed Mar 5, 2013
  2. @yairs534 @igalc

    wlcore: Add RX_BA_WIN_SIZE_CHANGE_EVENT event

    This event is used by the Firmware to limit the RX BA win size
    for a specific link.
    
    The event handler updates the new size in the driver's link struct
    and in the mac's sta->sta struct accordingly and closes all active BA
    sessions for that link.
    
    Conseqent BA sessions opened for that link will use the new restricted
    win_size. This limitation remains until a new update is received or
    until the link is closed.
    
    This solves an IOP bug with APs that don't respect the max subframes in
    a single-frame and uses the max win_size instead. In these cases the FW
    recovers by sending this event to decrease the win_size to use the single
    frame limitation.
    
    Signed-off-by: Yair Shapira <yair.shapira@ti.com>
    yairs534 committed with igalc Nov 14, 2012
  3. @yairs534 @igalc

    wlcore: ACX_BA_SESSION_RX_SETUP win_size taken from sta

    Now that max_rx_aggregation_subframes (BA RX win size) is stored in the
    mac per active link (and not only per chip), use the link (sta) value
    when passing the win_size to firmware through the ACX_BA_SESSION_RX_SETUP
    command.
    
    Signed-off-by: Yair Shapira <yair.shapira@ti.com>
    yairs534 committed with igalc Nov 14, 2012
  4. @yairs534 @igalc

    mac80211: RX BA support for sta max_rx_aggregation_subframes

    Normally rx ba buff size is limited by a max limitation set by the driver
    with local->hw.max_rx_aggregation_subframes. This is the max aggregation
    'win_size' supported by the chip.
    
    This fix adds max_rx_aggregation_subframes field to sta->sta. This field
    is initialy set to local->hw.max_rx_aggregation_subframes and is used
    by addba_req routine. The driver/chip can choose to change this value
    causing stop of existing ba sessions and effectivly forcing new ba sessions
    (on this link) to be restricted by the new value.
    
    This capability is usefull in cases of IOP, i.e. cases where peer sta
    or ap doesn't respect the max subframes in a single-frame and uses the
    max win_size instead. In these cases the driver/chip may recover by
    decreasing the win_size to use the single frame limitation.
    
    Signed-off-by: Yair Shapira <yair.shapira@ti.com>
    yairs534 committed with igalc Nov 12, 2012
Commits on Feb 27, 2013
  1. @victorgld

    wl18xx: increase the number of allowed BA sessions

    Increase the WL18XX_RX_BA_MAX_SESSIONS to 8.
    Update min firmware version requirements to
    8.5.0.0.58.
    
    Signed-off-by: Victor Goldenshtein <victorg@ti.com>
    victorgld committed Feb 25, 2013
  2. @victorgld

    wlcore: print active channel in the driver_state

    Print current active channel/s and a role type for
    that channel in the driver_state debugfs.
    
    Signed-off-by: Victor Goldenshtein <victorg@ti.com>
    victorgld committed Feb 24, 2013
Commits on Feb 26, 2013
  1. @igalc

    wlcore: send EAPOL frames with voice priority

    Send EAPOL frames with voice priority by setting TX_HW_ATTR_EAPOL_FRAME
    new bit in tx attribute. Sending EAPOL with voice priority fixes
    re-key timeout during heavy traffic issue.
    
    Signed-off-by: Igal Chernobelsky <igalc@ti.com>
    igalc committed Feb 26, 2013
Commits on Feb 25, 2013
  1. @igalc

    Revert "wl18xx: send EAPOL frames with TID 7"

    This reverts commit 79fd0db.
    igalc committed Feb 25, 2013
Commits on Feb 20, 2013
  1. @victorgld

    wlcore: fix occasional AP TX stop after recovery

    The fw_status wasn't zeroed during allocation, this caused to
    occasional AP traffic stops after recovery. The wrong value in
    the "wl->fw_status_2->counters.tx_lnk_free_pkts" led to a bad
    "lnk->allocated_pkts" calculation in the wlcore_fw_status()
    causing the wl18xx_lnk_low_prio() to return FALSE
    (lnk->allocated_pkts > thold).
    This eventually blocked the link in the wlcore_tx_work_locked()
    as the wl1271_skb_dequeue() continuously return NULL.
    
    Fix this by zeroing the wl->fw_status_1/2 during allocation.
    
    Signed-off-by: Victor Goldenshtein <victorg@ti.com>
    victorgld committed Feb 20, 2013
Commits on Feb 11, 2013
  1. @ariknem

    wlcore: hold jiffies in unsigned long

    u32 can be incorrect (too small) for some architectures.
    
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
    ariknem committed Feb 11, 2013
  2. @ariknem

    wlcore: cancel channel switch work on interface removal

    Otherwise, if the work is pending, we might get a bad dereference after
    the interface is removed.
    
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
    ariknem committed Feb 10, 2013
  3. @ariknem

    wlcore: ROC on AP channel before auth reply

    Start a ROC on the AP channel beforing sending the authentication reply
    to a connecting STA. This ROC is held up to 1 second via a timer. If the
    station is authorized and added by mac80211, the ROC is extended until
    the station is fully authorized.
    We make sure not to ROC twice when several stations are connecting in
    parallel and to only release the ROC when both the pending-reply timer
    and the STA-state callbacks do not require it.
    
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
    ariknem committed Feb 10, 2013
Commits on Feb 6, 2013
  1. @codido @ariknem

    wlcore: Add missing wake_unlock in op_resume

    When resuming, wlcore_irq_locked is called directly, but the wake lock which
    was acquired in op_suspend is not released. Fix this.
    
    Signed-off-by: Ido Yariv <ido@wizery.com>
    Signed-off-by: Arik Nemtsov <arik@wizery.com>
    codido committed with ariknem Feb 6, 2013