Commit Graph

1831 Commits

Author SHA1 Message Date
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
Tushnim Bhattacharyya
177b6a3f3b qcacmn: Fix DBS & HW mode configurations for policy manager
Fix DBS configuration & HW mode initialization for policy manager as
part of policy manager restructuring.

Change-Id: I0c0ef7797b3251454d86f5980c6e243985075216
CRs-Fixed: 2009818
2017-03-23 17:58:12 -07:00
Krishna Kumaar Natarajan
2a22561d0c qcacmn: [11AX] Add changes for 11ax peer association
Add changes for peer association by adding support to
include HE capabilities and HE operation information
in vdev start and peer assoc WMI commands.

Change-Id: I50c0241f872219e08ee2d231c907309ee5adceef
CRs-Fixed: 1073481
2017-03-23 12:15:32 -07:00
Archana Ramachandran
8d46dbd8ac qcacmn: Remove legacy dependency from Policy Manager Part 7
Remove legacy dependency from Policy Manager component Part 7

Change-Id: Ied83a92118b8ff2ff1a387a052033aaa97bfbbe0
CRs-Fixed: 2019994
2017-03-23 10:33:50 -07:00
Wu Gao
557bf6fcb3 qcacmn: Add necessary header files
Some MCL build environment report that it lack of headers. Add these
header files.

Change-Id: Ibb4a931840f00119b2abe496d755d1554a715fcd
CRs-Fixed: 2022862
2017-03-23 07:04:00 -07:00
Archana Ramachandran
54c9a7ddf4 qcacmn: Policy manager component HDD callback changes
Policy manager component HDD callback changes

Change-Id: Ib2226a88b27abfff12104c8430245fe384978b9f
CRs-Fixed: 2019994
2017-03-23 02:35:39 -07:00
Archana Ramachandran
8c8ca7d492 qcacmn: Save user configurations in policy manager component
Update policy manager user configuration with INI parameters.

Change-Id: I2e13bec2a1e99c9aee9e66d3e90a1275cf87ccfa
CRs-Fixed: 2019994
2017-03-23 02:35:37 -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
Abhijit Pradhan
38ae892add qcacmn: DFS componentization (DFS Dispatcher)
DFS module provides  these public APIs for other modules to call DFS
functions.

Change-Id: I4f703416d7afe97d2304033b1c3b6c31914a83bb
CRs-Fixed: 2001106
2017-03-22 21:19:39 -07:00
Wu Gao
dfc571c521 qcacmn: mgmt frame txrx
Modify P2P IE and tx mgmt frame. Handles tx confirm and rx frame
events.

Change-Id: I0c0ada2e12ee5ebdd3e8d7b7a6f2bd2af4357548
CRs-Fixed: 2015297
2017-03-22 18:42:14 -07:00
Wu Gao
26781f65dc qcacmn: remain on channel
Handles roc request, cancel roc reuqest and scan event in P2P
component.

Change-Id: I47085ddc3551e76ef042e9d72dc4b29de6c2b118
CRs-Fixed: 2006262
2017-03-22 18:42:12 -07:00
Wu Gao
930869e013 qcacmn: Private commands and wmi events for P2P
Deliver private commands for P2P component. Registers and unregisters
wmi events by target interface. Handles wmi events from target
interface.

Change-Id: Ic25f1c22ae1650f2b059b3fb428daa1b2e66b93c
CRs-Fixed: 2015115
2017-03-22 18:42:11 -07:00
Ashok Ponnaiah
d973716683 qcacmn: Initial crypto service component addition
Initial crypto service component addition in object
manager and qdf error for crypto

Change-Id: I423b41cfe3cf429c29859867aaa8467b3e35cddc
2017-03-22 05:34:45 -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
Abhijit Pradhan
eab1923f7e qcacmn: DFS componentization (RADAR event notification)
The functions process the RADAR pulses. If Radar is found then it sends
RADAR found notification,  marks the channel as RADAR and add the RADAR
infected channel to NOL.

