Commit Graph

463 Commits

Author SHA1 Message Date
Wu Gao
c6d738e3ce qcacmn: fix implict memory leak
Fix implict memory leak in P2P target if layer.

Change-Id: Ic7dbf6673b67ec34e060b785c59dd3a99b855f6d
CRs-Fixed: 2055496
2017-06-09 00:05:56 -07:00
Amar Singhal
2e55c111a8 qcacmn: Implement 11d state machine
Regulatory component needs to listen to vdev messages in order to track
whether a master mode vdev is getting created or destroyed. It is also
used to kick-start the state machine. Also re-run the state machine when
user-space country code is set.

Change-Id: I5112396314a936f84dad2f0e07329f9cb237aa78
CRs-Fixed: 2048784
2017-06-08 13:46:53 -07:00
Kiran Kumar Lokere
82c8645b38 qcacmn: Add support for 11d FW commands and events
Add support to send 11d scan start and stop commands to FW and
process the 11d new country update event from FW.

Change-Id: I5c1588cfb5af672cdb5738784de1bd0b83bdbe77
CRs-Fixed: 2048784
2017-06-08 13:46:51 -07:00
Vivek
57522058e9 qcacmn: Add target information details to target_iflayer
Add a new target_psoc_info structure in the target if layer with the
following members

wmi_handle
target_type
target_version
target_revision

Also update the psoc data member tgt_if_handle to point to target_psoc_info
instead of pointing to WMI handle directly.

Updated all calls to psoc_get_tgt_if_handle to target_if_get_wmi_handle
which inturn calls psoc_get_tgt_if_handle and getting the tgt_if_handle
returns the WMI handle

CRs-Fixed: 2048277

Change-Id: Icb02d5f3c09f7f9bb7eff4d814ef3ce90ddb84bd
2017-06-08 11:34:37 -07:00
Naveen Rawat
11d820357e qcacmn: Add implementation for WMI_OEM_DMA_RING_CFG_REQ_CMDID
Program the DMA ring configuration to firmware using
WMI_OEM_DMA_RING_CFG_REQ_CMDID.

Change-Id: I99e5b3a369d7eeee1d1fe41782285ed54cdb82cf
CRs-Fixed: 2053958
2017-06-02 14:47:33 -07:00
Naveen Rawat
7c3c746398 qcacmn: Handle CIR/CFR capture in WMI_OEM_RESPONSE_EVENT
Add handling of indirect data in WMI_OEM_RESPONSE_EVENTID.
This data then needs to be sent to userspace app.

Change-Id: Id1661f23ff000b33da9640cc44ea7be25e9f8dc0
CRs-Fixed: 2053958
2017-06-02 14:47:31 -07:00
Naveen Rawat
ba24c486a3 qcacmn: Initialize DMA rings using hal_srng APIs
Initialize DMA rings for CIR/CFR capture and program them
to firmware.

Change-Id: I41c32cddc3fc0f7f0a972bf69ecbacfc9f0626f7
CRs-Fixed: 2053958
2017-06-02 14:47:29 -07:00
Dustin Brown
3c777ef4d2 qcacmn: Expose full hardware filter capabilities via WMI
The WMI API exposes the broadcast hardware filter. Modify the WMI API
to expose all of the supported modes of the hardware filter.

Change-Id: I185b149f4d1ad38692d8ff5810acd52bf84565b2
CRs-Fixed: 2040419
2017-06-01 12:32:20 -07:00
Baila, Shashikala Prabhu
bc3efea885 qcacmn: Add API to get 2GHz/5GHz freq range and wireless modes
Offload layer uses low and high 2GHz/5GHz freq ranges and chip
supported wireless modes to populate umac ic channel list.

Change-Id: I899edd83548d68e67659b3a9273ddaaaf740540b
CRs-Fixed: 2047212
2017-05-31 01:03:11 -07:00
Ravi Kumar Bokka
7e3ec7a1dc qcacmn: Configure and clear packet filter
Add PMO changes to configure and clear default packet filters
over suspend and resume

