[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [Qemu-devel] [PATCH v5 20/24] hw: acpi: Define ACPI table
From: |
Igor Mammedov |
Subject: |
Re: [Qemu-arm] [Qemu-devel] [PATCH v5 20/24] hw: acpi: Define ACPI tables builder interface |
Date: |
Tue, 27 Nov 2018 15:08:08 +0100 |
On Thu, 22 Nov 2018 00:57:21 +0100
Samuel Ortiz <address@hidden> wrote:
> On Fri, Nov 16, 2018 at 05:02:26PM +0100, Igor Mammedov wrote:
> > On Mon, 5 Nov 2018 02:40:43 +0100
> > Samuel Ortiz <address@hidden> wrote:
> >
> > > In order to decouple ACPI APIs from specific machine types, we are
> > > creating an ACPI builder interface that each ACPI platform can choose to
> > > implement.
> > > This way, a new machine type can re-use the high level ACPI APIs and
> > > define some custom table build methods, without having to duplicate most
> > > of the existing implementation only to add small variations to it.
> > I'm not sure about motivation behind so high APIs,
> > what obvious here is an extra level of indirection for not clear gain.
> >
> > Yep using table callbacks, one can attempt to generalize
> > acpi_setup() and help boards to decide which tables do not build
> > (MCFG comes to the mind). But I'm not convinced that acpi_setup()
> > could be cleanly generalized as a whole (probably some parts but
> > not everything)
> It's more about generalizing acpi_build(), and then having one
> acpi_setup for non hardware-reduced ACPI and a acpi_reduced_setup() for
> hardware-reduced.
>
> Right now there's no generalization at all but with this patch we could
> already use the same acpi_reduced_setup() implementation for both arm
> and i386/virt.
>
> > so it's minor benefit for extra headache of
> > figuring out what callback will be actually called when reading code.
> This is the same complexity that already exists for essentially all
> current interfaces.
in case of callback vs plain function call, I'd choose the later
if it does the job and resort to the former when I have to.
> > However if board needs a slightly different table, it will have to
> > duplicate an exiting one and then modify to suit its needs.
> >
> > to me it pretty much looks the same as calling build_foo()
> > we use now but with an extra indirection level and then
> > duplicating the later for usage in another board in slightly
> > different manner.
> I believe what you're trying to say is that this abstraction may be
> useful but you're arguing the granularity is not properly defined? Am I
> getting this right?
yep, something along those lines. So far it's not useful much if at all.
So I'll not introduce it for now and try to get by with plain functions
calls. Later we might add fine-grained callbacks on case by case basis
(like 'adevc->madt_cpu') where it's possible to generalize.
> Cheers,
> Samuel.
- [Qemu-arm] [PATCH v5 19/24] hw: acpi: Retrieve the PCI bus from AcpiPciHpState, (continued)
- [Qemu-arm] [PATCH v5 19/24] hw: acpi: Retrieve the PCI bus from AcpiPciHpState, Samuel Ortiz, 2018/11/04
- Re: [Qemu-arm] [PATCH v5 19/24] hw: acpi: Retrieve the PCI bus from AcpiPciHpState, Igor Mammedov, 2018/11/16
- Re: [Qemu-arm] [PATCH v5 19/24] hw: acpi: Retrieve the PCI bus from AcpiPciHpState, Boeuf, Sebastien, 2018/11/16
- Re: [Qemu-arm] [PATCH v5 19/24] hw: acpi: Retrieve the PCI bus from AcpiPciHpState, Igor Mammedov, 2018/11/19
- Re: [Qemu-arm] [PATCH v5 19/24] hw: acpi: Retrieve the PCI bus from AcpiPciHpState, Boeuf, Sebastien, 2018/11/19
- Re: [Qemu-arm] [PATCH v5 19/24] hw: acpi: Retrieve the PCI bus from AcpiPciHpState, Igor Mammedov, 2018/11/20
[Qemu-arm] [PATCH v5 21/24] hw: i386: Implement the ACPI builder interface for PC, Samuel Ortiz, 2018/11/04
[Qemu-arm] [PATCH v5 20/24] hw: acpi: Define ACPI tables builder interface, Samuel Ortiz, 2018/11/04
[Qemu-arm] [PATCH v5 24/24] hw: i386: Refactor PCI host getter, Samuel Ortiz, 2018/11/04
[Qemu-arm] [PATCH v5 23/24] hw: i386: Set ACPI configuration PCI host pointer, Samuel Ortiz, 2018/11/04
[Qemu-arm] [PATCH v5 22/24] hw: pci-host: piix: Return PCI host pointer instead of PCI bus, Samuel Ortiz, 2018/11/04
Re: [Qemu-arm] [Qemu-devel] [PATCH v5 00/24] ACPI reorganization for hardware-reduced API addition, Igor Mammedov, 2018/11/16