Question about madt_find_processor_uid() and madt_processor_handler()

Zeng, Star star.zeng at intel.com
Tue Jul 13 01:02:47 UTC 2021


Actually, it is we have platforms declare the device and method as below indeed for many generations, we do not see any issue.

  Device(XXXX) {
    Name(_HID, "ACPI0007")
    Method (_UID) {
      Return (\_SB.XXXX(XXXX, XXXX))
}
…

But fwts-live-21.05.00.img.xz complains the failure as below. We do not understand how the tool handles the Method (_UID) case and do the matching since it generates the ID dynamically but statically.

PASSED: Test 5, MADT revision 4 is defined.
PASSED: Test 5, MADT subtable type 0 (Processor Local APIC) is defined.
PASSED: Test 5, Subtable 1 (offset 0x2c) of type 0 (Processor Local APIC) is the
correct length: 8
FAILED [MEDIUM] MADTLAPICUidMismatch: Test 5, LAPIC has no matching processor
UID 0
PASSED: Test 5, MADT Processor Local APIC flags field, bits 1..31 are reserved
and properly set to zero.
PASSED: Test 5, MADT subtable type 0 (Processor Local APIC) is defined.
PASSED: Test 5, Subtable 2 (offset 0x34) of type 0 (Processor Local APIC) is the
correct length: 8
FAILED [MEDIUM] MADTLAPICUidMismatch: Test 5, LAPIC has no matching processor
UID 1
PASSED: Test 5, MADT Processor Local APIC flags field, bits 1..31 are reserved
and properly set to zero.
…

Thanks,
Star
From: Alex Hung <alex.hung at canonical.com>
Sent: 2021年7月13日 0:59
To: Zeng, Star <star.zeng at intel.com>
Cc: fwts-devel at lists.ubuntu.com
Subject: Re: Question about madt_find_processor_uid() and madt_processor_handler()



On Mon, Jul 12, 2021 at 5:30 AM Zeng, Star <star.zeng at intel.com<mailto:star.zeng at intel.com>> wrote:
Hi,

About madt_find_processor_uid() and madt_processor_handler(), my understanding is that they will find and check uid for processors based on Processor object or Device Object (ACPI0007), right?

For the Device Object (ACPI0007) case, could the codes handle the _UID implemented as Method?

  Device(XXXX) {
    Name(_HID, "ACPI0007")
    Method (_UID) {
      Return (\_SB.XXXX(XXXX, XXXX))
}
…


Table 6-189 Device Identification Objects
_UID Object that specifies a device’s unique persistent ID, or a control method that generates it.


Evalucating _UID is handled by acpica, and I believe acpica evaluates name and method objects equally.



Thanks,
Star
--
fwts-devel mailing list
fwts-devel at lists.ubuntu.com<mailto:fwts-devel at lists.ubuntu.com>
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/fwts-devel


--
Cheers,
Alex Hung
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/fwts-devel/attachments/20210713/5b6071b4/attachment-0001.html>


More information about the fwts-devel mailing list