2019-01-23 07:56:00 +01:00
|
|
|
config ACPI
|
|
|
|
bool
|
|
|
|
|
|
|
|
config ACPI_X86
|
|
|
|
bool
|
2019-01-23 07:56:10 +01:00
|
|
|
select ACPI
|
2019-01-23 07:56:16 +01:00
|
|
|
select ACPI_NVDIMM
|
acpi/cxl: Add _OSC implementation (9.14.2)
CXL 2.0 specification adds 2 new dwords to the existing _OSC definition
from PCIe. The new dwords are accessed with a new uuid. This
implementation supports what is in the specification.
iasl -d decodes the result of this patch as:
Name (SUPP, Zero)
Name (CTRL, Zero)
Name (SUPC, Zero)
Name (CTRC, Zero)
Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
{
CreateDWordField (Arg3, Zero, CDW1)
If (((Arg0 == ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") /* PCI Host Bridge Device */) || (Arg0 == ToUUID ("68f2d50b-c469-4d8a-bd3d-941a103fd3fc") /* Unknown UUID */)))
{
CreateDWordField (Arg3, 0x04, CDW2)
CreateDWordField (Arg3, 0x08, CDW3)
Local0 = CDW3 /* \_SB_.PC0C._OSC.CDW3 */
Local0 &= 0x1F
If ((Arg1 != One))
{
CDW1 |= 0x08
}
If ((CDW3 != Local0))
{
CDW1 |= 0x10
}
SUPP = CDW2 /* \_SB_.PC0C._OSC.CDW2 */
CTRL = CDW3 /* \_SB_.PC0C._OSC.CDW3 */
CDW3 = Local0
If ((Arg0 == ToUUID ("68f2d50b-c469-4d8a-bd3d-941a103fd3fc") /* Unknown UUID */))
{
CreateDWordField (Arg3, 0x0C, CDW4)
CreateDWordField (Arg3, 0x10, CDW5)
SUPC = CDW4 /* \_SB_.PC0C._OSC.CDW4 */
CTRC = CDW5 /* \_SB_.PC0C._OSC.CDW5 */
CDW5 |= One
}
Return (Arg3)
}
Else
{
CDW1 |= 0x04
Return (Arg3)
}
Signed-off-by: Ben Widawsky <ben.widawsky@intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20220429144110.25167-25-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2022-04-29 16:40:49 +02:00
|
|
|
select ACPI_CXL
|
2019-01-23 07:56:16 +01:00
|
|
|
select ACPI_CPU_HOTPLUG
|
|
|
|
select ACPI_MEMORY_HOTPLUG
|
2019-12-13 02:19:25 +01:00
|
|
|
select ACPI_HMAT
|
2021-08-12 09:14:09 +02:00
|
|
|
select ACPI_PIIX4
|
|
|
|
select ACPI_PCIHP
|
2022-01-28 21:38:04 +01:00
|
|
|
select ACPI_ERST
|
2019-01-23 07:56:00 +01:00
|
|
|
|
|
|
|
config ACPI_X86_ICH
|
|
|
|
bool
|
2019-01-23 07:56:10 +01:00
|
|
|
select ACPI_X86
|
2019-01-23 07:56:00 +01:00
|
|
|
|
|
|
|
config ACPI_CPU_HOTPLUG
|
|
|
|
bool
|
|
|
|
|
|
|
|
config ACPI_MEMORY_HOTPLUG
|
|
|
|
bool
|
2019-01-23 07:56:10 +01:00
|
|
|
select MEM_DEVICE
|
2019-01-23 07:56:00 +01:00
|
|
|
|
|
|
|
config ACPI_NVDIMM
|
|
|
|
bool
|
2019-01-23 07:56:16 +01:00
|
|
|
depends on ACPI
|
2019-01-23 07:56:00 +01:00
|
|
|
|
2021-08-12 09:14:09 +02:00
|
|
|
config ACPI_PIIX4
|
|
|
|
bool
|
|
|
|
depends on ACPI
|
|
|
|
|
|
|
|
config ACPI_PCIHP
|
|
|
|
bool
|
|
|
|
depends on ACPI
|
|
|
|
|
2019-12-13 02:19:25 +01:00
|
|
|
config ACPI_HMAT
|
|
|
|
bool
|
|
|
|
depends on ACPI
|
|
|
|
|
2020-05-12 05:06:03 +02:00
|
|
|
config ACPI_APEI
|
|
|
|
bool
|
|
|
|
depends on ACPI
|
|
|
|
|
2019-05-21 08:28:35 +02:00
|
|
|
config ACPI_PCI
|
|
|
|
bool
|
|
|
|
depends on ACPI && PCI
|
|
|
|
|
2019-01-23 07:56:00 +01:00
|
|
|
config ACPI_VMGENID
|
|
|
|
bool
|
2019-01-23 07:56:16 +01:00
|
|
|
default y
|
|
|
|
depends on PC
|
2019-09-18 15:06:25 +02:00
|
|
|
|
2021-10-26 20:20:20 +02:00
|
|
|
config ACPI_VIOT
|
|
|
|
bool
|
|
|
|
depends on ACPI
|
|
|
|
|
2019-09-18 15:06:25 +02:00
|
|
|
config ACPI_HW_REDUCED
|
2021-05-21 15:53:57 +02:00
|
|
|
bool
|
|
|
|
select ACPI
|
|
|
|
select ACPI_MEMORY_HOTPLUG
|
|
|
|
select ACPI_NVDIMM
|
2022-01-28 21:38:04 +01:00
|
|
|
|
|
|
|
config ACPI_ERST
|
|
|
|
bool
|
|
|
|
default y
|
|
|
|
depends on ACPI && PCI
|
acpi/cxl: Add _OSC implementation (9.14.2)
CXL 2.0 specification adds 2 new dwords to the existing _OSC definition
from PCIe. The new dwords are accessed with a new uuid. This
implementation supports what is in the specification.
iasl -d decodes the result of this patch as:
Name (SUPP, Zero)
Name (CTRL, Zero)
Name (SUPC, Zero)
Name (CTRC, Zero)
Method (_OSC, 4, NotSerialized) // _OSC: Operating System Capabilities
{
CreateDWordField (Arg3, Zero, CDW1)
If (((Arg0 == ToUUID ("33db4d5b-1ff7-401c-9657-7441c03dd766") /* PCI Host Bridge Device */) || (Arg0 == ToUUID ("68f2d50b-c469-4d8a-bd3d-941a103fd3fc") /* Unknown UUID */)))
{
CreateDWordField (Arg3, 0x04, CDW2)
CreateDWordField (Arg3, 0x08, CDW3)
Local0 = CDW3 /* \_SB_.PC0C._OSC.CDW3 */
Local0 &= 0x1F
If ((Arg1 != One))
{
CDW1 |= 0x08
}
If ((CDW3 != Local0))
{
CDW1 |= 0x10
}
SUPP = CDW2 /* \_SB_.PC0C._OSC.CDW2 */
CTRL = CDW3 /* \_SB_.PC0C._OSC.CDW3 */
CDW3 = Local0
If ((Arg0 == ToUUID ("68f2d50b-c469-4d8a-bd3d-941a103fd3fc") /* Unknown UUID */))
{
CreateDWordField (Arg3, 0x0C, CDW4)
CreateDWordField (Arg3, 0x10, CDW5)
SUPC = CDW4 /* \_SB_.PC0C._OSC.CDW4 */
CTRC = CDW5 /* \_SB_.PC0C._OSC.CDW5 */
CDW5 |= One
}
Return (Arg3)
}
Else
{
CDW1 |= 0x04
Return (Arg3)
}
Signed-off-by: Ben Widawsky <ben.widawsky@intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20220429144110.25167-25-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2022-04-29 16:40:49 +02:00
|
|
|
|
|
|
|
config ACPI_CXL
|
|
|
|
bool
|
|
|
|
depends on ACPI
|