On Thu, Sep 24, 2020 at 12:02:55PM +0200, Joerg Roedel wrote:
> On Thu, Sep 24, 2020 at 05:38:13AM -0400, Michael S. Tsirkin wrote:
> > On Thu, Sep 24, 2020 at 11:21:29AM +0200, Joerg Roedel wrote:
> > > On Thu, Sep 24, 2020 at 05:00:35AM -0400, Michael S. Tsirkin wrote:
> > > > OK so this looks good. Can you pls repost with the minor tweak
> > > > suggested and all acks included, and I will queue this?
> > >
> > > My NACK still stands, as long as a few questions are open:
> > >
> > > 1) The format used here will be the same as in the ACPI table? I
> > > think the answer to this questions must be Yes, so this leads
> > > to the real question:
> >
> > I am not sure it's a must.
>
> It is, having only one parser for the ACPI and MMIO descriptions was one
> of the selling points for MMIO in past discussions and I think it makes
> sense to keep them in sync.
It's not possible to use exactly the same code for parsing. The access
methods are different (need to deal with port-IO for built-in description
on PCI, for example) and more importantly, the structure is different as
well. The ACPI table needs nodes for virtio-iommu while the built-in
description is contained in the virtio-iommu itself. So the endpoint nodes
point to virtio-iommu node on ACPI, while they don't need a pointer on the
built-in desc. I kept as much as possible common in structures and
implementation, but in the end we still need about 200 unique lines on
each side.
Thanks,
Jean
>
> > We can always tweak the parser if there are slight differences
> > between ACPI and virtio formats.
>
> There is no guarantee that there only need to be "tweaks" until the
> ACPI table format is stablized.
>
> Regards,
>
> Joerg
>