root/include/linux/soc/qcom/smem_state.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. qcom_smem_state_get
  2. qcom_smem_state_put
  3. qcom_smem_state_update_bits
  4. qcom_smem_state_register
  5. qcom_smem_state_unregister

   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 #ifndef __QCOM_SMEM_STATE__
   3 #define __QCOM_SMEM_STATE__
   4 
   5 #include <linux/err.h>
   6 
   7 struct device_node;
   8 struct qcom_smem_state;
   9 
  10 struct qcom_smem_state_ops {
  11         int (*update_bits)(void *, u32, u32);
  12 };
  13 
  14 #ifdef CONFIG_QCOM_SMEM_STATE
  15 
  16 struct qcom_smem_state *qcom_smem_state_get(struct device *dev, const char *con_id, unsigned *bit);
  17 void qcom_smem_state_put(struct qcom_smem_state *);
  18 
  19 int qcom_smem_state_update_bits(struct qcom_smem_state *state, u32 mask, u32 value);
  20 
  21 struct qcom_smem_state *qcom_smem_state_register(struct device_node *of_node, const struct qcom_smem_state_ops *ops, void *data);
  22 void qcom_smem_state_unregister(struct qcom_smem_state *state);
  23 
  24 #else
  25 
  26 static inline struct qcom_smem_state *qcom_smem_state_get(struct device *dev,
  27         const char *con_id, unsigned *bit)
  28 {
  29         return ERR_PTR(-EINVAL);
  30 }
  31 
  32 static inline void qcom_smem_state_put(struct qcom_smem_state *state)
  33 {
  34 }
  35 
  36 static inline int qcom_smem_state_update_bits(struct qcom_smem_state *state,
  37         u32 mask, u32 value)
  38 {
  39         return -EINVAL;
  40 }
  41 
  42 static inline struct qcom_smem_state *qcom_smem_state_register(struct device_node *of_node,
  43         const struct qcom_smem_state_ops *ops, void *data)
  44 {
  45         return ERR_PTR(-EINVAL);
  46 }
  47 
  48 static inline void qcom_smem_state_unregister(struct qcom_smem_state *state)
  49 {
  50 }
  51 
  52 #endif
  53 
  54 #endif

/* [<][>][^][v][top][bottom][index][help] */