On Mon, May 25, 2020 at 04:44:57PM +0200, Guennadi Liakhovetski wrote: > rpmsg_create_ept() takes struct rpmsg_channel_info chinfo as its last > argument, not a u32 value. > > Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@xxxxxxxxxxxxxxx> > --- > Documentation/rpmsg.txt | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/Documentation/rpmsg.txt b/Documentation/rpmsg.txt > index 24b7a9e..4f9bc4f 100644 > --- a/Documentation/rpmsg.txt > +++ b/Documentation/rpmsg.txt > @@ -194,7 +194,7 @@ Returns 0 on success and an appropriate error value on failure. > > struct rpmsg_endpoint *rpmsg_create_ept(struct rpmsg_channel *rpdev, > void (*cb)(struct rpmsg_channel *, void *, int, void *, u32), > - void *priv, u32 addr); > + void *priv, struct rpmsg_channel_info chinfo); The second argument, i.e *cb is also wrong. The first argument to the function pointer is a struct rpmsg_device rather than a rpmsg_channel. Please fix that while at it by simply using "rpmsg_rx_cb_t cb", the same way it is in linux/rpmsg.h. Thanks, Mathieu > > every rpmsg address in the system is bound to an rx callback (so when > inbound messages arrive, they are dispatched by the rpmsg bus using the > -- > 1.9.3 >