|
@@ -49,3 +49,27 @@ int wlan_cfg80211_get_peer_cp_stats(struct wlan_objmgr_peer *peer_obj,
|
|
|
|
|
|
return qdf_status_to_os_return(status);
|
|
|
}
|
|
|
+
|
|
|
+int wlan_cfg80211_get_vdev_cp_stats(struct wlan_objmgr_vdev *vdev_obj,
|
|
|
+ struct vdev_ic_cp_stats *vdev_cp_stats)
|
|
|
+{
|
|
|
+ QDF_STATUS status;
|
|
|
+
|
|
|
+ if (!vdev_obj) {
|
|
|
+ cfg80211_err("Invalid input, vdev obj is NULL");
|
|
|
+ return -EINVAL;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!vdev_cp_stats) {
|
|
|
+ cfg80211_err("Invalid input, vdev cp obj is NULL");
|
|
|
+ return -EINVAL;
|
|
|
+ }
|
|
|
+
|
|
|
+ status = wlan_ucfg_get_vdev_cp_stats(vdev_obj, vdev_cp_stats);
|
|
|
+ if (QDF_IS_STATUS_ERROR(status)) {
|
|
|
+ cfg80211_err("wlan_cfg80211_get_vdev_cp_stats status: %d",
|
|
|
+ status);
|
|
|
+ }
|
|
|
+
|
|
|
+ return qdf_status_to_os_return(status);
|
|
|
+}
|