tree f69c192b05c6600f95a556fc9f346454fb34fe76
parent 27782284f620f0b6ec5d302c43f92091b10d5d16
author Mushtaq A Mujale <mmujale@qca.qualcomm.com> 1386102407 -0800
committer Prakash Dhavali <pdhavali@qca.qualcomm.com> 1386499721 -0800

cld: HDD: Add knobs to control various PS params

    These knobs are controlled from ini and are by default
    disabled.
1.  To control SMPS (gEnableHtSMPS) and gHtSMPS to configure
    diff SMPS states(static/dynamic/disabled).
       -static: Enable single RF chain(TX/RX) for the period this
                is enabled.
        -dynamic: STA listens on single RF, upon reception of directed
                  RTS switch's to multiple RF chains for completion of
                  packet or TXOP.
        -disabled: default behaviour, SMPS disabled.
    This is complety transparent to host(will not be pulished in assoc
    req). Firmware will send required action frame for the state change.
--
    Power save is further improved by the following params, MAC makes
    intelligent decision based on appropiate condition for PS, and notifies
    baseband(MAC_BB_NAP) to go into PS mode letting PHY to go in low
    power state.
    These configs are host agnostic, host only programs the fw when
    ini is set and specific conditions are met.
2.  To control AMPDU PS (gEnableAMPDUPS), when set it enables the detect
    of a corrupted first delimiter to trigger a NAP to BB.
3.  To control Partial Aid PS (gEnablePAID), pAID is extracted from SIG-A
    field and compared with the pre-programed pAID value(fw derives this)
    and if it matches then MAC sends a NAP signal to BB.
4.  To control Group ID PS (gEnableGID), h/w compares the GID from the
    received frames and compares with the one programed(Host will program
    them by extracting it from GID management action frame) and if it does
    not match MAC sends a NAP signal to BB.
--
cld: dot11.frms: Add new GID management Action
    Update the dot11.frms to include the new action frame
    and run the tool which updates the given(dot11f.c/h) files. These
    are auto generated files.
--
cld: PE,SME,WDA: Umac processing of params/action frame
    Pass the params to WMA layer.
    Add reception/parsing of GID management action frame and
    set the required info to the fw.

Change-Id: Ic0da6cd9897669a90ca24964cdfee781a70ecdcc
CRs-Fixed: 555666
