[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: |
Samuel Ortiz |
Subject: |
Re: [Qemu-arm] [Qemu-devel] [PATCH v5 20/24] hw: acpi: Define ACPI tables builder interface |
Date: |
Thu, 22 Nov 2018 00:57:21 +0100 |
User-agent: |
Mutt/1.10.1 (2018-07-13) |
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.
> 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?
Cheers,
Samuel.
- Re: [Qemu-arm] [Qemu-devel] [PATCH v5 18/24] hw: i386: Export the MADT build method, (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