Change-Id: Ic53d6408bf32c24826b7ef97eee3657adac8ef90
CRs-Fixed: 2001106
2017-03-22 00:52:55 -07:00
Abhijit Pradhan
49f69436c2 qcacmn: DFS componentization (NOL)
NOL stands for non-occupancy list. After RADAR has been detected in a
particular channel,  the channel cannot be used for a period of 30 minutes,
which is called the non-occupancy. The NOL is basically a list of all the
channels on which RADAR has been detected. Each channel has a 30-minute
timer associated with it.

Change-Id: Ie823ef86a4109ff200c9bb2307711d17ff3f9876
CRs-Fixed: 2001106
2017-03-22 00:52:53 -07:00
Abhijit Pradhan
189e80817f qcacmn: DFS componentization (Zero CAC)
Operation in a DFS channel requires CAC that adds additional
delay as well as  loss of connection even when CSA is used. ETSI allows
pre-CAC, i.e. performing CAC at a convenient time and using that channel
later. Once Pre-CAC is done in a channel, it is no longer required to
perform a CAC in the channel before TX/RX as long as radar is not found
in it or we reset or restart the device.

Change-Id: Ic1896f7881c12606f1edc20c60cd4bb2ab63821c
CRs-Fixed: 2001106
2017-03-22 00:52:52 -07:00
Abhijit Pradhan
08748c89fb qcacmn: DFS componentization (CAC)
Channel Availability Check (CAC) Time: The time a system shall
monitor a channel for the  presence of RADAR prior to initiating
a communications link on that channel.
It is implemented using one-shot timer.

Change-Id: Iacf33681006cd8ee87e26fe63a852ff44a932e31
CRs-Fixed: 2001106
2017-03-22 00:52:50 -07:00
Abhijit Pradhan
752ce0a9de qcacmn: DFS componentization (Filter Tables)
Whenever the hardware detects a RADAR PHY error, it generates an interrupt
and the MAC layer provides the RSSI value, Pulse width, Timestamp on the
collected data,  and FFT data to Software.
There is an event queue associated with RADAR detection. The RSSI, pulse
width, and time stamp is stored in the queue by the interrupt handler.
There is a DFS timer task that reads the entries in the queue associated
with RADAR detection. It checks the time stamp, RSSI, and pulse width
value against the PRI, RSSI, and pulse width defined in the RADAR filter
table. If any entry of the table mactches then it announces RADAR is found.

Change-Id: I71bf88c77eb5baa4984bdc2181ca27008d641469
CRs-Fixed: 2001106
2017-03-22 00:52:49 -07:00
Abhijit Pradhan
af7d7da0cc qcacmn: DFS componentization Initial version
The main task of the Dynamic Frequency Selection (DFS) component is to
analyze RADAR pulses and declare RADAR detected if a filter match is
found. The  DFS component also performs channel availability Check (CAC),
stores Non Occupancy List (NOL), and selects  a random channel from a
list of available channels. This componentization of DFS code brings all
the scattered code into a single place, which makes it is easy to maintain
and also easy to move the component to a desired software layer with
minimal effort. Any DFS data structure and code must be accessed through
the public APIs provided in the DFS dispatcher.

This commit contains only Filtering part. Next and subsequent commits will
contain: Filter Tables, CAC, Zero CAC, NOL, RADAR event notification, and
DFS Dispatcher.

Change-Id: I2c21f7752545eb910c48ade630ceba74053cc019
CRs-Fixed: 2001106
2017-03-22 00:52:48 -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
Naveen Rawat
a8423167a9 qcacmn: Implement Wifi Positioning Init/Deinit
Implement Init/Deinit for the WIFI Positioning component.

Change-Id: Iec0f4199935f63f7019de5ae16fc760817165954
CRs-Fixed: 2003488
2017-03-21 01:10:14 -07:00
Amar Singhal
9cab88d2ab qcacmn: Populate the master channel list from firmware
Process the message WMI_REG_CHAN_LIST_CC_EVENTID. This message is used to
populate the master channel list.

