1 /*
2 * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
3 *
4 * Permission to use, copy, modify, and/or distribute this software for
5 * any purpose with or without fee is hereby granted, provided that the
6 * above copyright notice and this permission notice appear in all
7 * copies.
8 *
9 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
10 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
11 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
12 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
13 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
14 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
15 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
16 * PERFORMANCE OF THIS SOFTWARE.
17 */
18
19 /**
20 * DOC: wlan_hdd_sysfs_get_freq_for_pwr.h
21 *
22 * implementation for creating sysfs file valid_freq that contains
23 * valid freq list for provided power type
24 */
25 #ifndef _WLAN_HDD_SYSFS_FREQ_FOR_PWR_H
26 #define _WLAN_HDD_SYSFS_FREQ_FOR_PWR_H
27 #if defined(WLAN_SYSFS) && defined(CONFIG_WLAN_FREQ_LIST)
28 /**
29 * hdd_sysfs_get_valid_freq_for_power_create() - API to create get_valid_freq
30 * @driver_kobject: sysfs driver kobject
31 *
32 * file path: /sys/kernel/wifi/valid_freq
33 *
34 * usage:
35 * echo "VLP"/"LP"/"SP" > valid_freq
36 *
37 * Return: 0 on success and errno on failure
38 */
39 int hdd_sysfs_get_valid_freq_for_power_create(struct kobject *driver_kobject);
40
41 /**
42 * hdd_sysfs_get_valid_freq_for_power_destroy() -
43 * API to destroy get_valid_freq sysfs
44 * @driver_kobject: sysfs driver kobject
45 *
46 * Return: none
47 */
48 void
49 hdd_sysfs_get_valid_freq_for_power_destroy(struct kobject *driver_kobject);
50 #else
51 static inline int
hdd_sysfs_get_valid_freq_for_power_create(struct kobject * driver_kobject)52 hdd_sysfs_get_valid_freq_for_power_create(struct kobject *driver_kobject)
53 {
54 return 0;
55 }
56
57 static inline void
hdd_sysfs_get_valid_freq_for_power_destroy(struct kobject * driver_kobject)58 hdd_sysfs_get_valid_freq_for_power_destroy(struct kobject *driver_kobject)
59 {
60 }
61 #endif
62 #endif
63