qcacld-3.0: Enable green AP for AP stand alone and EGAP disabled

qcacld-2.0 to qcacld-3.0 propagation

When EGAP is enabled, configure EGAP parameters to firmware, and do
nothing for GAP.
When EGAP is disabled, need refine GAP in below situation.
  AP+STA concurrency mode
    When starts STA in case of AP existence, GREEN_AP_PS_STOP_EVENT
    will be triggered, at this time need to set green_ap->ps_enable
    as 0 and send firmware WMI_PDEV_GREEN_AP_PS_ENABLE_CMDID with
    value 0.
    When stops STA in case of AP existence, abandon using of
    GREEN_AP_PS_IDLE_STATE, because once in GREEN_AP_PS_IDLE_STATE,
    more than one GREEN_AP_PS_START_EVENT are needed to achieve
    the GREEN_AP_PS_ON_STATE. Use GREEN_AP_PS_OFF_STATE instead.
  AP mode
    Remove hdd_wlan_green_ap_start_bss/hdd_wlan_green_ap_stop_bss
    in eSAP_START_BSS_EVENT/eSAP_STOP_BSS_EVENT, becasue SME
    session id is invalid in the context of eSAP_STOP_BSS_EVENT.
    Add hdd_wlan_green_ap_start_bss/hdd_wlan_green_ap_stop_bss in
    __wlan_hdd_cfg80211_start_ap/__wlan_hdd_cfg80211_stop_ap instead.
  AP+AP mode
    In hdd_wlan_green_ap_stop_bss, only trigger
    GREEN_AP_PS_STOP_EVENT when the last AP stops.

Change-Id: Ifbf09b870b919d2bd155887bf17a494be07f97b4
CRs-Fixed: 1069300
4 files changed
tree: 10de64a93f96ca14b87aa490ea5ea19ef58675e9
  1. core/
  2. uapi/
  3. Android.mk
  4. Kbuild
  5. Kconfig
  6. Makefile
  7. README.txt