https://bugzilla.kernel.org/show_bug.cgi?id=221957

            Bug ID: 221957
           Summary: ASUS ROG Strix B450-F GAMING: malformed _PLD on all
                    USB ports, AE_AML_UNINITIALIZED_ELEMENT (UPGP missing
                    XDID 0x43D5 branch)
           Product: ACPI
           Version: 2.5
          Hardware: AMD
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P3
         Component: Config-Tables
          Assignee: [email protected]
          Reporter: [email protected]
        Regression: No

Created attachment 310774
  --> https://bugzilla.kernel.org/attachment.cgi?id=310774&action=edit
Full writeup: root cause, ASL fix, and verification steps (ASUS B450-F
UPGP/_PLD)

Board: ASUS ROG Strix B450-F GAMING
  BIOS: 5901 (2025-10-03), AMI Aptio
  Kernel: 6.19.14 (also reproduces on other recent 6.x kernels, any distro)

  Every boot produces ~59 errors of the form:

  ACPI Error: Aborting method \_SB.PCI0.GPP2.PTXH.RHUB.POTx._PLD
              due to previous error (AE_AML_UNINITIALIZED_ELEMENT)
(psparse-529)

  one set per USB port on the chipset's xHCI controller (PCI 1022:43d5).

  Root cause: the DSDT's UPGP() method fills a 22-element USBP Package
  by branching on the xHCI controller's PCI device ID (XDID):

      If    ((XDID == 0x43B9) || (XDID == 0x43D0))  // PT4 map
      ElseIf (XDID == 0x43BB)                       // PT2 map
      ElseIf (XDID == 0x43BC)                       // PT1 map
      // no Else branch

  This board's xHCI reports XDID == 0x43D5, which matches none of the
  above branches. USBP is never populated, and every port's _PLD method
  dereferences an uninitialized Package element via GPLD(), aborting on
  every single call.

  Fix (confirmed working on this board, 0 errors after applying): add
  one ElseIf branch to UPGP(), reusing the existing PT4 map (it matches
  this board's actual physical port layout):

      ElseIf ((XDID == 0x43D5))
      {
          While (Local0)
          {
              Local0--
              USBP [Local0] = DerefOf (PT4 [Local0])
          }   
      }

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

_______________________________________________
acpi-bugzilla mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla

Reply via email to