Hi Manish,

On Thu, 13 Aug 2026 18:36:23 +0530, Manish Honap wrote:
> -void build_cxl_osc_method(Aml *dev)
> +void acpi_dsdt_add_cxl_host_bridge_methods(Aml *dev, bool preserve_config)
>  {
>      aml_append(dev, aml_name_decl("SUPP", aml_int(0)));
>      aml_append(dev, aml_name_decl("CTRL", aml_int(0)));
>      aml_append(dev, aml_name_decl("SUPC", aml_int(0)));
>      aml_append(dev, aml_name_decl("CTRC", aml_int(0)));
>      aml_append(dev, __build_cxl_osc_method());
> +    aml_append(dev, build_pci_host_bridge_dsm_method(preserve_config));

This is the bios-tables refresh the cover lists as pending:
/x86_64/acpi/q35/cxl and /x86_64/acpi/q35/acpihmat-genericx both hit
the all_tables_match assertion with a DSDT mismatch, and the asl diff
is exactly this _DSM under the pxb-cxl device (12638 -> 12684 bytes on
the acpihmat-generic-x variant). The g_assert aborts the test binary,
so a full run only reports the first case.

With preserve_config=false the method advertises no functions and
returns a zero buffer for every function, so the x86 half of the
change is dead AML plus golden-table churn. Append the _DSM only when
preserve_config is set: the x86 tables stay untouched and the pending
refresh drops out. Otherwise the usual three-patch bios-tables update
needs to ride in this series.

aarch64/virt has no CXL golden files, so nothing catches the arm side
either way.

Many thanks,
Junjie

Reply via email to