
Pull rpmsg updates from Bjorn Andersson: "This extends the Qualcomm GLINK implementation to support the additional features used for communicating with modem and DSP coprocessors in modern Qualcomm platforms. In addition to this there's support for placing virtio RPMSG buffers in non-System RAM" * tag 'rpmsg-v4.14' of git://github.com/andersson/remoteproc: (29 commits) rpmsg: glink: initialize ret to zero to ensure error status check is correct rpmsg: glink: fix null pointer dereference on a null intent dt-bindings: soc: qcom: Extend GLINK to cover SMEM remoteproc: qcom: adsp: Allow defining GLINK edge rpmsg: glink: Export symbols from common code rpmsg: glink: Release idr lock before returning on error rpmsg: glink: Handle remote rx done command rpmsg: glink: Request for intents when unavailable rpmsg: glink: Use the intents passed by remote rpmsg: glink: Receive and store the remote intent buffers rpmsg: glink: Add announce_create ops and preallocate intents rpmsg: glink: Add rx done command rpmsg: glink: Make RX FIFO peak accessor to take an offset rpmsg: glink: Use the local intents when receiving data rpmsg: glink: Add support for TX intents rpmsg: glink: Fix idr_lock from mutex to spinlock rpmsg: glink: Add support for transport version negotiation rpmsg: glink: Introduce glink smem based transport rpmsg: glink: Do a mbox_free_channel in remove rpmsg: glink: Return -EAGAIN when there is no FIFO space ...
44 lines
1.1 KiB
C
44 lines
1.1 KiB
C
#ifndef __RPROC_QCOM_COMMON_H__
|
|
#define __RPROC_QCOM_COMMON_H__
|
|
|
|
#include <linux/remoteproc.h>
|
|
#include "remoteproc_internal.h"
|
|
|
|
struct qcom_rproc_glink {
|
|
struct rproc_subdev subdev;
|
|
|
|
struct device *dev;
|
|
struct device_node *node;
|
|
struct qcom_glink *edge;
|
|
};
|
|
|
|
struct qcom_rproc_subdev {
|
|
struct rproc_subdev subdev;
|
|
|
|
struct device *dev;
|
|
struct device_node *node;
|
|
struct qcom_smd_edge *edge;
|
|
};
|
|
|
|
struct qcom_rproc_ssr {
|
|
struct rproc_subdev subdev;
|
|
|
|
const char *name;
|
|
};
|
|
|
|
struct resource_table *qcom_mdt_find_rsc_table(struct rproc *rproc,
|
|
const struct firmware *fw,
|
|
int *tablesz);
|
|
|
|
void qcom_add_glink_subdev(struct rproc *rproc, struct qcom_rproc_glink *glink);
|
|
void qcom_remove_glink_subdev(struct rproc *rproc, struct qcom_rproc_glink *glink);
|
|
|
|
void qcom_add_smd_subdev(struct rproc *rproc, struct qcom_rproc_subdev *smd);
|
|
void qcom_remove_smd_subdev(struct rproc *rproc, struct qcom_rproc_subdev *smd);
|
|
|
|
void qcom_add_ssr_subdev(struct rproc *rproc, struct qcom_rproc_ssr *ssr,
|
|
const char *ssr_name);
|
|
void qcom_remove_ssr_subdev(struct rproc *rproc, struct qcom_rproc_ssr *ssr);
|
|
|
|
#endif
|