184369fbeSSuman Anna /* SPDX-License-Identifier: GPL-2.0 */ 284369fbeSSuman Anna 3caf989c3SBjorn Andersson #ifndef _LINUX_RPMSG_QCOM_GLINK_H 4caf989c3SBjorn Andersson #define _LINUX_RPMSG_QCOM_GLINK_H 5caf989c3SBjorn Andersson 6caf989c3SBjorn Andersson #include <linux/device.h> 7caf989c3SBjorn Andersson 8caf989c3SBjorn Andersson struct qcom_glink; 9caf989c3SBjorn Andersson 10*8527efc5SBjorn Andersson #if IS_ENABLED(CONFIG_RPMSG_QCOM_GLINK) 11*8527efc5SBjorn Andersson void qcom_glink_ssr_notify(const char *ssr_name); 12*8527efc5SBjorn Andersson #else 13*8527efc5SBjorn Andersson static inline void qcom_glink_ssr_notify(const char *ssr_name) {} 14*8527efc5SBjorn Andersson #endif 15*8527efc5SBjorn Andersson 16caf989c3SBjorn Andersson #if IS_ENABLED(CONFIG_RPMSG_QCOM_GLINK_SMEM) 17caf989c3SBjorn Andersson 18caf989c3SBjorn Andersson struct qcom_glink *qcom_glink_smem_register(struct device *parent, 19caf989c3SBjorn Andersson struct device_node *node); 20caf989c3SBjorn Andersson void qcom_glink_smem_unregister(struct qcom_glink *glink); 21caf989c3SBjorn Andersson 22caf989c3SBjorn Andersson #else 23caf989c3SBjorn Andersson 24caf989c3SBjorn Andersson static inline struct qcom_glink * 25caf989c3SBjorn Andersson qcom_glink_smem_register(struct device *parent, 26caf989c3SBjorn Andersson struct device_node *node) 27caf989c3SBjorn Andersson { 28caf989c3SBjorn Andersson return NULL; 29caf989c3SBjorn Andersson } 30caf989c3SBjorn Andersson 31caf989c3SBjorn Andersson static inline void qcom_glink_smem_unregister(struct qcom_glink *glink) {} 325d1f2e3cSBjorn Andersson #endif 335d1f2e3cSBjorn Andersson 34caf989c3SBjorn Andersson #endif 35