cnss_utils.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /* Copyright (c) 2017, 2019 The Linux Foundation. All rights reserved. */
  3. #ifndef _CNSS_UTILS_H_
  4. #define _CNSS_UTILS_H_
  5. #include <linux/types.h>
  6. struct device;
  7. enum cnss_utils_cc_src {
  8. CNSS_UTILS_SOURCE_CORE,
  9. CNSS_UTILS_SOURCE_11D,
  10. CNSS_UTILS_SOURCE_USER
  11. };
  12. extern int cnss_utils_set_wlan_unsafe_channel(struct device *dev,
  13. u16 *unsafe_ch_list,
  14. u16 ch_count);
  15. extern int cnss_utils_get_wlan_unsafe_channel(struct device *dev,
  16. u16 *unsafe_ch_list,
  17. u16 *ch_count, u16 buf_len);
  18. extern int cnss_utils_wlan_set_dfs_nol(struct device *dev,
  19. const void *info, u16 info_len);
  20. extern int cnss_utils_wlan_get_dfs_nol(struct device *dev,
  21. void *info, u16 info_len);
  22. extern int cnss_utils_get_driver_load_cnt(struct device *dev);
  23. extern void cnss_utils_increment_driver_load_cnt(struct device *dev);
  24. extern int cnss_utils_set_wlan_mac_address(const u8 *in, uint32_t len);
  25. extern u8 *cnss_utils_get_wlan_mac_address(struct device *dev, uint32_t *num);
  26. extern int cnss_utils_set_wlan_derived_mac_address(const u8 *in, uint32_t len);
  27. extern u8 *cnss_utils_get_wlan_derived_mac_address(struct device *dev,
  28. uint32_t *num);
  29. extern void cnss_utils_set_cc_source(struct device *dev,
  30. enum cnss_utils_cc_src cc_source);
  31. extern enum cnss_utils_cc_src cnss_utils_get_cc_source(struct device *dev);
  32. #endif