Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/include/soc/qcom/rpmh.h
26285 views
1
/* SPDX-License-Identifier: GPL-2.0 */
2
/*
3
* Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
4
*/
5
6
#ifndef __SOC_QCOM_RPMH_H__
7
#define __SOC_QCOM_RPMH_H__
8
9
#include <soc/qcom/tcs.h>
10
#include <linux/platform_device.h>
11
12
13
#if IS_ENABLED(CONFIG_QCOM_RPMH)
14
int rpmh_write(const struct device *dev, enum rpmh_state state,
15
const struct tcs_cmd *cmd, u32 n);
16
17
int rpmh_write_async(const struct device *dev, enum rpmh_state state,
18
const struct tcs_cmd *cmd, u32 n);
19
20
int rpmh_write_batch(const struct device *dev, enum rpmh_state state,
21
const struct tcs_cmd *cmd, u32 *n);
22
23
void rpmh_invalidate(const struct device *dev);
24
25
#else
26
27
static inline int rpmh_write(const struct device *dev, enum rpmh_state state,
28
const struct tcs_cmd *cmd, u32 n)
29
{ return -ENODEV; }
30
31
static inline int rpmh_write_async(const struct device *dev,
32
enum rpmh_state state,
33
const struct tcs_cmd *cmd, u32 n)
34
{ return -ENODEV; }
35
36
static inline int rpmh_write_batch(const struct device *dev,
37
enum rpmh_state state,
38
const struct tcs_cmd *cmd, u32 *n)
39
{ return -ENODEV; }
40
41
static inline void rpmh_invalidate(const struct device *dev)
42
{
43
}
44
45
#endif /* CONFIG_QCOM_RPMH */
46
47
#endif /* __SOC_QCOM_RPMH_H__ */
48
49