1419b0af8Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 2419b0af8Sopenharmony_ci/* 3419b0af8Sopenharmony_ci * drivers/auth_ctl/qos_ctrl.h 4419b0af8Sopenharmony_ci * 5419b0af8Sopenharmony_ci * Copyright (c) 2022 Huawei Device Co., Ltd. 6419b0af8Sopenharmony_ci * 7419b0af8Sopenharmony_ci */ 8419b0af8Sopenharmony_ci 9419b0af8Sopenharmony_ci#ifndef __QOS_CTRL_H 10419b0af8Sopenharmony_ci#define __QOS_CTRL_H 11419b0af8Sopenharmony_ci 12419b0af8Sopenharmony_ci#include "../../kernel/sched/sched.h" 13419b0af8Sopenharmony_ci 14419b0af8Sopenharmony_ci#include <linux/sched/qos_ctrl.h> 15419b0af8Sopenharmony_ci 16419b0af8Sopenharmony_ci/* min qos level used in kernel space, begin index for LOOP */ 17419b0af8Sopenharmony_ci#define QOS_POLICY_MIN_LEVEL 0 18419b0af8Sopenharmony_ci 19419b0af8Sopenharmony_cistruct qos_policy_item { 20419b0af8Sopenharmony_ci int nice; 21419b0af8Sopenharmony_ci int latency_nice; 22419b0af8Sopenharmony_ci int uclamp_min; 23419b0af8Sopenharmony_ci int uclamp_max; 24419b0af8Sopenharmony_ci int rt_sched_priority; 25419b0af8Sopenharmony_ci int policy; 26419b0af8Sopenharmony_ci}; 27419b0af8Sopenharmony_ci 28419b0af8Sopenharmony_cistruct qos_policy_map { 29419b0af8Sopenharmony_ci rwlock_t lock; 30419b0af8Sopenharmony_ci bool initialized; 31419b0af8Sopenharmony_ci unsigned int policy_flag; 32419b0af8Sopenharmony_ci struct qos_policy_item levels[NR_QOS]; 33419b0af8Sopenharmony_ci}; 34419b0af8Sopenharmony_ci 35419b0af8Sopenharmony_ciint __init init_qos_ctrl(void); 36419b0af8Sopenharmony_ci 37419b0af8Sopenharmony_ci#endif /* __OQS_CTRL_H */ 38419b0af8Sopenharmony_ci 39