]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/blame - tools/power/cpupower/bench/parse.h
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156
[mirror_ubuntu-focal-kernel.git] / tools / power / cpupower / bench / parse.h
CommitLineData
1a59d1b8 1/* SPDX-License-Identifier: GPL-2.0-or-later */
7fe2f639
DB
2/* cpufreq-bench CPUFreq microbenchmark
3 *
4 * Copyright (C) 2008 Christian Kornacker <ckornacker@suse.de>
7fe2f639
DB
5 */
6
7/* struct that holds the required config parameters */
8struct config
9{
02af3cb5
DB
10 long sleep; /* sleep time in µs */
11 long load; /* load time in µs */
7fe2f639 12 long sleep_step; /* time value which changes the
02af3cb5 13 * sleep time after every round in µs */
7fe2f639 14 long load_step; /* time value which changes the
02af3cb5 15 * load time after every round in µs */
7fe2f639
DB
16 unsigned int cycles; /* calculation cycles with the same sleep/load time */
17 unsigned int rounds; /* calculation rounds with iterated sleep/load time */
18 unsigned int cpu; /* cpu for which the affinity is set */
19 char governor[15]; /* cpufreq governor */
20 enum sched_prio /* possible scheduler priorities */
21 {
02af3cb5
DB
22 SCHED_ERR = -1,
23 SCHED_HIGH,
24 SCHED_DEFAULT,
25 SCHED_LOW
7fe2f639
DB
26 } prio;
27
28 unsigned int verbose; /* verbose output */
29 FILE *output; /* logfile */
30 char *output_filename; /* logfile name, must be freed at the end
31 if output != NULL and output != stdout*/
32};
33
34enum sched_prio string_to_prio(const char *str);
35
36FILE *prepare_output(const char *dir);
37
38int prepare_config(const char *path, struct config *config);
39struct config *prepare_default_config();
40