ACPI: platform-profile: Drop const qualifier for cur_profile
[linux-block.git] / include / linux / platform_profile.h
CommitLineData
a2ff95e0
MP
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Platform profile sysfs interface
4 *
5 * See Documentation/ABI/testing/sysfs-platform_profile.rst for more
6 * information.
7 */
8
9#ifndef _PLATFORM_PROFILE_H_
10#define _PLATFORM_PROFILE_H_
11
12#include <linux/bitops.h>
13
14/*
15 * If more options are added please update profile_names
16 * array in platform-profile.c and sysfs-platform-profile.rst
17 * documentation.
18 */
19
20enum platform_profile_option {
21 PLATFORM_PROFILE_LOW_POWER,
22 PLATFORM_PROFILE_COOL,
23 PLATFORM_PROFILE_QUIET,
24 PLATFORM_PROFILE_BALANCED,
25 PLATFORM_PROFILE_PERFORMANCE,
26 PLATFORM_PROFILE_LAST, /*must always be last */
27};
28
29struct platform_profile_handler {
30 unsigned long choices[BITS_TO_LONGS(PLATFORM_PROFILE_LAST)];
31 int (*profile_get)(enum platform_profile_option *profile);
32 int (*profile_set)(enum platform_profile_option profile);
33};
34
9d56653d 35int platform_profile_register(struct platform_profile_handler *pprof);
a2ff95e0
MP
36int platform_profile_remove(void);
37void platform_profile_notify(void);
38
39#endif /*_PLATFORM_PROFILE_H_*/