Squashed backup commit (no shallow-clone history issues) of xiaomi-mt6833-dev/kernel_xiaomi_mt6833 (lineage-23.2 branch, upstream commit 9eece662e) plus all fixes applied to get everpal_defconfig building clean against a modern (GCC 15.2.0) toolchain -- see the previous commit message on the lineage-23.2 branch (also in this repo history is not available here since this is a squashed snapshot; full incremental history lives in the local DL380 checkout and the upstream GitHub remote). Upstream: https://github.com/xiaomi-mt6833-dev/kernel_xiaomi_mt6833 (lineage-23.2)
55 lines
1.3 KiB
C
55 lines
1.3 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef __QCOM_SMEM_STATE__
|
|
#define __QCOM_SMEM_STATE__
|
|
|
|
#include <linux/err.h>
|
|
|
|
struct device_node;
|
|
struct qcom_smem_state;
|
|
|
|
struct qcom_smem_state_ops {
|
|
int (*update_bits)(void *, u32, u32);
|
|
};
|
|
|
|
#ifdef CONFIG_QCOM_SMEM_STATE
|
|
|
|
struct qcom_smem_state *qcom_smem_state_get(struct device *dev, const char *con_id, unsigned *bit);
|
|
void qcom_smem_state_put(struct qcom_smem_state *);
|
|
|
|
int qcom_smem_state_update_bits(struct qcom_smem_state *state, u32 mask, u32 value);
|
|
|
|
struct qcom_smem_state *qcom_smem_state_register(struct device_node *of_node, const struct qcom_smem_state_ops *ops, void *data);
|
|
void qcom_smem_state_unregister(struct qcom_smem_state *state);
|
|
|
|
#else
|
|
|
|
static inline struct qcom_smem_state *qcom_smem_state_get(struct device *dev,
|
|
const char *con_id, unsigned *bit)
|
|
{
|
|
return ERR_PTR(-EINVAL);
|
|
}
|
|
|
|
static inline void qcom_smem_state_put(struct qcom_smem_state *state)
|
|
{
|
|
}
|
|
|
|
static inline int qcom_smem_state_update_bits(struct qcom_smem_state *state,
|
|
u32 mask, u32 value)
|
|
{
|
|
return -EINVAL;
|
|
}
|
|
|
|
static inline struct qcom_smem_state *qcom_smem_state_register(struct device_node *of_node,
|
|
const struct qcom_smem_state_ops *ops, void *data)
|
|
{
|
|
return ERR_PTR(-EINVAL);
|
|
}
|
|
|
|
static inline void qcom_smem_state_unregister(struct qcom_smem_state *state)
|
|
{
|
|
}
|
|
|
|
#endif
|
|
|
|
#endif
|