Change-Id: I96d8f7ff5f71a35686ba990175c4a37995bfa6b2
CRs-Fixed 2002892
2017-03-20 18:01:47 -07:00
Amar Singhal
7b56f8d67a qcacmn: Regulatory component public APIs
Add regulatory component public APIs

Change-Id: Idc8afaf1952e831a3a9917aeef796cb7dc466152
CRs-Fixed: 2002892
2017-03-20 18:01:46 -07:00
Amar Singhal
1fd82c6c58 qcacmn: Regulatory component registration
Register the regulatory component with obj mgr. Regulatory
component only needs to listen to psoc level messages.

Change-Id: I3d060d66cb7bac2912afb1301ef1960f8bd9c0ef
CRs-Fixed: 2002892
2017-03-20 18:01:45 -07:00
Amar Singhal
2b94b1de5b qcacmn: New regulatory database
New regulatory database that is offload friendly. The
same database would be used in firmware also.

Change-Id: I4f8ee3555882fcc672d893ff544e119773dfd4c0
CRs-Fixed: 2002892
2017-03-20 14:31:23 -07:00
Amar Singhal
e2cc7069f5 qcacmn: Initial version of regulatory component changes
Define the regulatory component public APIs, private APIs and
initialization of the regulatory object

Change-Id: I536078592aa7e66e96d4dcab8efdedfd6fd03711
CRs-Fixed: 2002892
2017-03-20 14:29:22 -07: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
Archana Ramachandran
cdeea99119 qcacmn: Remove legacy dependency from Policy Manager Part 6
Remove legacy dependency from Policy Manager component Part 6

Change-Id: I5136d82c2b30ba71df8c48165c4bc4b560aaee39
CRs-Fixed: 2019994
2017-03-18 15:31:18 -07:00
Archana Ramachandran
dce2b089bf qcacmn: Remove legacy dependency from Policy Manager Part 5
Remove legacy dependency from Policy Manager component Part 5

Change-Id: I942e376eea4b370af5d0cd882b0beaa58012c48f
CRs-Fixed: 2019994
2017-03-18 15:15:45 -07:00
Vivek
979a3f3e0b qcacmn: Add sequence number to peer mlme object
The new P2P component cannot use legacy API's to get/set
the sequence number, thus we need new obj manager API's to handle
MLME sequence numbers.

Change-Id: I848f6c33f82cab6b90710f1411e0be55647e4476
CRs-Fixed: 2014032
2017-03-18 08:43:25 -07:00
Naveen Rawat
381fe0ff8e qcacmn: Set Band Capability ini config to PSOC user config
Set Band Capability ini config to PSOC user config. This can later
be used in UMAC component.

Change-Id: Idbd4318423187beff8099bfd32d69e5336b8ea58
CRs-Fixed: 2003488
2017-03-17 13:20:58 -07:00
Frank Liu
73ce0d0216 qcacmn: tdls module init and deinit
tdls module init and deinit

Change-Id: I751a948a46ac4e5148e35aa509fdbff25b6c5f3c
CRs-Fixed: 2011330
2017-03-17 02:32:10 -07:00
Soumya Bhat
40b91b83fa qcacmn: Provide new objmgr API
Provide objmgr API to reset os private object of vdev, during
vap deletion.

Change-Id: I52c6b7905f0bb9ef109390d649f2f59ba3c8d849
CRs-Fixed: 2019136
2017-03-17 01:15:56 -07:00
Soumya Bhat
99399b4e69 qcacmn: Add target_if handle in pdev
With multi-radio support, wmi handle is unique per pdev
and not tied per psoc. Add change to include target interface
handle (wmi_handle) in pdev

Change-Id: I7348e2a7bd580ff6ddea3fdfe99e5f04fd87e7d7
CRs-Fixed: 2017820
2017-03-16 23:39:24 -07:00
Subrat Mishra
8aa751af59 qcacmn: API to expose vdev max_peer_count
Adding a new API to expose vdev_objmgr.max_peer_count

