From 57be7dd48a1ee31a03dd3d3de05d699f47017adf Mon Sep 17 00:00:00 2001 From: Manivannan Sadhasivam Date: Fri, 2 Feb 2024 15:45:20 +0530 Subject: [PATCH] schemas: pci: bridge: Document "supports-d3" property Even though the PCIe spec states that all PCIe devices should support D0 and D3 states (both D3 hot and D3 cold), PCIe bridges do not follow that in practice. Spec r3.0, section 5.3.1: "All Functions must support the D0 and D3 states (both D3 hot and D3 cold ). The D1 and D2 states are optional." Also, unlike D1 and D2, D3 support cannot be determined using the standard Power Management Control/Status (PMCSR) Register. So the OS needs to know the D3 support using platform specific ways. Hence, for DT based platforms, let's add a new property called "supports-d3" that specifies that the PCI bridge is D3 capable. Signed-off-by: Manivannan Sadhasivam --- dtschema/schemas/pci/pci-pci-bridge.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/dtschema/schemas/pci/pci-pci-bridge.yaml b/dtschema/schemas/pci/pci-pci-bridge.yaml index 172399b..d8de250 100644 --- a/dtschema/schemas/pci/pci-pci-bridge.yaml +++ b/dtschema/schemas/pci/pci-pci-bridge.yaml @@ -28,4 +28,10 @@ properties: contains: const: pciclass,0604 + supports-d3: + description: + If present, this property specifies that the bridge supports transitioning + to D3 states. + type: boolean + unevaluatedProperties: false