On Wed, Aug 18, 2021 at 1:15 PM Srivatsa Vaddagiri
<> wrote:
>
> * Jason Wang <> [2021-08-18 10:54:37]:
>
> > >I think the option we discussed earlier of a new feature bit seems less
> > >intrusive than incrementing MMIO version?
> > >
> > >https://lists.oasis-open.org/archives/virtio-dev/202107/msg00168.html
> >
> >
> > Using features will result some interesting question:
> >
> > 1) the drivers usually reset the device before feature negotiation
> > 2) it means the driver must mandate this behavior even before feature
> > negotiation is done
> >
> > We don't have those issue if we increase the version (but it looks more
> > intrusive).
>
> Hmm ..are you suggesting that we read the Version register as part of reset code
> and do the wait part only for v3 device?
We only need to read the version once (see virtio_mmio_probe()). So it
could be something like
if (vm_dev->version == 0x3) {
while (readl(vm_dev->base + VIRTIO_MMIO_STATUS))
msleep(1);
}
> Otherwise we have the same issue as
> feature bit with version change also.
>
> Can't the driver do the same with feature register also? Do poll if
> WAIT_FOR_RESET_COMPLETION feature bit is set, which can happen before feature
> negotiation is complete.
The possible issue is that the feature negotiation is not done at that time.
Thanks
>
> - vatsa
>
> --
> Qualcomm Innovation Center, Inc. is submitting the attached "feedback" as a
> non-member to the virtio-dev mailing list for consideration and inclusion.
>