On Tue 17 Mar 07:24 PDT 2020, Arnaud POULIQUEN wrote: > On 3/11/20 9:01 PM, Bjorn Andersson wrote: > > On Tue 10 Mar 06:19 PDT 2020, Arnaud POULIQUEN wrote: > >>> On Mon, Mar 09, 2020 at 03:22:24PM +0100, Arnaud POULIQUEN wrote: > >>>> On 3/6/20 8:24 AM, Nikita Shubin wrote: [..] > >>>>> diff --git a/drivers/remoteproc/remoteproc_virtio.c > >>>>> b/drivers/remoteproc/remoteproc_virtio.c > >>>>> index 8c07cb2ca8ba..31a62a0b470e 100644 > >>>>> --- a/drivers/remoteproc/remoteproc_virtio.c > >>>>> +++ b/drivers/remoteproc/remoteproc_virtio.c > >>>>> @@ -334,6 +334,13 @@ int rproc_add_virtio_dev(struct rproc_vdev > >>> *rvdev, int id) > >>>>> struct rproc_mem_entry *mem; > >>>>> int ret; > >>>>> > >>>>> + if (rproc->ops->kick == NULL) { > >>>>> + ret = -EINVAL; > >>>>> + dev_err(dev, ".kick method not defined for %s", > >>>>> + rproc->name); > >>>>> + goto out; > >>>>> + } > >>>>> + > >>>> Should the kick ops be mandatory for all the platforms? How about making > >>> it optional instead? > >>> > >>> Hi, Arnaud. > >>> > >>> It is not mandatory, currently it must be provided if specified vdev entry is in > >>> resourse table. Otherwise it looks like there is no point in creating vdev. > >> > >> Yes, my question was about having it optional for vdev also. A platform could implement the vdev > >> without kick mechanism but by polling depending due to hardware capability... > >> This could be an alternative avoiding to implement a dummy function in platform driver. > >> > > > > Is this a real thing or a theoretical suggestion? > Only a theoretical suggestion, trigged by the IMX platform patchset which implement a "temporary" dummy kick. > and based on OpenAMP lib implementation which does not request a doorbell. > Anyway no issue to keep it mandatory here. > Thanks for confirming. I've applied the patch, with Mathieu's ack, and we can loosen up this requirement when we need it in the future. Regards, Bjorn