xref: /linux-6.15/include/linux/rpmsg/qcom_smd.h (revision aff985fd)
1 
2 #ifndef _LINUX_RPMSG_QCOM_SMD_H
3 #define _LINUX_RPMSG_QCOM_SMD_H
4 
5 #include <linux/device.h>
6 
7 struct qcom_smd_edge;
8 
9 #if IS_ENABLED(CONFIG_RPMSG_QCOM_SMD) || IS_ENABLED(CONFIG_QCOM_SMD)
10 
11 struct qcom_smd_edge *qcom_smd_register_edge(struct device *parent,
12 					     struct device_node *node);
13 int qcom_smd_unregister_edge(struct qcom_smd_edge *edge);
14 
15 #else
16 
17 static inline struct qcom_smd_edge *
18 qcom_smd_register_edge(struct device *parent,
19 		       struct device_node *node)
20 {
21 	return ERR_PTR(-ENXIO);
22 }
23 
24 static inline int qcom_smd_unregister_edge(struct qcom_smd_edge *edge)
25 {
26 	/* This shouldn't be possible */
27 	WARN_ON(1);
28 	return -ENXIO;
29 }
30 
31 #endif
32 
33 #endif
34