Change-Id: I2e150defc8ce60e7b8346d058bfe3d9ec286aa26
CRs-Fixed: 2034458
2017-05-30 17:31:14 -07:00
Naveen Rawat
44cf05f6c8 qcacmn: Parse service ready ext event for WIFI_POS DMA rings cap
Parse service ready extension event to get DMA ring capability requested by
firmware to enable CIR/CFR capture. This cap is then saved in WIFI_POS psoc
private object.

Change-Id: I6f6958250af06ac69b627d2f06e120955d625c62
CRs-Fixed: 2040688
2017-05-26 08:38:21 -07:00
Abhijit Pradhan
40dd86dbfe qcacmn: Populate ext-service-ready info before using
The legacy call back reads  per pdev frequency information (and
other information) from extended service event. The ext-service-ready
must be extracted and stored in per PSoc structure before pDev can
read it.

Change-Id: I9d6245c7c58a14b7aa08642c84b3a51b20e3d0c2
CRs-Fixed: 2047212
2017-05-20 14:35:59 -07:00
Krishna Rao
0243d51fbe qcacmn: Set max active scan limit for non-TLV chipsets
Call target_if_scan_set_max_active_scans() to set the max active
scan limit to WLAN_MAX_ACTIVE_SCANS_ALLOWED, for non-TLV
chipsets.

CRs-Fixed: 2049689
Change-Id: I4e5700ed5e7ffbde49652a961ecd14fb3eacaceb
2017-05-19 12:53:42 -07:00
Kiran Kumar Lokere
a843634983 qcacmn: Add support to send new country to FW
Add support to set new country code to the FW

Change-Id: Id24967b7c9e93bfbf045f494f142be9e33e16483
CRs-Fixed: 2042879
2017-05-18 13:42:21 -07:00
Edayilliam Jayadev
642201f048 qcacmn: Converge the Spectral feature
Add Spectral TxOps and RxOps interfaces in
psoc towards converging the Spectral feature.

CRs-Fixed: 2028657
Change-Id: If5b46fb9d71529060df6e5b242fcc8976fce82f8
2017-05-16 22:08:04 -07:00
Venkateswara Swamy Bandaru
0b9f5ec37c qcacmn: Smart antenna API convergence
Added sa_api_tx_ops, sa_api_rx_ops and their initialization. SA API component
id is also added along with sa_api objmanager calls.

Change-Id: I2e912106dcc900e5eba19090c0157827e08264f3
CRs-fixed: 2038298
2017-05-11 10:45:35 +05:30
Bharat Bhushan Chakravarty
145d393444 qcacmn: SON convergence
1) Defined modularized public api for cdp module
to track inactivity and over load detection.
2) Initialization calls are added to attach and
detach SON specific api.
3) operating system specific calls are replaced with qdf calls.

Change-Id: I130d1e99208d6454f5d9888774534cc6d619ad83
2017-05-09 17:29:11 -07:00
Rachit Kankane
4475ff297c qcacmn: P2P protocol changes to Disable/Enable NOA
P2P-GO whenever goes offchannel, issues NOA. With this behavior, we
have issue whenever legacy STA connects to P2P-GO since legacy STA
does not understand NOA. To handle this case, changes are done in p2p
protocol component and the revised behavior will be:
 1. By default no change in NOA.
 2. Whenever first legacy STA connects to GO, p2p protocol component
    disables NOA (i.e. P2P-GO will issue Self-CTS whenever it goes
    off-channel).
 3. Whenever last legacy STA disconnects from GO, p2p protocol
    component enables NOA (i.e. P2P-GO will issue NOA whenever it goes
    off-channel).

