Path: blob/main/sys/contrib/dev/broadcom/brcm80211/brcmfmac/pno.h
178665 views
// SPDX-License-Identifier: ISC1/*2* Copyright (c) 2016 Broadcom3*/4#ifndef _BRCMF_PNO_H5#define _BRCMF_PNO_H67#define BRCMF_PNO_SCAN_COMPLETE 18#define BRCMF_PNO_MAX_PFN_COUNT 169#define BRCMF_PNO_SCHED_SCAN_MIN_PERIOD 1010#define BRCMF_PNO_SCHED_SCAN_MAX_PERIOD 5081112/* forward declaration */13struct brcmf_pno_info;1415/**16* brcmf_pno_start_sched_scan - initiate scheduled scan on device.17*18* @ifp: interface object used.19* @req: configuration parameters for scheduled scan.20*/21int brcmf_pno_start_sched_scan(struct brcmf_if *ifp,22struct cfg80211_sched_scan_request *req);2324/**25* brcmf_pno_stop_sched_scan - terminate scheduled scan on device.26*27* @ifp: interface object used.28* @reqid: unique identifier of scan to be stopped.29*/30int brcmf_pno_stop_sched_scan(struct brcmf_if *ifp, u64 reqid);3132/**33* brcmf_pno_wiphy_params - fill scheduled scan parameters in wiphy instance.34*35* @wiphy: wiphy instance to be used.36* @gscan: indicates whether the device has support for g-scan feature.37*/38void brcmf_pno_wiphy_params(struct wiphy *wiphy, bool gscan);3940/**41* brcmf_pno_attach - allocate and attach module information.42*43* @cfg: cfg80211 context used.44*/45int brcmf_pno_attach(struct brcmf_cfg80211_info *cfg);4647/**48* brcmf_pno_detach - detach and free module information.49*50* @cfg: cfg80211 context used.51*/52void brcmf_pno_detach(struct brcmf_cfg80211_info *cfg);5354/**55* brcmf_pno_find_reqid_by_bucket - find request id for given bucket index.56*57* @pi: pno instance used.58* @bucket: index of firmware bucket.59*/60u64 brcmf_pno_find_reqid_by_bucket(struct brcmf_pno_info *pi, u32 bucket);6162/**63* brcmf_pno_get_bucket_map - determine bucket map for given netinfo.64*65* @pi: pno instance used.66* @netinfo: netinfo to compare with bucket configuration.67*/68u32 brcmf_pno_get_bucket_map(struct brcmf_pno_info *pi,69struct brcmf_pno_net_info_le *netinfo);7071#endif /* _BRCMF_PNO_H */727374