Commit 43315f31 authored by Bjorn Andersson's avatar Bjorn Andersson Committed by David S. Miller
Browse files

soc: qcom: smd: Introduce compile stubs



Introduce compile stubs for the SMD API, allowing consumers to be
compile tested.

Acked-by: default avatarAndy Gross <andy.gross@linaro.org>
Signed-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 218d48e7
Loading
Loading
Loading
Loading
+27 −1
Original line number Diff line number Diff line
@@ -45,13 +45,39 @@ struct qcom_smd_driver {
	int (*callback)(struct qcom_smd_device *, const void *, size_t);
};

#if IS_ENABLED(CONFIG_QCOM_SMD)

int qcom_smd_driver_register(struct qcom_smd_driver *drv);
void qcom_smd_driver_unregister(struct qcom_smd_driver *drv);

int qcom_smd_send(struct qcom_smd_channel *channel, const void *data, int len);

#else

static inline int qcom_smd_driver_register(struct qcom_smd_driver *drv)
{
	return -ENXIO;
}

static inline void qcom_smd_driver_unregister(struct qcom_smd_driver *drv)
{
	/* This shouldn't be possible */
	WARN_ON(1);
}

static inline int qcom_smd_send(struct qcom_smd_channel *channel,
				const void *data, int len)
{
	/* This shouldn't be possible */
	WARN_ON(1);
	return -ENXIO;
}

#endif

#define module_qcom_smd_driver(__smd_driver) \
	module_driver(__smd_driver, qcom_smd_driver_register, \
		      qcom_smd_driver_unregister)

int qcom_smd_send(struct qcom_smd_channel *channel, const void *data, int len);

#endif