Change-Id: I113950ac3fa99ca68fcafcfe4c6095cf4b2def43
CRs-Fixed: 2035609
2017-04-28 04:42:00 -07:00
Sravan Kumar Kairam
eeacf8c236 qcacmn: Add target interface set run time pm in progress
As part of UMAC componentization add target interface set run time
pm in progress during runtime suspend.

Change-Id: Ia5a679f5e5c290f8e4e90fded86586c98073eff3
CRs-Fixed: 2030168
2017-04-25 17:25:29 -07:00
Om Prakash Tripathi
0078b78f06 qcacmn: add set/get APIs for max active scans
Add set/get API for max parallel active scans supported.
Max active scans allowed is set from ext service ready event
handler(8 as of now). Once FW announces this capability, FW
announce value must be used instead of hardcoded value 8.

Change-Id: I2af3a34c9f55f92c47aebbd12838a8d8fc6e3ba7
CRs-Fixed: 1095299
2017-04-25 13:02:21 -07:00
Arif Hussain
9fba31ea0b qcacmn: Register DFS component API in target_if
Register DFS component API in target_if and add API's to
handle radar found and cac found events from firmware.

Change-Id: I3f3d2ff5401e5c969a3df24f51e8aa57f4e17017
CRs-Fixed: 2017481
2017-04-21 02:25:09 -07:00
Adil Saeed Musthafa
469053dcb6 qcacmn: Reducing function name to fix unresolved symbols
There is a limitation in function name length for exported
symbols, because of this we are seeing unresolved symbols.

CRs-Fixed: 2016643.
Change-Id: Idffc3a9d958c8042cf32ba3b07ca3020c31db6be
2017-04-20 05:20:00 -07:00
Kabilan Kannan
3e4752133a qcacmn: Add sta connect/disconnect in TDLS UMAC component
Add sta connection and disconnection event related
methods into TDLS component

Change-Id: I1309792cf68df87b1ecf5a7686ac645ac21d1c7c
CRs-Fixed: 2034220
2017-04-20 00:04:49 -07:00
Frank Liu
9dd3c3e9cb qcacmn: TDLS component: south interface
Add lmac_if layer changes for TDLS

Change-Id: Ic842857ce7ebc83d2a22a8a8e23c60df1c3dbfc8
CRs-Fixed: 2011330
2017-04-20 00:04:38 -07:00
Rajeev Kumar
afc63bc8af qcacmn: Initialize scheduler_msg on stack before posting message
Initialize scheduler_msg on stack before posting using scheduler API
such that un-used fields in message structure are initialized to 0.

Change-Id: Ib3183b2c65eb9affd6610f4572c751c39a25fff7
CRs-Fixed: 2034772
2017-04-17 23:18:18 -07:00
Arif Hussain
948ddd56e7 qcacmn: DFS component target interface support
Add support to handle WMI commands and events related
to DFS component.

Change-Id: Ie21cd8cfbe35dfea31ca608d47a5dfe937d753f4
CRs-Fixed: 2017481
2017-04-17 19:26:43 -07:00
Ravi Kumar Bokka
490aaa1f4b qcacmn: Enable HW broadcast filter
Add ini to param to enable/disable HW filter for bc
(except arp) frame.

Change-Id: Ic9205ae834ff5d93f9c33c7cf93c839eb3aa244a
CRs-Fixed: 1113550
2017-04-17 05:28:14 -07:00
Vikram Kandukuri
d4aa277e8b qcacmn: Static and Dynamic chain mask selection
Host support for Static and Dynamic chain mask selection.
parse new TLVs from ext service ready,copy tables to
wlan_objmgr_soc object.

CRs-Fixed: 2016643.
Change-Id: Ia4735eb4c7774c381df01f56696e8c86fc6c56ab
2017-04-17 02:13:26 -07:00
Om Prakash Tripathi
f527f16e8e qcacmn: add refcnt and lock support for scan
1. Take reference count for vdev/pdev/psoc object before posting
   async message to scan component.
2. Take proper lock before invoking objmgr APIs which require locking.
3. Fixed few memory issues in failure cases.

