You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
2.2 KiB
61 lines
2.2 KiB
/* Copyright (c) 2017, 2020 The Linux Foundation. All rights reserved.
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 and
|
|
* only version 2 as published by the Free Software Foundation.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*/
|
|
|
|
#ifndef _CNSS_UTILS_H_
|
|
#define _CNSS_UTILS_H_
|
|
|
|
enum cnss_utils_cc_src {
|
|
CNSS_UTILS_SOURCE_CORE,
|
|
CNSS_UTILS_SOURCE_11D,
|
|
CNSS_UTILS_SOURCE_USER
|
|
};
|
|
|
|
extern int cnss_utils_set_wlan_unsafe_channel(struct device *dev,
|
|
u16 *unsafe_ch_list,
|
|
u16 ch_count);
|
|
extern int cnss_utils_get_wlan_unsafe_channel(struct device *dev,
|
|
u16 *unsafe_ch_list,
|
|
u16 *ch_count, u16 buf_len);
|
|
extern int cnss_utils_wlan_set_dfs_nol(struct device *dev,
|
|
const void *info, u16 info_len);
|
|
extern int cnss_utils_wlan_get_dfs_nol(struct device *dev,
|
|
void *info, u16 info_len);
|
|
extern int cnss_utils_get_driver_load_cnt(struct device *dev);
|
|
extern void cnss_utils_increment_driver_load_cnt(struct device *dev);
|
|
extern int cnss_utils_set_wlan_mac_address(const u8 *in, uint32_t len);
|
|
extern u8 *cnss_utils_get_wlan_mac_address(struct device *dev, uint32_t *num);
|
|
extern int cnss_utils_set_wlan_derived_mac_address(const u8 *in, uint32_t len);
|
|
extern u8 *cnss_utils_get_wlan_derived_mac_address(struct device *dev,
|
|
uint32_t *num);
|
|
extern void cnss_utils_set_cc_source(struct device *dev,
|
|
enum cnss_utils_cc_src cc_source);
|
|
extern enum cnss_utils_cc_src cnss_utils_get_cc_source(struct device *dev);
|
|
#ifdef CONFIG_CNSS_TIMESYNC
|
|
enum wlan_time_sync_trigger_type {
|
|
CNSS_POSITIVE_EDGE_TRIGGER,
|
|
CNSS_NEGATIVE_EDGE_TRIGGER,
|
|
};
|
|
|
|
struct avtimer_cnss_fptr_t {
|
|
int (*fptr_avtimer_open)(void);
|
|
int (*fptr_avtimer_enable)(int enable);
|
|
int (*fptr_avtimer_get_time)(uint64_t *avtimer_tick);
|
|
};
|
|
|
|
extern int cnss_get_audio_wlan_timestamp(struct device *dev,
|
|
enum wlan_time_sync_trigger_type type,
|
|
u64 *lpass_ts);
|
|
|
|
extern void cnss_utils_set_avtimer_fptr(struct avtimer_cnss_fptr_t avtimer);
|
|
#endif
|
|
|
|
#endif
|
|
|