1419b0af8Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
2419b0af8Sopenharmony_ci/*
3419b0af8Sopenharmony_ci * include/linux/sched/qos_auth.h
4419b0af8Sopenharmony_ci *
5419b0af8Sopenharmony_ci * Copyright (c) 2022 Huawei Device Co., Ltd.
6419b0af8Sopenharmony_ci */
7419b0af8Sopenharmony_ci
8419b0af8Sopenharmony_ci#ifndef _QOS_AUTH_H
9419b0af8Sopenharmony_ci#define _QOS_AUTH_H
10419b0af8Sopenharmony_ci
11419b0af8Sopenharmony_ci#include <linux/sched.h>
12419b0af8Sopenharmony_ci#include <linux/sched/auth_ctrl.h>
13419b0af8Sopenharmony_ci
14419b0af8Sopenharmony_ci/*
15419b0af8Sopenharmony_ci * QOS authority flags for SYSTEM or ROOT
16419b0af8Sopenharmony_ci *
17419b0af8Sopenharmony_ci * keep sync with qos_ctrl_cmdid
18419b0af8Sopenharmony_ci * when add a new cmd to qos_ctrl_cmdid
19419b0af8Sopenharmony_ci * keep new_flag = (old_flag << 1) + 1
20419b0af8Sopenharmony_ci * up to now, next flag value is 0x0007
21419b0af8Sopenharmony_ci */
22419b0af8Sopenharmony_ci#define AF_QOS_ALL		0x0003
23419b0af8Sopenharmony_ci
24419b0af8Sopenharmony_ci/*
25419b0af8Sopenharmony_ci * delegated authority for normal uid
26419b0af8Sopenharmony_ci * trim access range for QOS
27419b0af8Sopenharmony_ci */
28419b0af8Sopenharmony_ci#define AF_QOS_DELEGATED	0x0001
29419b0af8Sopenharmony_ci
30419b0af8Sopenharmony_cibool check_authorized(unsigned int func_id, unsigned int type);
31419b0af8Sopenharmony_ci
32419b0af8Sopenharmony_ci#endif /* _QOS_AUTH_H */
33419b0af8Sopenharmony_ci
34