ソースを参照

qcacmn: Public APIs to get/set members of objects

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
Srinivas Pitla 8 年 前
コミット
7c2f97528e

+ 59 - 0
umac/cmn_services/obj_mgr/inc/wlan_objmgr_pdev_obj.h

@@ -382,6 +382,7 @@ static inline void wlan_pdev_obj_unlock(struct wlan_objmgr_pdev *pdev)
 static inline struct wlan_objmgr_psoc *wlan_pdev_get_psoc(
 			struct wlan_objmgr_pdev *pdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return pdev->pdev_objmgr.wlan_psoc;
 }
 
@@ -399,6 +400,7 @@ static inline struct wlan_objmgr_psoc *wlan_pdev_get_psoc(
 static inline void wlan_pdev_set_psoc(struct wlan_objmgr_pdev *pdev,
 				struct wlan_objmgr_psoc *psoc)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	pdev->pdev_objmgr.wlan_psoc = psoc;
 }
 
@@ -416,6 +418,7 @@ static inline void wlan_pdev_set_psoc(struct wlan_objmgr_pdev *pdev,
 static inline void wlan_pdev_nif_fw_cap_set(struct wlan_objmgr_pdev *pdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	pdev->pdev_nif.pdev_fw_caps |= cap;
 }
 
@@ -433,6 +436,7 @@ static inline void wlan_pdev_nif_fw_cap_set(struct wlan_objmgr_pdev *pdev,
 static inline void wlan_pdev_nif_fw_cap_clear(struct wlan_objmgr_pdev *pdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	pdev->pdev_nif.pdev_fw_caps &= ~cap;
 }
 
@@ -450,6 +454,7 @@ static inline void wlan_pdev_nif_fw_cap_clear(struct wlan_objmgr_pdev *pdev,
 static inline uint8_t wlan_pdev_nif_fw_cap_get(struct wlan_objmgr_pdev *pdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return (pdev->pdev_nif.pdev_fw_caps & cap) ? 1 : 0;
 }
 
@@ -467,6 +472,7 @@ static inline uint8_t wlan_pdev_nif_fw_cap_get(struct wlan_objmgr_pdev *pdev,
 static inline void wlan_pdev_nif_feat_cap_set(struct wlan_objmgr_pdev *pdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	pdev->pdev_nif.pdev_feature_caps |= cap;
 }
 
@@ -484,6 +490,7 @@ static inline void wlan_pdev_nif_feat_cap_set(struct wlan_objmgr_pdev *pdev,
 static inline void wlan_pdev_nif_feat_cap_clear(struct wlan_objmgr_pdev *pdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	pdev->pdev_nif.pdev_feature_caps &= ~cap;
 }
 
@@ -501,6 +508,7 @@ static inline void wlan_pdev_nif_feat_cap_clear(struct wlan_objmgr_pdev *pdev,
 static inline uint8_t wlan_pdev_nif_feat_cap_get(struct wlan_objmgr_pdev *pdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return (pdev->pdev_nif.pdev_feature_caps & cap) ? 1 : 0;
 }
 
@@ -518,6 +526,7 @@ static inline uint8_t *wlan_pdev_get_hw_macaddr(struct wlan_objmgr_pdev *pdev)
 {
 	struct wlan_objmgr_psoc *psoc = wlan_pdev_get_psoc(pdev);
 
+	/* This API is invoked with lock acquired, do not add log prints */
 	return wlan_psoc_get_hw_macaddr(psoc);
 }
 
@@ -537,9 +546,59 @@ static inline void wlan_pdev_set_hw_macaddr(struct wlan_objmgr_pdev *pdev,
 {
 	struct wlan_objmgr_psoc *psoc = wlan_pdev_get_psoc(pdev);
 
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (psoc != NULL)
 		wlan_psoc_set_hw_macaddr(psoc, macaddr);
 }
 
+/**
+ * wlan_pdev_get_ospriv() - get os priv pointer
+ * @pdev: PDEV object
+ *
+ * API to get OS private pointer from PDEV
+ *
+ * Caller need to acquire lock with wlan_pdev_obj_lock()
+ *
+ * Return: ospriv - private pointer
+ */
+static inline void *wlan_pdev_get_ospriv(struct wlan_objmgr_pdev *pdev)
+{
+	/* This API is invoked with lock acquired, do not add log prints */
+	return pdev->pdev_nif.pdev_ospriv;
+}
 
+/**
+ * wlan_pdev_set_max_vdev_count() - set pdev max vdev count
+ * @pdev: PDEV object
+ * @vdev count: Max vdev count
+ *
+ * API to set Max vdev count
+ *
+ * Caller need to acquire lock with wlan_pdev_obj_lock()
+ *
+ * Return: void
+ */
+static inline void wlan_pdev_set_max_vdev_count(struct wlan_objmgr_pdev *pdev,
+					   uint8_t max_vdev_count)
+{
+	/* This API is invoked with lock acquired, do not add log prints */
+	pdev->pdev_objmgr.max_vdev_count = max_vdev_count;
+}
+
+/**
+ * wlan_pdev_get_max_vdev_count() - get pdev max vdev count
+ * @pdev: PDEV object
+ *
+ * API to set Max vdev count
+ *
+ * Caller need to acquire lock with wlan_pdev_obj_lock()
+ *
+ * Return: @vdev count: Max vdev count
+ */
+static inline uint8_t wlan_pdev_get_max_vdev_count(
+					struct wlan_objmgr_pdev *pdev)
+{
+	/* This API is invoked with lock acquired, do not add log prints */
+	return pdev->pdev_objmgr.max_vdev_count;
+}
 #endif /* _WLAN_OBJMGR_PDEV_H_*/

+ 51 - 0
umac/cmn_services/obj_mgr/inc/wlan_objmgr_peer_obj.h

@@ -381,6 +381,7 @@ static inline struct wlan_objmgr_peer *wlan_psoc_peer_list_peek_head(
 	struct wlan_objmgr_peer *peer;
 	qdf_list_node_t *psoc_node = NULL;
 
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (qdf_list_peek_front(peer_list, &psoc_node) != QDF_STATUS_SUCCESS)
 		return NULL;
 
@@ -405,6 +406,7 @@ static inline struct wlan_objmgr_peer *wlan_vdev_peer_list_peek_head(
 	struct wlan_objmgr_peer *peer;
 	qdf_list_node_t *vdev_node = NULL;
 
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (qdf_list_peek_front(peer_list, &vdev_node) != QDF_STATUS_SUCCESS)
 		return NULL;
 
@@ -430,6 +432,7 @@ static inline struct wlan_objmgr_peer *wlan_peer_get_next_peer_of_vdev(
 	qdf_list_node_t *node;
 	qdf_list_node_t *next_node = NULL;
 
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (peer == NULL)
 		return NULL;
 
@@ -457,6 +460,7 @@ static inline struct wlan_objmgr_peer *wlan_peer_get_next_peer_of_vdev(
 static inline void wlan_peer_set_next_peer_of_vdev(qdf_list_t *peer_list,
 				struct wlan_objmgr_peer *new_peer)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	/* set next peer with new peer */
 	qdf_list_insert_back(peer_list, &new_peer->vdev_peer);
 	return;
@@ -480,6 +484,7 @@ static inline struct wlan_objmgr_peer *wlan_peer_get_next_peer_of_psoc(
 	qdf_list_node_t *node = NULL;
 	qdf_list_node_t *next_node = NULL;
 
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (peer == NULL)
 		return NULL;
 
@@ -507,6 +512,7 @@ static inline struct wlan_objmgr_peer *wlan_peer_get_next_peer_of_psoc(
 static inline void wlan_peer_set_next_peer_of_psoc(qdf_list_t *peer_list,
 					struct wlan_objmgr_peer *new_peer)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	/* set next peer with new peer */
 	qdf_list_insert_back(peer_list, &new_peer->psoc_peer);
 	return;
@@ -526,6 +532,7 @@ static inline void wlan_peer_set_next_peer_of_psoc(qdf_list_t *peer_list,
 static inline void wlan_peer_set_peer_type(struct wlan_objmgr_peer *peer,
 			enum wlan_peer_type type)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	peer->peer_mlme.peer_type = type;
 }
 
@@ -543,6 +550,7 @@ static inline void wlan_peer_set_peer_type(struct wlan_objmgr_peer *peer,
 static inline enum wlan_peer_type wlan_peer_get_peer_type(
 				struct wlan_objmgr_peer *peer)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return peer->peer_mlme.peer_type;
 }
 
@@ -560,6 +568,7 @@ static inline enum wlan_peer_type wlan_peer_get_peer_type(
 static inline void wlan_peer_set_macaddr(struct wlan_objmgr_peer *peer,
 			uint8_t *macaddr)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	WLAN_ADDR_COPY(peer->macaddr, macaddr);
 }
 
@@ -576,6 +585,7 @@ static inline void wlan_peer_set_macaddr(struct wlan_objmgr_peer *peer,
  */
 static inline uint8_t *wlan_peer_get_macaddr(struct wlan_objmgr_peer *peer)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return peer->macaddr;
 }
 
@@ -593,6 +603,7 @@ static inline uint8_t *wlan_peer_get_macaddr(struct wlan_objmgr_peer *peer)
 static inline struct wlan_objmgr_vdev *wlan_peer_get_vdev(
 			struct wlan_objmgr_peer *peer)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return peer->peer_objmgr.vdev;
 }
 
@@ -610,6 +621,7 @@ static inline struct wlan_objmgr_vdev *wlan_peer_get_vdev(
 static inline void wlan_peer_set_vdev(struct wlan_objmgr_peer *peer,
 		struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	peer->peer_objmgr.vdev = vdev;
 }
 
@@ -627,6 +639,7 @@ static inline void wlan_peer_set_vdev(struct wlan_objmgr_peer *peer,
 static inline void wlan_peer_mlme_flag_set(struct wlan_objmgr_peer *peer,
 				uint32_t flag)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	peer->peer_mlme.peer_flags |= flag;
 }
 
@@ -644,6 +657,7 @@ static inline void wlan_peer_mlme_flag_set(struct wlan_objmgr_peer *peer,
 static inline void wlan_peer_mlme_flag_clear(struct wlan_objmgr_peer *peer,
 				uint32_t flag)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	peer->peer_mlme.peer_flags &= ~flag;
 }
 
@@ -661,6 +675,43 @@ static inline void wlan_peer_mlme_flag_clear(struct wlan_objmgr_peer *peer,
 static inline uint8_t wlan_peer_mlme_flag_get(struct wlan_objmgr_peer *peer,
 				uint32_t flag)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return (peer->peer_mlme.peer_flags & flag) ? 1 : 0;
 }
+
+/**
+ * wlan_peer_mlme_set_state() - peer mlme state
+ * @peer: PEER object
+ * @state: enum wlan_peer_state
+ *
+ * API to update the current peer state
+ *
+ * Caller need to acquire lock with wlan_peer_obj_lock()
+ *
+ * Return: void
+ */
+static inline void wlan_peer_mlme_set_state(
+				struct wlan_objmgr_peer *peer,
+				enum wlan_peer_state state)
+{
+	/* This API is invoked with lock acquired, do not add log prints */
+	peer->peer_mlme.state = state;
+}
+
+/**
+ * wlan_peer_mlme_get_state() - peer mlme state
+ * @peer: PEER object
+ *
+ * API to get peer state
+ *
+ * Caller need to acquire lock with wlan_peer_obj_lock()
+ *
+ * Return: enum wlan_peer_state
+ */
+static inline enum wlan_peer_state wlan_peer_mlme_get_state(
+				struct wlan_objmgr_peer *peer)
+{
+	/* This API is invoked with lock acquired, do not add log prints */
+	return peer->peer_mlme.state;
+}
 #endif /* _WLAN_OBJMGR_PEER_OBJ_H_*/

+ 15 - 0
umac/cmn_services/obj_mgr/inc/wlan_objmgr_psoc_obj.h

@@ -518,6 +518,7 @@ static inline void wlan_psoc_obj_unlock(struct wlan_objmgr_psoc *psoc)
 static inline void wlan_psoc_set_nif_phy_version(struct wlan_objmgr_psoc *psoc,
 			uint32_t phy_ver)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	psoc->soc_nif.phy_version = phy_ver;
 }
 
@@ -534,6 +535,7 @@ static inline void wlan_psoc_set_nif_phy_version(struct wlan_objmgr_psoc *psoc,
 static inline uint32_t wlan_psoc_get_nif_phy_version(
 			struct wlan_objmgr_psoc *psoc)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (psoc == NULL)
 		return (uint32_t)-1;
 	return psoc->soc_nif.phy_version;
@@ -553,6 +555,7 @@ static inline uint32_t wlan_psoc_get_nif_phy_version(
 static inline void wlan_psoc_set_dev_type(struct wlan_objmgr_psoc *psoc,
 				WLAN_DEV_TYPE phy_type)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	psoc->soc_nif.phy_type = phy_type;
 }
 
@@ -569,6 +572,7 @@ static inline void wlan_psoc_set_dev_type(struct wlan_objmgr_psoc *psoc,
 static inline WLAN_DEV_TYPE wlan_objmgr_psoc_get_dev_type(
 				struct wlan_objmgr_psoc *psoc)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (psoc == NULL)
 		return (uint32_t)-1;
 	return psoc->soc_nif.phy_type;
@@ -588,6 +592,7 @@ static inline WLAN_DEV_TYPE wlan_objmgr_psoc_get_dev_type(
 static inline void wlan_psoc_nif_fw_cap_set(struct wlan_objmgr_psoc *psoc,
 					uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	psoc->soc_nif.soc_fw_caps |= cap;
 }
 
@@ -605,6 +610,7 @@ static inline void wlan_psoc_nif_fw_cap_set(struct wlan_objmgr_psoc *psoc,
 static inline void wlan_psoc_nif_fw_cap_clear(struct wlan_objmgr_psoc *psoc,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	psoc->soc_nif.soc_fw_caps &= ~cap;
 }
 
@@ -622,6 +628,7 @@ static inline void wlan_psoc_nif_fw_cap_clear(struct wlan_objmgr_psoc *psoc,
 static inline uint8_t wlan_psoc_nif_fw_cap_get(struct wlan_objmgr_psoc *psoc,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return (psoc->soc_nif.soc_fw_caps & cap) ? 1 : 0;
 }
 
@@ -639,6 +646,7 @@ static inline uint8_t wlan_psoc_nif_fw_cap_get(struct wlan_objmgr_psoc *psoc,
 static inline void wlan_psoc_nif_fw_ext_cap_set(struct wlan_objmgr_psoc *psoc,
 				uint32_t ext_cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	psoc->soc_nif.soc_fw_ext_caps |= ext_cap;
 }
 
@@ -656,6 +664,7 @@ static inline void wlan_psoc_nif_fw_ext_cap_set(struct wlan_objmgr_psoc *psoc,
 static inline void wlan_psoc_nif_fw_ext_cap_clear(struct wlan_objmgr_psoc *psoc,
 				uint32_t ext_cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	psoc->soc_nif.soc_fw_ext_caps &= ~ext_cap;
 }
 
@@ -673,6 +682,7 @@ static inline void wlan_psoc_nif_fw_ext_cap_clear(struct wlan_objmgr_psoc *psoc,
 static inline uint8_t wlan_psoc_nif_fw_ext_cap_get(
 		struct wlan_objmgr_psoc *psoc, uint32_t ext_cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return (psoc->soc_nif.soc_fw_ext_caps & ext_cap) ? 1 : 0;
 }
 
@@ -690,6 +700,7 @@ static inline uint8_t wlan_psoc_nif_fw_ext_cap_get(
 static inline void wlan_psoc_nif_feat_cap_set(struct wlan_objmgr_psoc *psoc,
 				uint32_t feat_cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	psoc->soc_nif.soc_feature_caps |= feat_cap;
 }
 
@@ -707,6 +718,7 @@ static inline void wlan_psoc_nif_feat_cap_set(struct wlan_objmgr_psoc *psoc,
 static inline void wlan_psoc_nif_feat_cap_clear(struct wlan_objmgr_psoc *psoc,
 				uint32_t feat_cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	psoc->soc_nif.soc_feature_caps &= ~feat_cap;
 }
 
@@ -724,6 +736,7 @@ static inline void wlan_psoc_nif_feat_cap_clear(struct wlan_objmgr_psoc *psoc,
 static inline uint8_t wlan_psoc_nif_feat_cap_get(struct wlan_objmgr_psoc *psoc,
 				uint32_t feat_cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return (psoc->soc_nif.soc_feature_caps & feat_cap) ? 1 : 0;
 }
 
@@ -741,6 +754,7 @@ static inline uint8_t wlan_psoc_nif_feat_cap_get(struct wlan_objmgr_psoc *psoc,
 static inline void wlan_psoc_set_hw_macaddr(struct wlan_objmgr_psoc *psoc,
 					uint8_t *macaddr)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (psoc != NULL)
 		WLAN_ADDR_COPY(psoc->soc_nif.soc_hw_macaddr, macaddr);
 }
@@ -757,6 +771,7 @@ static inline void wlan_psoc_set_hw_macaddr(struct wlan_objmgr_psoc *psoc,
  */
 static inline uint8_t *wlan_psoc_get_hw_macaddr(struct wlan_objmgr_psoc *psoc)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (psoc == NULL)
 		return NULL;
 	return psoc->soc_nif.soc_hw_macaddr;

+ 60 - 0
umac/cmn_services/obj_mgr/inc/wlan_objmgr_vdev_obj.h

@@ -489,6 +489,7 @@ void *wlan_objmgr_vdev_get_comp_private_obj(
 static inline struct wlan_objmgr_pdev *wlan_vdev_get_pdev(
 				struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_objmgr.wlan_pdev;
 }
 
@@ -509,6 +510,7 @@ static inline struct wlan_objmgr_vdev *wlan_pdev_vdev_list_peek_head(
 	struct wlan_objmgr_vdev *vdev;
 	qdf_list_node_t *vdev_node = NULL;
 
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (qdf_list_peek_front(vdev_list, &vdev_node) != QDF_STATUS_SUCCESS)
 		return NULL;
 
@@ -535,6 +537,7 @@ static inline struct wlan_objmgr_vdev *wlan_vdev_get_next_vdev_of_pdev(
 	qdf_list_node_t *node = &vdev->vdev_node;
 	qdf_list_node_t *next_node = NULL;
 
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (node == NULL)
 		return NULL;
 
@@ -561,6 +564,7 @@ static inline struct wlan_objmgr_vdev *wlan_vdev_get_next_vdev_of_pdev(
 static inline void wlan_vdev_set_pdev(struct wlan_objmgr_vdev *vdev,
 					struct wlan_objmgr_pdev *pdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_objmgr.wlan_pdev = pdev;
 }
 
@@ -579,6 +583,7 @@ static inline struct wlan_objmgr_psoc *wlan_vdev_get_psoc(
 {
 	struct wlan_objmgr_pdev *pdev;
 
+	/* This API is invoked with lock acquired, do not add log prints */
 	pdev = wlan_vdev_get_pdev(vdev);
 	if (pdev == NULL)
 		return NULL;
@@ -600,6 +605,7 @@ static inline struct wlan_objmgr_psoc *wlan_vdev_get_psoc(
 static inline void wlan_vdev_mlme_set_opmode(struct wlan_objmgr_vdev *vdev,
 				enum tQDF_ADAPTER_MODE mode)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.vdev_opmode = mode;
 }
 
@@ -617,6 +623,7 @@ static inline void wlan_vdev_mlme_set_opmode(struct wlan_objmgr_vdev *vdev,
 static inline enum tQDF_ADAPTER_MODE wlan_vdev_mlme_get_opmode(
 					struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_mlme.vdev_opmode;
 }
 
@@ -634,6 +641,7 @@ static inline enum tQDF_ADAPTER_MODE wlan_vdev_mlme_get_opmode(
 static inline void wlan_vdev_mlme_set_macaddr(struct wlan_objmgr_vdev *vdev,
 					 uint8_t *macaddr)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	WLAN_ADDR_COPY(vdev->vdev_mlme.macaddr, macaddr);
 }
 
@@ -650,6 +658,7 @@ static inline void wlan_vdev_mlme_set_macaddr(struct wlan_objmgr_vdev *vdev,
  */
 static inline uint8_t *wlan_vdev_mlme_get_macaddr(struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_mlme.macaddr;
 }
 
@@ -667,6 +676,7 @@ static inline uint8_t *wlan_vdev_mlme_get_macaddr(struct wlan_objmgr_vdev *vdev)
 static inline void wlan_vdev_mlme_set_mataddr(struct wlan_objmgr_vdev *vdev,
 					uint8_t *mataddr)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	WLAN_ADDR_COPY(vdev->vdev_mlme.mataddr, mataddr);
 }
 
@@ -683,6 +693,7 @@ static inline void wlan_vdev_mlme_set_mataddr(struct wlan_objmgr_vdev *vdev,
  */
 static inline uint8_t *wlan_vdev_mlme_get_mataddr(struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_mlme.mataddr;
 }
 
@@ -699,6 +710,7 @@ static inline uint8_t *wlan_vdev_mlme_get_mataddr(struct wlan_objmgr_vdev *vdev)
  */
 static inline uint8_t wlan_vdev_get_id(struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_objmgr.vdev_id;
 }
 
@@ -717,6 +729,7 @@ static inline uint8_t *wlan_vdev_get_hw_macaddr(struct wlan_objmgr_vdev *vdev)
 {
 	struct wlan_objmgr_pdev *pdev = wlan_vdev_get_pdev(vdev);
 
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (pdev != NULL) {
 		return wlan_pdev_get_hw_macaddr(pdev);
 	} else {
@@ -742,6 +755,7 @@ static inline QDF_STATUS wlan_vdev_mlme_set_ssid(
 				struct wlan_objmgr_vdev *vdev,
 				const uint8_t *ssid, uint8_t ssid_len)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (ssid_len < WLAN_SSID_MAX_LEN) {
 		qdf_mem_copy(vdev->vdev_mlme.ssid, ssid, ssid_len);
 		vdev->vdev_mlme.ssid_len = ssid_len;
@@ -770,6 +784,7 @@ static inline QDF_STATUS wlan_vdev_mlme_get_ssid(
 				struct wlan_objmgr_vdev *vdev,
 				 uint8_t *ssid, uint8_t *ssid_len)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (vdev->vdev_mlme.ssid_len > 0) {
 		*ssid_len = vdev->vdev_mlme.ssid_len;
 		qdf_mem_copy(ssid, vdev->vdev_mlme.ssid, *ssid_len);
@@ -820,6 +835,7 @@ static inline void wlan_vdev_obj_unlock(struct wlan_objmgr_vdev *vdev)
 static inline void wlan_vdev_mlme_set_bss_chan(struct wlan_objmgr_vdev *vdev,
 			struct wlan_channel *bss_chan)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.bss_chan = bss_chan;
 }
 
@@ -837,6 +853,7 @@ static inline void wlan_vdev_mlme_set_bss_chan(struct wlan_objmgr_vdev *vdev,
 static inline struct wlan_channel *wlan_vdev_mlme_get_bss_chan(
 				struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_mlme.bss_chan;
 }
 
@@ -854,6 +871,7 @@ static inline struct wlan_channel *wlan_vdev_mlme_get_bss_chan(
 static inline void wlan_vdev_mlme_set_des_chan(struct wlan_objmgr_vdev *vdev,
 			struct wlan_channel *des_chan)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.des_chan = des_chan;
 }
 
@@ -871,6 +889,7 @@ static inline void wlan_vdev_mlme_set_des_chan(struct wlan_objmgr_vdev *vdev,
 static inline struct wlan_channel *wlan_vdev_mlme_get_des_chan(
 				struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_mlme.des_chan;
 }
 
@@ -888,6 +907,7 @@ static inline struct wlan_channel *wlan_vdev_mlme_get_des_chan(
 static inline void wlan_vdev_mlme_set_nss(struct wlan_objmgr_vdev *vdev,
 			uint8_t nss)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.nss = nss;
 }
 
@@ -905,6 +925,7 @@ static inline void wlan_vdev_mlme_set_nss(struct wlan_objmgr_vdev *vdev,
 static inline uint8_t wlan_vdev_mlme_get_nss(
 				struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_mlme.nss;
 }
 
@@ -922,6 +943,7 @@ static inline uint8_t wlan_vdev_mlme_get_nss(
 static inline void wlan_vdev_mlme_set_chainmask(struct wlan_objmgr_vdev *vdev,
 			uint8_t chainmask)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.chainmask = chainmask;
 }
 
@@ -939,6 +961,7 @@ static inline void wlan_vdev_mlme_set_chainmask(struct wlan_objmgr_vdev *vdev,
 static inline uint8_t wlan_vdev_mlme_get_chainmask(
 				struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_mlme.chainmask;
 }
 
@@ -956,6 +979,7 @@ static inline uint8_t wlan_vdev_mlme_get_chainmask(
 static inline void wlan_vdev_mlme_set_txpower(struct wlan_objmgr_vdev *vdev,
 			uint8_t txpow)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.tx_power = txpow;
 }
 
@@ -973,6 +997,7 @@ static inline void wlan_vdev_mlme_set_txpower(struct wlan_objmgr_vdev *vdev,
 static inline uint8_t wlan_vdev_mlme_get_txpower(
 				struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_mlme.tx_power;
 }
 
@@ -990,6 +1015,7 @@ static inline uint8_t wlan_vdev_mlme_get_txpower(
 static inline void wlan_vdev_mlme_set_maxrate(struct wlan_objmgr_vdev *vdev,
 			uint32_t maxrate)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.max_rate = maxrate;
 }
 
@@ -1007,6 +1033,7 @@ static inline void wlan_vdev_mlme_set_maxrate(struct wlan_objmgr_vdev *vdev,
 static inline uint32_t wlan_vdev_mlme_get_maxrate(
 				struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_mlme.max_rate;
 }
 
@@ -1024,6 +1051,7 @@ static inline uint32_t wlan_vdev_mlme_get_maxrate(
 static inline void wlan_vdev_mlme_set_txmgmtrate(struct wlan_objmgr_vdev *vdev,
 			uint32_t txmgmtrate)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.tx_mgmt_rate = txmgmtrate;
 }
 
@@ -1041,6 +1069,7 @@ static inline void wlan_vdev_mlme_set_txmgmtrate(struct wlan_objmgr_vdev *vdev,
 static inline uint32_t wlan_vdev_mlme_get_txmgmtrate(
 				struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_mlme.tx_mgmt_rate;
 }
 
@@ -1058,6 +1087,7 @@ static inline uint32_t wlan_vdev_mlme_get_txmgmtrate(
 static inline void wlan_vdev_mlme_feat_cap_set(struct wlan_objmgr_vdev *vdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.vdev_feat_caps |= cap;
 }
 
@@ -1075,6 +1105,7 @@ static inline void wlan_vdev_mlme_feat_cap_set(struct wlan_objmgr_vdev *vdev,
 static inline void wlan_vdev_mlme_feat_cap_clear(struct wlan_objmgr_vdev *vdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.vdev_feat_caps &= ~cap;
 }
 
@@ -1093,6 +1124,7 @@ static inline void wlan_vdev_mlme_feat_cap_clear(struct wlan_objmgr_vdev *vdev,
 static inline uint8_t wlan_vdev_mlme_feat_cap_get(struct wlan_objmgr_vdev *vdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return (vdev->vdev_mlme.vdev_feat_caps & cap) ? 1 : 0;
 }
 
@@ -1111,6 +1143,7 @@ static inline void wlan_vdev_mlme_feat_ext_cap_set(
 				struct wlan_objmgr_vdev *vdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.vdev_feat_ext_caps |= cap;
 }
 
@@ -1129,6 +1162,7 @@ static inline void wlan_vdev_mlme_feat_ext_cap_clear(
 				struct wlan_objmgr_vdev *vdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.vdev_feat_ext_caps &= ~cap;
 }
 
@@ -1148,6 +1182,7 @@ static inline uint8_t wlan_vdev_mlme_feat_ext_cap_get(
 				struct wlan_objmgr_vdev *vdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return (vdev->vdev_mlme.vdev_feat_ext_caps & cap) ? 1 : 0;
 }
 
@@ -1165,6 +1200,7 @@ static inline uint8_t wlan_vdev_mlme_feat_ext_cap_get(
 static inline void wlan_vdev_mlme_cap_set(struct wlan_objmgr_vdev *vdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.vdev_caps |= cap;
 }
 
@@ -1182,6 +1218,7 @@ static inline void wlan_vdev_mlme_cap_set(struct wlan_objmgr_vdev *vdev,
 static inline void wlan_vdev_mlme_cap_clear(struct wlan_objmgr_vdev *vdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_mlme.vdev_caps &= ~cap;
 }
 
@@ -1200,6 +1237,7 @@ static inline void wlan_vdev_mlme_cap_clear(struct wlan_objmgr_vdev *vdev,
 static inline uint8_t wlan_vdev_mlme_cap_get(struct wlan_objmgr_vdev *vdev,
 				uint32_t cap)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return (vdev->vdev_mlme.vdev_caps & cap) ? 1 : 0;
 }
 
@@ -1216,6 +1254,7 @@ static inline uint8_t wlan_vdev_mlme_cap_get(struct wlan_objmgr_vdev *vdev,
 static inline enum wlan_vdev_state wlan_vdev_mlme_get_state(
 				struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_mlme.mlme_state;
 }
 
@@ -1233,6 +1272,7 @@ static inline enum wlan_vdev_state wlan_vdev_mlme_get_state(
 static inline void wlan_vdev_mlme_set_state(struct wlan_objmgr_vdev *vdev,
 					enum wlan_vdev_state state)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	if (state < WLAN_VDEV_S_MAX)
 		vdev->vdev_mlme.mlme_state = state;
 }
@@ -1251,6 +1291,7 @@ static inline void wlan_vdev_mlme_set_state(struct wlan_objmgr_vdev *vdev,
 static inline void wlan_vdev_set_selfpeer(struct wlan_objmgr_vdev *vdev,
 						struct wlan_objmgr_peer *peer)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_objmgr.self_peer = peer;
 }
 
@@ -1268,6 +1309,7 @@ static inline void wlan_vdev_set_selfpeer(struct wlan_objmgr_vdev *vdev,
 static inline struct wlan_objmgr_peer *wlan_vdev_get_selfpeer(
 					struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_objmgr.self_peer;
 }
 
@@ -1285,6 +1327,7 @@ static inline struct wlan_objmgr_peer *wlan_vdev_get_selfpeer(
 static inline void wlan_vdev_set_bsspeer(struct wlan_objmgr_vdev *vdev,
 						 struct wlan_objmgr_peer *peer)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	vdev->vdev_objmgr.bss_peer = peer;
 }
 
@@ -1302,6 +1345,23 @@ static inline void wlan_vdev_set_bsspeer(struct wlan_objmgr_vdev *vdev,
 static inline struct wlan_objmgr_peer *wlan_vdev_get_bsspeer(
 					struct wlan_objmgr_vdev *vdev)
 {
+	/* This API is invoked with lock acquired, do not add log prints */
 	return vdev->vdev_objmgr.bss_peer;
 }
+
+/**
+ * wlan_vdev_get_ospriv() - get os priv pointer
+ * @vdev: VDEV object
+ *
+ * API to get OS private pointer from VDEV
+ *
+ * Caller need to acquire lock with wlan_vdev_obj_lock()
+ *
+ * Return: ospriv - private pointer
+ */
+static inline void *wlan_vdev_get_ospriv(struct wlan_objmgr_vdev *vdev)
+{
+	/* This API is invoked with lock acquired, do not add log prints */
+	return vdev->vdev_nif.osdev;
+}
 #endif /* _WLAN_OBJMGR_VDEV_OBJ_H_*/

+ 1 - 1
umac/cmn_services/obj_mgr/src/wlan_objmgr_global_obj.c

@@ -19,7 +19,7 @@
   * DOC: Public APIs to perform operations on Global objects
   */
 
-#include <wlan_objmgr_global_obj_i.h>
+#include "wlan_objmgr_global_obj_i.h"
 #include <wlan_objmgr_global_obj.h>
 #include "qdf_mem.h"
 

+ 24 - 1
umac/cmn_services/obj_mgr/src/wlan_objmgr_global_obj_i.h

@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2016-2017 The Linux Foundation. All rights reserved.
  *
  * Permission to use, copy, modify, and/or distribute this software for
  * any purpose with or without fee is hereby granted, provided that the
@@ -97,4 +97,27 @@ struct wlan_objmgr_global {
 
 extern struct wlan_objmgr_global *g_umac_glb_obj;
 
+/**
+ * wlan_objmgr_psoc_object_attach() - attach psoc to global object
+ * @psoc - PSOC object
+ *
+ * attaches PSOC to global psoc list
+ *
+ * Return: SUCCESS
+ *         Failure (Max supported PSOCs exceeded)
+ */
+QDF_STATUS wlan_objmgr_psoc_object_attach(
+			struct wlan_objmgr_psoc *psoc);
+
+/**
+ * wlan_objmgr_psoc_object_detach() - detach psoc from global object
+ * @psoc - PSOC object
+ *
+ * detaches PSOC from global psoc list
+ *
+ * Return: SUCCESS
+ *         Failure (if list is empty and PSOC is not present)
+ */
+QDF_STATUS wlan_objmgr_psoc_object_detach(
+			struct wlan_objmgr_psoc *psoc);
 #endif /* _WLAN_OBJMGR_GLOBAL_OBJ_I_H_ */

+ 3 - 3
umac/cmn_services/obj_mgr/src/wlan_objmgr_pdev_obj.c

@@ -20,14 +20,14 @@
   */
 #include <wlan_objmgr_cmn.h>
 #include <wlan_objmgr_global_obj.h>
-#include <wlan_objmgr_global_obj_i.h>
 #include <wlan_objmgr_psoc_obj.h>
 #include <wlan_objmgr_pdev_obj.h>
 #include <wlan_objmgr_vdev_obj.h>
 #include <wlan_objmgr_peer_obj.h>
-#include <wlan_objmgr_psoc_obj_i.h>
-#include <wlan_objmgr_pdev_obj_i.h>
 #include <qdf_mem.h>
+#include "wlan_objmgr_global_obj_i.h"
+#include "wlan_objmgr_psoc_obj_i.h"
+#include "wlan_objmgr_pdev_obj_i.h"
 
 
 /**

+ 6 - 4
umac/cmn_services/obj_mgr/src/wlan_objmgr_peer_obj.c

@@ -20,15 +20,15 @@
  */
 #include <wlan_objmgr_cmn.h>
 #include <wlan_objmgr_global_obj.h>
-#include <wlan_objmgr_global_obj_i.h>
 #include <wlan_objmgr_psoc_obj.h>
 #include <wlan_objmgr_pdev_obj.h>
 #include <wlan_objmgr_vdev_obj.h>
 #include <wlan_objmgr_peer_obj.h>
-#include <wlan_objmgr_psoc_obj_i.h>
-#include <wlan_objmgr_pdev_obj_i.h>
-#include <wlan_objmgr_vdev_obj_i.h>
 #include <qdf_mem.h>
+#include "wlan_objmgr_global_obj_i.h"
+#include "wlan_objmgr_psoc_obj_i.h"
+#include "wlan_objmgr_pdev_obj_i.h"
+#include "wlan_objmgr_vdev_obj_i.h"
 
 
 /**
@@ -100,6 +100,8 @@ struct wlan_objmgr_peer *wlan_objmgr_peer_obj_create(
 	wlan_peer_set_peer_type(peer, type);
 	/* set mac address of peer */
 	wlan_peer_set_macaddr(peer, macaddr);
+	/* initialize peer state */
+	wlan_peer_mlme_set_state(peer, WLAN_INIT_STATE);
 	/* Attach peer to psoc, psoc maintains the node table for the device */
 	if (wlan_objmgr_psoc_peer_attach(psoc, peer) !=
 					QDF_STATUS_SUCCESS) {

+ 4 - 3
umac/cmn_services/obj_mgr/src/wlan_objmgr_psoc_obj.c

@@ -21,14 +21,14 @@
 
 #include <wlan_objmgr_cmn.h>
 #include <wlan_objmgr_global_obj.h>
-#include <wlan_objmgr_global_obj_i.h>
 #include <wlan_objmgr_psoc_obj.h>
 #include <wlan_objmgr_pdev_obj.h>
 #include <wlan_objmgr_vdev_obj.h>
 #include <wlan_objmgr_peer_obj.h>
-#include <wlan_objmgr_psoc_obj_i.h>
-#include <wlan_objmgr_pdev_obj_i.h>
 #include <qdf_mem.h>
+#include "wlan_objmgr_global_obj_i.h"
+#include "wlan_objmgr_psoc_obj_i.h"
+#include "wlan_objmgr_pdev_obj_i.h"
 
 /**
  ** APIs to Create/Delete Global object APIs
@@ -446,6 +446,7 @@ QDF_STATUS wlan_objmgr_iterate_obj_list(
 
 	return QDF_STATUS_SUCCESS;
 }
+EXPORT_SYMBOL(wlan_objmgr_iterate_obj_list);
 
 static void wlan_objmgr_psoc_peer_delete(struct wlan_objmgr_psoc *psoc,
 					 void *obj, void *args)

+ 1 - 26
umac/cmn_services/obj_mgr/src/wlan_objmgr_psoc_obj_i.h

@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2016-2017 The Linux Foundation. All rights reserved.
  *
  * Permission to use, copy, modify, and/or distribute this software for
  * any purpose with or without fee is hereby granted, provided that the
@@ -98,29 +98,4 @@ QDF_STATUS wlan_objmgr_psoc_peer_attach(struct wlan_objmgr_psoc *psoc,
  */
 QDF_STATUS wlan_objmgr_psoc_peer_detach(struct wlan_objmgr_psoc *psoc,
 						struct wlan_objmgr_peer *peer);
-
-/**
- * wlan_objmgr_psoc_object_attach() - attach psoc to global object
- * @psoc - PSOC object
- *
- * attaches PSOC to global psoc list
- *
- * Return: SUCCESS
- *         Failure (Max supported PSOCs exceeded)
- */
-QDF_STATUS wlan_objmgr_psoc_object_attach(
-			struct wlan_objmgr_psoc *psoc);
-
-/**
- * wlan_objmgr_psoc_object_detach() - detach psoc from global object
- * @psoc - PSOC object
- *
- * detaches PSOC from global psoc list
- *
- * Return: SUCCESS
- *         Failure (if list is empty and PSOC is not present)
- */
-QDF_STATUS wlan_objmgr_psoc_object_detach(
-			struct wlan_objmgr_psoc *psoc);
-
 #endif /* _WLAN_OBJMGR_PSOC_OBJ_I_H_ */

+ 4 - 4
umac/cmn_services/obj_mgr/src/wlan_objmgr_vdev_obj.c

@@ -20,15 +20,15 @@
   */
 #include <wlan_objmgr_cmn.h>
 #include <wlan_objmgr_global_obj.h>
-#include <wlan_objmgr_global_obj_i.h>
 #include <wlan_objmgr_psoc_obj.h>
 #include <wlan_objmgr_pdev_obj.h>
 #include <wlan_objmgr_vdev_obj.h>
-#include <wlan_objmgr_vdev_obj_i.h>
 #include <wlan_objmgr_peer_obj.h>
-#include <wlan_objmgr_psoc_obj_i.h>
-#include <wlan_objmgr_pdev_obj_i.h>
 #include <qdf_mem.h>
+#include "wlan_objmgr_global_obj_i.h"
+#include "wlan_objmgr_psoc_obj_i.h"
+#include "wlan_objmgr_pdev_obj_i.h"
+#include "wlan_objmgr_vdev_obj_i.h"
 
 /**
  ** APIs to Create/Delete Global object APIs