Change-Id: I674f4fe84abf49629199e6fe2c14c62893504cfa
2017-03-16 22:57:48 -07:00
Nandha Kishore Easwaran
9b820f500f qcacmn: Object manager Changes for peer deletion response handling
1) Enhance API wlan_objmgr_get_peer_by_mac_n_vdev to get logically deleted peer
2) Take pdev obj lock for wlan_vdev_get_psoc()
3) wlan_objmgr_get_peer() should return active peer from multiple peer pointers

Change-Id: I6ad9750f19f7b4141533e059a307018d38f81d66
CRs-fixed: 2015372
2017-03-16 22:18:37 -07:00
Archana Ramachandran
aab9ff4cbb qcacmn: Remove legacy dependency from Policy Manager Part 4
Remove legacy dependency from Policy Manager component Part 4

Change-Id: I9b96a03031c27b87c9e74a3df512f6032051bd85
CRs-Fixed: 2019994
2017-03-16 15:22:52 -07:00
Archana Ramachandran
94fef7786b qcacmn: Remove legacy dependency from Policy Manager Part 3
Remove legacy dependency from Policy Manager component Part 3

Change-Id: I63f6330e0b4b172d8f78f3e93131e9fba3121f09
CRs-Fixed: 2019994
2017-03-16 15:22:51 -07:00
Archana Ramachandran
80abcf4ede qcacmn: Remove legacy dependency from Policy Manager Part 2
Remove legacy dependency from Policy Manager component Part 2

Change-Id: I26216e9b7fa0f75f144b5d8ef88be31fcb4224b5
CRs-Fixed: 2019994
2017-03-16 09:16:44 -07:00
Wu Gao
6c44a1c866 qcacmn: Add wireless device to vdev os interface
Add os structure about wireless device to vdev os interface pointer.

Change-Id: I4df915fc5dca0412707d9b894bf5be9bf24042c0
CRs-Fixed: 2014555
2017-03-16 06:20:20 -07:00
Archana Ramachandran
2eb57437bc qcacmn: Remove legacy dependency from Policy Manager Part 1
Remove legacy dependency from Policy Manager component Part 1

Change-Id: I87a44714c02ed37923ce4a4c4818d2aef8bc6e2f
CRs-Fixed: 2019994
2017-03-15 21:52:15 -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
Vivek
e23557e717 qcacmn: Add qdf_device to psoc object
Add a new qdf device member to psoc object.
Add get/set methods for retreiving the new qdf
device member from psoc.

Change-Id: I0c2965b69fc038f9781dd52b6175bf642319834b
CRs-Fixed: 2014032
2017-03-15 05:43:44 -07:00
Abhishek Singh
2f1324678d qcacmn: Add support to update user defined scan params
Add support to update the user defined scan params values.

Change-Id: I8a971b0fa0d119f58e3143ca6be9c5ea4ee47f52
CRs-Fixed: 1095299
2017-03-15 04:26:41 -07:00
Tushnim Bhattacharyya
e4920915c7 qcacmn: Move PCL weight macros to api header file
Move PCL weight macros to API header file.

Change-Id: I3183dd8301cd971475d492791df89cd77af2943f
CRs-Fixed: 2009818
2017-03-15 00:24:56 -07:00
Tushnim Bhattacharyya
1e34c3fa01 qcacmn: Define utility functions of policy manager component Part 3
Define utility functions for policy manager component.

Change-Id: I2811b682f5b8e73ea6393dbe6db99a8f6ae077a1
CRs-Fixed: 2009818
2017-03-15 00:24:55 -07:00
Tushnim Bhattacharyya
9c2d0c60ba qcacmn: Define utility functions of policy manager component Part 2
Define utility functions for policy manager component.

Change-Id: I080a4389504f6c3b0acb93fe9993da3ffd492f22
CRs-Fixed: 2009818
2017-03-15 00:24:54 -07:00
Tushnim Bhattacharyya
9c73f73749 qcacmn: Define utility functions of policy manager component Part 1
Define utility functions for policy manager component.

Change-Id: I78d48c6347e7f7d8ebebeaf85c807ba6b1b044e0
CRs-Fixed: 2009818
2017-03-15 00:24:53 -07:00