From: Igor Mammedov <imammedo@redhat.com>
To: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: <mst@redhat.com>, Markus Armbruster <armbru@redhat.com>,
<qemu-devel@nongnu.org>, <ankita@nvidia.com>,
<marcel.apfelbaum@gmail.com>, <philmd@linaro.org>,
Richard Henderson <richard.henderson@linaro.org>,
<linuxarm@huawei.com>, Dave Jiang <dave.jiang@intel.com>,
Huang Ying <ying.huang@intel.com>,
Paolo Bonzini <pbonzini@redhat.com>, <eduardo@habkost.net>,
<linux-cxl@vger.kernel.org>, Michael Roth <michael.roth@amd.com>,
Ani Sinha <anisinha@redhat.com>
Subject: Re: [PATCH v4 08/13] hw/i386/acpi: Use TYPE_PXB_BUS property acpi_uid for DSDT
Date: Thu, 11 Jul 2024 14:34:35 +0200 [thread overview]
Message-ID: <20240711143435.1e5f33b0@imammedo.users.ipa.redhat.com> (raw)
In-Reply-To: <20240702131428.664859-9-Jonathan.Cameron@huawei.com>
On Tue, 2 Jul 2024 14:14:13 +0100
Jonathan Cameron <Jonathan.Cameron@huawei.com> wrote:
> Rather than relying on PCI internals, use the new acpi_property
> to obtain the ACPI _UID values. These are still the same
> as the PCI Bus numbers so no functional change.
>
> Suggested-by: Igor Mammedov <imammedo@redhat.com>
> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> ---
> v4: New patch.
> ---
> hw/i386/acpi-build.c | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
> index ee92783836..cc32f1e6d4 100644
> --- a/hw/i386/acpi-build.c
> +++ b/hw/i386/acpi-build.c
> @@ -1550,6 +1550,7 @@ build_dsdt(GArray *table_data, BIOSLinker *linker,
> QLIST_FOREACH(bus, &bus->child, sibling) {
> uint8_t bus_num = pci_bus_num(bus);
> uint8_t numa_node = pci_bus_numa_node(bus);
> + uint8_t uid;
>
> /* look only for expander root buses */
> if (!pci_bus_is_root(bus)) {
> @@ -1560,14 +1561,16 @@ build_dsdt(GArray *table_data, BIOSLinker *linker,
> root_bus_limit = bus_num - 1;
> }
>
> + uid = object_property_get_uint(OBJECT(bus), "acpi_uid",
> + &error_fatal);
theoretically acpi_uid is 32bit, so if we are expecting
only 256 buses here, then having and assert to catch truncation
would be good.
alternatively if this UID can't ever be more than 8bit, I'd use
visit_type_uint8() in previous patch to make sure too large value
won't be silently ignored.
> scope = aml_scope("\\_SB");
>
> if (pci_bus_is_cxl(bus)) {
> - dev = aml_device("CL%.02X", bus_num);
> + dev = aml_device("CL%.02X", uid);
> } else {
> - dev = aml_device("PC%.02X", bus_num);
> + dev = aml_device("PC%.02X", uid);
> }
> - aml_append(dev, aml_name_decl("_UID", aml_int(bus_num)));
> + aml_append(dev, aml_name_decl("_UID", aml_int(uid)));
> aml_append(dev, aml_name_decl("_BBN", aml_int(bus_num)));
> if (pci_bus_is_cxl(bus)) {
> struct Aml *aml_pkg = aml_package(2);
next prev parent reply other threads:[~2024-07-11 12:35 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-02 13:14 [PATCH v4 00/13] acpi: NUMA nodes for CXL HB as GP + complex NUMA test Jonathan Cameron via
2024-07-02 13:14 ` [PATCH v4 01/13] hw/acpi: Fix ordering of BDF in Generic Initiator PCI Device Handle Jonathan Cameron via
2024-07-02 13:14 ` [PATCH v4 02/13] hw/acpi/GI: Fix trivial parameter alignment issue Jonathan Cameron via
2024-07-02 13:14 ` [PATCH v4 03/13] hw/acpi: Move AML building code for Generic Initiators to aml_build.c Jonathan Cameron via
2024-07-02 13:14 ` [PATCH v4 04/13] hw/acpi: Rename build_all_acpi_generic_initiators() to build_acpi_generic_initiator() Jonathan Cameron via
2024-07-02 13:14 ` [PATCH v4 05/13] hw/pci: Add a busnr property to pci_props and use for acpi/gi Jonathan Cameron via
2024-07-11 11:53 ` Igor Mammedov
2024-07-11 12:23 ` Igor Mammedov
2024-07-11 15:43 ` Jonathan Cameron via
2024-07-02 13:14 ` [PATCH v4 06/13] acpi/pci: Move Generic Initiator object handling into acpi/pci.* Jonathan Cameron via
2024-07-11 12:12 ` Igor Mammedov
2024-07-11 15:38 ` Jonathan Cameron via
2024-07-11 15:40 ` Michael S. Tsirkin
2024-07-02 13:14 ` [PATCH v4 07/13] hw/pci-bridge: Add acpi_uid property to TYPE_PXB_BUS Jonathan Cameron via
2024-07-11 12:27 ` Igor Mammedov
2024-07-02 13:14 ` [PATCH v4 08/13] hw/i386/acpi: Use TYPE_PXB_BUS property acpi_uid for DSDT Jonathan Cameron via
2024-07-11 12:34 ` Igor Mammedov [this message]
2024-07-02 13:14 ` [PATCH v4 09/13] hw/pci-host/gpex-acpi: Use acpi_uid property Jonathan Cameron via
2024-07-02 13:14 ` [PATCH v4 10/13] hw/acpi: Generic Port Affinity Structure support Jonathan Cameron via
2024-07-02 13:14 ` [PATCH v4 11/13] bios-tables-test: Allow for new acpihmat-generic-x test data Jonathan Cameron via
2024-07-02 13:14 ` [PATCH v4 12/13] bios-tables-test: Add complex SRAT / HMAT test for GI GP Jonathan Cameron via
2024-07-02 13:14 ` [PATCH v4 13/13] bios-tables-test: Add data for complex numa test (GI, GP etc) Jonathan Cameron via
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240711143435.1e5f33b0@imammedo.users.ipa.redhat.com \
--to=imammedo@redhat.com \
--cc=Jonathan.Cameron@huawei.com \
--cc=anisinha@redhat.com \
--cc=ankita@nvidia.com \
--cc=armbru@redhat.com \
--cc=dave.jiang@intel.com \
--cc=eduardo@habkost.net \
--cc=linux-cxl@vger.kernel.org \
--cc=linuxarm@huawei.com \
--cc=marcel.apfelbaum@gmail.com \
--cc=michael.roth@amd.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=ying.huang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).