Change-Id: I594b9ebf904c1c3b049a5d9d9e15679ac41599e7
CRs-Fixed: 1095299
2017-04-15 18:07:05 -07:00
Abhishek Singh
8c6e82d763 qcacmn: Add PNO changes for converged scan
Adds PNO related changes for converged scan

Change-Id: Ia18e48645d511134698777b334348d68daf2dbee
CRs-Fixed: 1095299
2017-04-11 11:04:33 -07:00
Naveen Rawat
52e9bb6d6f qcacmn: NDP_END_REQ implementation
Add implementation of NDP_END_REQ.

Change-Id: Ifa0bdcdee09c15c68bb12c63ba1157c71650c5bc
CRs-Fixed: 2014795
2017-04-11 11:04:24 -07:00
Naveen Rawat
f2bc82eb18 qcacmn: NDP_RESPONDER_REQ implementation
Add implementation for NDP_RESPONDER_REQ.

Change-Id: I27029eae88e0bc545c8444adf1342b2ec95f4d60
CRs-Fixed: 2014795
2017-04-11 11:04:23 -07:00
Naveen Rawat
06a5eb5071 qcacmn: NDP_INITIATOR_REQ implementation
Add implementation for NDP_INITIATOR_REQ.

Change-Id: Ieb4cb79d500fd75b23b4a3f8bfa414d14eb6fe18
CRs-Fixed: 2014795
2017-04-11 11:04:22 -07:00
Naveen Rawat
5b37936bf8 qcacmn: Add interface with LMAC for NAN Component
Add interface with LMAC for NAN Component.

Change-Id: Idbcdaa19a7a2b83d5a2d125419a7bc6cbe72033d
CRs-Fixed: 2014795
2017-04-11 11:04:13 -07:00
Abhishek Singh
06ba41e804 qcacmn: Move to common wmi event id for scan
Since new wmi API to allow components to move to common event id,
add related changes to use common wmi event id.

Change-Id: I60310238e0f216e6b52d3219c46f613935a9655f
CRs-Fixed: 1095299
2017-03-30 04:38:19 -07:00
Wu Gao
b90940cb5a qcacmn: Move to common wmi event id for P2P
Since new wmi API to allow components to move to common event id, P2P
add related changes to use common wmi event id.

Change-Id: I67b9fb7cba992b06ffdfc09a1243e6f5f2c29fed
CRs-Fixed: 2025109
2017-03-30 02:03:06 -07:00
Wu Gao
6d7909cdbe qcacmn: revert temp support legacy P2P by new scan component
Add a temp changes to support ROC with new scan module. Now new P2P
component lunch and revert this change.

Change-Id: I133c80bf73cee70ac39d9a7a62791ddb6421914b
CRs-Fixed: 2023647
2017-03-30 11:58:49 +05:30
Om Prakash Tripathi
89db19b5b7 qcacmn: Enable converged scan component
Update WMI layer to adopt to converged scan module
and enable converged scan component init/deinit

Change-Id: I4f9da95f90f737ac8bdcaa54f9eb4e154f37d3de
CRs-Fixed: 1095299
2017-03-29 09:09:24 -07:00
Baila, Shashikala Prabhu
af7fd90129 qcacmn: Re-factor processing of WMI_REG_CHAN_LIST_CC_EVENTID
Due to different layers, TLV processing is confined to WMI folder.
Therefore, move the TLV layer processing of WMI_REG_CHAN_LIST_EVENTID
to the wmi folder.

Change-Id: I7e7182997a9506035030f33d2f81a403fbe97a2f
CR-Fixed: 2019750
2017-03-27 06:07:47 -07:00
Amar Singhal
e407974144 qcacmn: Add the event handler for WMI_REG_CHAN_LIST_CC_EVENTID
Add event handler for WMI_REG_CHAN_LIST_CC_EVENTID.This handler
would be called from psoc_open object manager framework
initialization.

