/* * Copyright (c) 2017-2019 The Linux Foundation. All rights reserved. * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. 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 * above copyright notice and this permission notice appear in all * copies. * * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR * PERFORMANCE OF THIS SOFTWARE. */ /** * DOC: dp_cal_client_api.h * define timer to update DP stats */ #ifndef _DP_CAL_CLIENT_H_ #define _DP_CAL_CLIENT_H_ #include #include #include #include /*timer will run every 1 sec*/ #define DP_CAL_CLIENT_TIME 1000 struct cal_client { qdf_timer_t cal_client_timer; void (*iterate_update_peer_list)(struct cdp_pdev *ctx); struct cdp_pdev *pdev_hdl; }; void dp_cal_client_attach(struct cdp_cal_client **cal_client_ctx, struct cdp_pdev *pdev, qdf_device_t osdev, void (*iterate_peer_list)(struct cdp_pdev *)); void dp_cal_client_detach(struct cdp_cal_client **cal_client_ctx); void dp_cal_client_timer_start(void *ctx); void dp_cal_client_timer_stop(void *ctx); void dp_cal_client_stats_timer_fn(void *pdev_hdl); void dp_cal_client_update_peer_stats(struct cdp_peer_stats *peer_stats); void dp_cal_client_update_peer_stats_wifi3(struct cdp_calibr_stats_intf *stats_intf, struct cdp_calibr_stats *calibr_stats); #ifndef ATH_SUPPORT_EXT_STAT void dp_cal_client_attach(struct cdp_cal_client **cal_client_ctx, struct cdp_pdev *pdev, qdf_device_t osdev, void (*iterate_peer_list)(struct cdp_pdev *)) { } void dp_cal_client_detach(struct cdp_cal_client **cal_client_ctx) { } void dp_cal_client_timer_start(void *ctx) { } void dp_cal_client_timer_stop(void *ctx) { } void dp_cal_client_stats_timer_fn(void *pdev_hdl) { } void dp_cal_client_update_peer_stats(struct cdp_peer_stats *peer_stats) { } void dp_cal_client_update_peer_stats_wifi3(struct cdp_calibr_stats_intf *stats_intf, struct cdp_calibr_stats *calibr_stats) { } #endif #endif /*_DP_CAL_CLIENT_H_*/