Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */
2/* Do not edit directly, auto-generated from: */
3/* Documentation/netlink/specs/dev-energymodel.yaml */
4/* YNL-GEN uapi header */
5/* To regenerate run: tools/net/ynl/ynl-regen.sh */
6
7#ifndef _UAPI_LINUX_DEV_ENERGYMODEL_H
8#define _UAPI_LINUX_DEV_ENERGYMODEL_H
9
10#define DEV_ENERGYMODEL_FAMILY_NAME "dev-energymodel"
11#define DEV_ENERGYMODEL_FAMILY_VERSION 1
12
13/**
14 * enum dev_energymodel_perf_state_flags
15 * @DEV_ENERGYMODEL_PERF_STATE_FLAGS_PERF_STATE_INEFFICIENT: The performance
16 * state is inefficient. There is in this perf-domain, another performance
17 * state with a higher frequency but a lower or equal power cost.
18 */
19enum dev_energymodel_perf_state_flags {
20 DEV_ENERGYMODEL_PERF_STATE_FLAGS_PERF_STATE_INEFFICIENT = 1,
21};
22
23/**
24 * enum dev_energymodel_perf_domain_flags
25 * @DEV_ENERGYMODEL_PERF_DOMAIN_FLAGS_PERF_DOMAIN_MICROWATTS: The power values
26 * are in micro-Watts or some other scale.
27 * @DEV_ENERGYMODEL_PERF_DOMAIN_FLAGS_PERF_DOMAIN_SKIP_INEFFICIENCIES: Skip
28 * inefficient states when estimating energy consumption.
29 * @DEV_ENERGYMODEL_PERF_DOMAIN_FLAGS_PERF_DOMAIN_ARTIFICIAL: The power values
30 * are artificial and might be created by platform missing real power
31 * information.
32 */
33enum dev_energymodel_perf_domain_flags {
34 DEV_ENERGYMODEL_PERF_DOMAIN_FLAGS_PERF_DOMAIN_MICROWATTS = 1,
35 DEV_ENERGYMODEL_PERF_DOMAIN_FLAGS_PERF_DOMAIN_SKIP_INEFFICIENCIES = 2,
36 DEV_ENERGYMODEL_PERF_DOMAIN_FLAGS_PERF_DOMAIN_ARTIFICIAL = 4,
37};
38
39enum {
40 DEV_ENERGYMODEL_A_PERF_DOMAIN_PAD = 1,
41 DEV_ENERGYMODEL_A_PERF_DOMAIN_PERF_DOMAIN_ID,
42 DEV_ENERGYMODEL_A_PERF_DOMAIN_FLAGS,
43 DEV_ENERGYMODEL_A_PERF_DOMAIN_CPUS,
44
45 __DEV_ENERGYMODEL_A_PERF_DOMAIN_MAX,
46 DEV_ENERGYMODEL_A_PERF_DOMAIN_MAX = (__DEV_ENERGYMODEL_A_PERF_DOMAIN_MAX - 1)
47};
48
49enum {
50 DEV_ENERGYMODEL_A_PERF_TABLE_PERF_DOMAIN_ID = 1,
51 DEV_ENERGYMODEL_A_PERF_TABLE_PERF_STATE,
52
53 __DEV_ENERGYMODEL_A_PERF_TABLE_MAX,
54 DEV_ENERGYMODEL_A_PERF_TABLE_MAX = (__DEV_ENERGYMODEL_A_PERF_TABLE_MAX - 1)
55};
56
57enum {
58 DEV_ENERGYMODEL_A_PERF_STATE_PAD = 1,
59 DEV_ENERGYMODEL_A_PERF_STATE_PERFORMANCE,
60 DEV_ENERGYMODEL_A_PERF_STATE_FREQUENCY,
61 DEV_ENERGYMODEL_A_PERF_STATE_POWER,
62 DEV_ENERGYMODEL_A_PERF_STATE_COST,
63 DEV_ENERGYMODEL_A_PERF_STATE_FLAGS,
64
65 __DEV_ENERGYMODEL_A_PERF_STATE_MAX,
66 DEV_ENERGYMODEL_A_PERF_STATE_MAX = (__DEV_ENERGYMODEL_A_PERF_STATE_MAX - 1)
67};
68
69enum {
70 DEV_ENERGYMODEL_CMD_GET_PERF_DOMAINS = 1,
71 DEV_ENERGYMODEL_CMD_GET_PERF_TABLE,
72 DEV_ENERGYMODEL_CMD_PERF_DOMAIN_CREATED,
73 DEV_ENERGYMODEL_CMD_PERF_DOMAIN_UPDATED,
74 DEV_ENERGYMODEL_CMD_PERF_DOMAIN_DELETED,
75
76 __DEV_ENERGYMODEL_CMD_MAX,
77 DEV_ENERGYMODEL_CMD_MAX = (__DEV_ENERGYMODEL_CMD_MAX - 1)
78};
79
80#define DEV_ENERGYMODEL_MCGRP_EVENT "event"
81
82#endif /* _UAPI_LINUX_DEV_ENERGYMODEL_H */