Change-Id: Icfd52fdb7056fdb77afdbd1be576d160719b7285
CRs-Fixed: 2002892
2017-03-27 06:07:36 -07:00
Naveen Rawat
1024ce0045 qcacmn: Add NAN changes in target_if and lmac common files
1) Invoke register tx and rx ops APIs for NAN component.
2) Define tx and rx ops in lmac common header.

Change-Id: I2b06b31f6e9cd4eec5732567da635b9989cc6dd7
CRs-Fixed: 2014795
2017-03-23 18:37:53 -07:00
Naveen Rawat
2a1033ce7d qcacmn: Add new files for new NAN component
Add new files for new NAN component.

Change-Id: I817723e518d53e9348d817746fc8318171d6ddf3
CRs-Fixed: 2014795
2017-03-23 00:49:33 -07:00
Wu Gao
41a58394a7 qcacmn: WMI changes for P2P component
Update WMI layer to adopt to converged P2P component.

Change-Id: Ia031476f7ee6071d2e15010fc3f7c998df9995dd
CRs-Fixed: 2011217
2017-03-22 19:21:34 -07:00
Naveen Rawat
922724f2db qcacmn: Implement WIFI_POS commands
Implement following commands for WIFI_POS:
1) ANI_MSG_APP_REG_REQ
2) ANI_MSG_CHANNEL_INFO_REQ
3) ANI_MSG_SET_OEM_CAP_REQ
4) ANI_MSG_GET_OEM_CAP_REQ
5) ANI_MSG_OEM_DATA_REQ
6) ANI_MSG_PEER_STATUS_IND

Change-Id: I7e3b502660b169f4cdb654cb5f433446a24d2421
CRs-Fixed: 2003488
2017-03-22 01:36:36 -07:00
Naveen Rawat
18ceca16b7 qcacmn: Add LMAC interface for WIFI POS component
This change adds implementation for interfacing with LMAC for
southbound request to WMI and northbount events from WMI.

Change-Id: Ia027ec704d99ef586b89bfadce4f174c3bcf8c17
CRs-Fixed: 2003488
2017-03-22 01:36:34 -07:00
Wu Gao
89c8a8a546 qcacmn: Change WLAN_P2P_ENABLE to CONVERGED_P2P_ENABLE
Change it since WLAN_P2P_ENABLE easily confused with existed macro
WLAN_FEATURE_P2P

Change-Id: Ia27aae849da7a8f8921bff40168105ca16b993b7
CRs-Fixed: 2021996
2017-03-22 12:59:20 +08:00
Subrat Mishra
81c60e87a3 qcacmn: Airtime Fairness convergence
ATF TxOps and RxOps interfaces added in psoc TxOps as well as RxOps.
New API aaded to vdev object manager.
ATF component ID added.

Change-Id: Ib694d91b59167d3831d876412513c260379801ef
2017-03-20 06:29:03 -07:00
Wu Gao
396518b08f qcacmn: Defines os and target interfaces
Defines API and callbacks of os interface for P2P component. At the
same time, defines API of target interface.

Change-Id: Ice1c86ecba1f2410d965d9f84923589f229a1864
CRs-Fixed: 2013763
2017-03-15 17:10:14 -07:00
Abhishek Singh
5a7b8301c8 qcacmn: Temp changes to support ROC with new scan module
Temp changes to support ROC with new scan module.
Need to be removed once P2P module is ready.

Change-Id: I50a924c233da6780de746f30aacf8dfb4cd89806
CRs-Fixed: 1095299
2017-03-10 03:45:15 -08:00
Naveen Rawat
89284c2621 qcacmn: Add new files for Wifi Positioning component
Add new files for Wifi Positioning component.

Change-Id: I62d808a5ce01ce7211e22df960dd337454e1f8b5
CRs-Fixed: 2003488
2017-03-08 19:30:51 -08:00