Defines main APIs and data structures. Initial basic frame work of
P2P component.
Change-Id: I08d2e2cec734ddc535d88996f7d5ece5ef3d270a
CRs-Fixed: 1099441
Change signature of tgt_mgmt_txrx_rx_frame_handler API
and mgmt_frame_rx_callback by replacing rx params of type
void pointer with that of struct mgmt_rx_event_params
pointer.
Change-Id: Idfa54f1c9bfec22a2cf2e98740765dcd797513df
CRs-Fixed: 1103247
This debug framework maintains module/API level counters and increments on
get_ref and decrements on release, on release if the caller count is 0
exception would be thrown.
This would help to identify any caller is releasing the reference more times
or not releaseing the reference
Change-Id: Ib3bc0dd5fb28587033142291a785c20f8775f9a0
CRS-Fixed: 1096009
This change implements ref count mechanism, before accessing/storing object,
its ref count has to be incremented to avoid "use after free" scenarios.
1) Increments ref count of each object on its creation
2) Increments parent object on creation of child object (ex: on peer creation
vdev object ref count gets incremented)
3) On get_obj() API, caller will be returned object after incrementing ref cnt
Change-Id: Ic01cb3217881d269cc451f0e63358e1e4decaaa7
CRS-Fixed: 1096009
Define folder and file structure for
Serialization UMAC convergence component.
Define the changes for initializing and de-initializing
the serialization component
Change-Id: I1074091a74bba8aa7426345f6fb1a5df127f1a59
CRs-Fixed: 2000032
Define the public APIs for serialization component for other
components to use.
Change-Id: I66c8fd2c85aaf7b78f98ea6a273784fa253969b6
CRs-Fixed: 2000032
The internal header file included by mgmt_txrx
dispatcher files can be included through relative
path.The kbuild need not have an entry for this
in the inclusion path.
Change-Id: Ie47351c8f69d8dbd08d665282e7827dc9c98458e
CR's Fixed:1110532
1) inline APIs to get/set peer state from peer object
2) inline API to get pdev os private pointer
3) inline API to get vdev os private pointer
4) inline API to set/get max vdev count of pdev
5) Changed internal header files inclusions
6) Moved psoc_obj_attach() prototypes to gloabl_obj_i.h
Change-Id: I088d6d24dd60982af8e42b0bed0ccfaf45e219bd
CRs-Fixed: 1107371
Multiple peers can have same mac address in QWRAP, in those scenarios BSSID
should also match to get the peer. This API takes mac address and BSSID as
input params
Change-Id: I741dd78c7662a63106685f53cc51041f320e2d56
CRs-Fixed: 1107371
Add logic to handle registration and deregistration of rx callbacks
for multiple frames in a single call of corresponding func.
Change-Id: I09479988f0c55f6d358ef503417dcfb46f2a0565
CRs-Fixed: 1103247
Add change in wlan_lmac_if_open() to return success
if device type is valid, else return invalid and handle
failure appropriately in caller.
Change-Id: I77a0620d4d64b18e28ce2cef7b5fb3dc7fb844ba
CRs-Fixed: 1096016
Add APIs to get component private object pointer. The caller has
to acquired its object lock, before calling this function, and
the lock has to be released after returning
Change-Id: I93b1001d936ba35af557b78edf45a11d58ae5308
CRs-Fixed: 1107371
Add API to retrieve component private object from psoc for respective
umac component id. In addition, the following changes are also done:
1) Add IBSS Peer type.
2) Define UMAC VDEV ID Max.
3) Define Psoc, pdev, vdev create timeout values.
3) Fix compilation issues of object manager.
Change-Id: I418dad89fe641c0b536549222eb391546975e66b
CRs-Fixed: 1097225
Separate macro/enum definitions from wlan_objmgr_cmn.h
which are generic to several modules into a different file.
Change-Id: I884b26fd74c08e0f35512b073a7222fff9b9f88c
CRs-Fixed: 1096009
Rename instance of comp_obj referred in code to comp_priv_obj,
as these instances are private to individual components
Change-Id: I895362261e5b7e06a46c2bd92942a972c75f192b
CRs-Fixed: 1096009
Decrease the ref count for peer when peer is no longer
needed in case of mgmt tx and rx frame handling.
Change-Id: I1e0599271a05add0a2e6f06d3809a1d2e54732e3
CRs-Fixed: 1103247
Add support for Tx path and TX completion path
for mgmt_txrx for the converged umac.
Change-Id: I964ee78ae4f6ff1fc5f26a6f7d16ae6b4e50bbee
CRS Fixed: 1103247
Do handling of mgmt rx frames as:
1) Query peer from object manager.
2) Parse the frame to get frame type and call the
corresponding rx cb registered by the components.
Change-Id: I2816e4b337508784515faa7a3d0fe7f9923ae962
CRs-Fixed: 1103247
Initialization/deinitialization of mgmt txrx context,
mgmt desc pool, declaration of APIs for sending and
receiving mgmt. frames.
Change-Id: Icc1f181761721387bcd1f134c937204bfd3b645f
CRs-Fixed: 1103247
Add framework in UMAC to access LMAC and to be accessed
by LMAC through callback APIs
Change-Id: Ie829f3ba90fbc399d993d862dbf5f9ad348e3bbd
CRs-Fixed: 1096016
Define object manager framework. The object manager framework implements
the management of UMAC objects(PSOC/PDEV/VDEV/PEER). All components of UMAC
have to register their APIs with object manager to be invoked on object
creation/deletion.
It also provides public APIs to retrieve objects.
CRS-Fixed: 1096009
Change-Id: If1465aed8b5e05e23ee0e1d9c9818dbf92fbe55a