EINJ: Add CXL error type support
authorBen Cheatham <Benjamin.Cheatham@amd.com>
Mon, 11 Mar 2024 14:25:06 +0000 (09:25 -0500)
committerDan Williams <dan.j.williams@intel.com>
Wed, 13 Mar 2024 06:08:29 +0000 (23:08 -0700)
commit12fb28ea6b1cf24bde27c406eb38ee3c108d73f9
tree2e25fd6dffbef2307710367bcbf25caba898c393
parent5621fafaac0031e8813be4873f8efa097591b026
EINJ: Add CXL error type support

Move CXL protocol error types from einj.c (now einj-core.c) to einj-cxl.c.
einj-cxl.c implements the necessary handling for CXL protocol error
injection and exposes an API for the CXL core to use said functionality,
while also allowing the EINJ module to be built without CXL support.
Because CXL error types targeting CXL 1.0/1.1 ports require special
handling, only allow them to be injected through the new cxl debugfs
interface (next commit) and return an error when attempting to inject
through the legacy interface.

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Ben Cheatham <Benjamin.Cheatham@amd.com>
Link: https://lore.kernel.org/r/20240311142508.31717-3-Benjamin.Cheatham@amd.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
MAINTAINERS
drivers/acpi/apei/Kconfig
drivers/acpi/apei/Makefile
drivers/acpi/apei/apei-internal.h
drivers/acpi/apei/einj-core.c [new file with mode: 0644]
drivers/acpi/apei/einj-cxl.c [new file with mode: 0644]
drivers/acpi/apei/einj.c [deleted file]
include/linux/einj-cxl.h [new file with mode: 0644]