cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

rpmh.h (1240B)


      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)
     14int rpmh_write(const struct device *dev, enum rpmh_state state,
     15	       const struct tcs_cmd *cmd, u32 n);
     16
     17int rpmh_write_async(const struct device *dev, enum rpmh_state state,
     18		     const struct tcs_cmd *cmd, u32 n);
     19
     20int rpmh_write_batch(const struct device *dev, enum rpmh_state state,
     21		     const struct tcs_cmd *cmd, u32 *n);
     22
     23void rpmh_invalidate(const struct device *dev);
     24
     25#else
     26
     27static inline int rpmh_write(const struct device *dev, enum rpmh_state state,
     28			     const struct tcs_cmd *cmd, u32 n)
     29{ return -ENODEV; }
     30
     31static 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
     36static 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
     41static inline void rpmh_invalidate(const struct device *dev)
     42{
     43}
     44
     45#endif /* CONFIG_QCOM_RPMH */
     46
     47#endif /* __SOC_QCOM_RPMH_H__ */