mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-01 10:42:11 +00:00
PCI/ACPI: Advertise _HPX Type 3 support via _OSC
_OSC now has a way to inform firmware that OS has the capability to interpret _HPX Type 3 setting records. This was added by the following PCI Firmware Specification ECN: ECN: _HPX and PCIe Completion Timeout related _OSC Enhancements Date: September 12, 2018 Affected Document: PCI Firmware Specification, Rev. 3.2 Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
This commit is contained in:
parent
f873c51a15
commit
ba11edc650
@ -145,6 +145,7 @@ static struct pci_osc_bit_struct pci_osc_support_bit[] = {
|
||||
{ OSC_PCI_CLOCK_PM_SUPPORT, "ClockPM" },
|
||||
{ OSC_PCI_SEGMENT_GROUPS_SUPPORT, "Segments" },
|
||||
{ OSC_PCI_MSI_SUPPORT, "MSI" },
|
||||
{ OSC_PCI_HPX_TYPE_3_SUPPORT, "HPX-Type3" },
|
||||
};
|
||||
|
||||
static struct pci_osc_bit_struct pci_osc_control_bit[] = {
|
||||
@ -446,6 +447,7 @@ static void negotiate_os_control(struct acpi_pci_root *root, int *no_aspm,
|
||||
* PCI domains, so we indicate this in _OSC support capabilities.
|
||||
*/
|
||||
support = OSC_PCI_SEGMENT_GROUPS_SUPPORT;
|
||||
support |= OSC_PCI_HPX_TYPE_3_SUPPORT;
|
||||
if (pci_ext_cfg_avail())
|
||||
support |= OSC_PCI_EXT_CONFIG_SUPPORT;
|
||||
if (pcie_aspm_support_enabled())
|
||||
|
@ -513,7 +513,8 @@ extern bool osc_pc_lpi_support_confirmed;
|
||||
#define OSC_PCI_CLOCK_PM_SUPPORT 0x00000004
|
||||
#define OSC_PCI_SEGMENT_GROUPS_SUPPORT 0x00000008
|
||||
#define OSC_PCI_MSI_SUPPORT 0x00000010
|
||||
#define OSC_PCI_SUPPORT_MASKS 0x0000001f
|
||||
#define OSC_PCI_HPX_TYPE_3_SUPPORT 0x00000100
|
||||
#define OSC_PCI_SUPPORT_MASKS 0x0000011f
|
||||
|
||||
/* PCI Host Bridge _OSC: Capabilities DWORD 3: Control Field */
|
||||
#define OSC_PCI_EXPRESS_NATIVE_HP_CONTROL 0x00000001
|
||||
|
Loading…
Reference in New Issue
Block a user