Ira Weiny 671a794c33 acpi/ghes: Process CXL Component Events
BIOS can configure memory devices as firmware first.  This will send CXL
events to the firmware instead of the OS.  The firmware can then send
these events to the OS via UEFI.

UEFI v2.10 section N.2.14 defines a Common Platform Error Record (CPER)
format for CXL Component Events.  The format is mostly the same as the
CXL Common Event Record Format.  The difference is the use of a GUID in
the Section Type rather than a UUID as part of the event itself.

Add GHES support to detect CXL CPER records and call a registered
callback with the event.

A notifier chain was considered for the callback but the complexity did
not justify the use case as only the CXL subsystem requires this event.
Enforce that only one callback can be registered at any time.

Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Rafael J. Wysocki <rafael@kernel.org>
Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Link: https://lore.kernel.org/r/20231220-cxl-cper-v5-7-1bb8a4ca2c7a@intel.com
[djbw: fixup checkpatch errors]
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2024-01-09 15:41:23 -08:00
..
2023-10-26 15:04:49 +02:00
2023-10-26 15:04:49 +02:00
2020-11-09 19:25:20 +01:00
2022-05-25 15:37:07 +02:00
2023-11-04 16:20:36 -10:00
2023-09-21 20:55:43 +02:00
2023-11-01 15:28:33 -10:00
2022-01-22 08:33:37 +02:00
2020-11-09 19:08:06 +01:00
2023-03-27 20:50:28 +02:00
2023-11-04 07:54:21 -10:00
2020-11-09 19:08:06 +01:00