Good day, On Fri, Jun 04, 2021 at 11:14:04AM +0200, Arnaud Pouliquen wrote: > Implement the RPMSG_RELEASE_DEV_IOCTL to allow the user application to > release a rpmsg device created either by the remote processor or with > the RPMSG_CREATE_DEV_IOCTL call. > Depending on the back-end implementation, the associated rpmsg driver is > removed and a NS destroy rpmsg can be sent to the remote processor. > > Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@xxxxxxxxxxx> > --- > drivers/rpmsg/rpmsg_ctrl.c | 7 +++++++ > include/uapi/linux/rpmsg.h | 5 +++++ > 2 files changed, 12 insertions(+) > > diff --git a/drivers/rpmsg/rpmsg_ctrl.c b/drivers/rpmsg/rpmsg_ctrl.c > index 4aa962df3661..cb19e32d05e1 100644 > --- a/drivers/rpmsg/rpmsg_ctrl.c > +++ b/drivers/rpmsg/rpmsg_ctrl.c > @@ -98,6 +98,13 @@ static long rpmsg_ctrldev_ioctl(struct file *fp, unsigned int cmd, > } > break; > > + case RPMSG_RELEASE_DEV_IOCTL: > + ret = rpmsg_release_channel(ctrldev->rpdev, &chinfo); > + if (ret) > + dev_err(&ctrldev->dev, "failed to release %s channel (%d)\n", > + chinfo.name, ret); > + break; > + Please move the content of this patch in 1/4. > default: > ret = -EINVAL; > } > diff --git a/include/uapi/linux/rpmsg.h b/include/uapi/linux/rpmsg.h > index f9d5a74e7801..38639ba37438 100644 > --- a/include/uapi/linux/rpmsg.h > +++ b/include/uapi/linux/rpmsg.h > @@ -38,4 +38,9 @@ struct rpmsg_endpoint_info { > */ > #define RPMSG_CREATE_DEV_IOCTL _IOW(0xb5, 0x3, struct rpmsg_endpoint_info) > > +/** > + * Release a local rpmsg device. > + */ > +#define RPMSG_RELEASE_DEV_IOCTL _IOW(0xb5, 0x4, struct rpmsg_endpoint_info) > + > #endif > -- > 2.17.1 >