blob: bdc0293fb6cb702a2107ce98ba74984a901f4582 [file] [log] [blame]
Daniel Lezcano88763a52018-06-26 12:53:29 +02001/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * Copyright (C) 2018 Linaro Ltd
4 *
5 * Author: Daniel Lezcano <daniel.lezcano@linaro.org>
6 *
7 */
8#ifndef __IDLE_INJECT_H__
9#define __IDLE_INJECT_H__
10
11/* private idle injection device structure */
12struct idle_inject_device;
13
14struct idle_inject_device *idle_inject_register(struct cpumask *cpumask);
15
16void idle_inject_unregister(struct idle_inject_device *ii_dev);
17
18int idle_inject_start(struct idle_inject_device *ii_dev);
19
20void idle_inject_stop(struct idle_inject_device *ii_dev);
21
22void idle_inject_set_duration(struct idle_inject_device *ii_dev,
23 unsigned int run_duration_ms,
24 unsigned int idle_duration_ms);
25
26void idle_inject_get_duration(struct idle_inject_device *ii_dev,
27 unsigned int *run_duration_ms,
28 unsigned int *idle_duration_ms);
29#endif /* __IDLE_INJECT_H__ */