]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
cxl/test: Refactor decoder setup to reduce cxl_test burden
authorDave Jiang <dave.jiang@intel.com>
Fri, 29 Aug 2025 18:09:23 +0000 (11:09 -0700)
committerDave Jiang <dave.jiang@intel.com>
Thu, 18 Sep 2025 16:54:50 +0000 (09:54 -0700)
commit68d5d9734c12fce20ad493fe24738ab2019108c0
tree8a671ede3e6ccab3d2db8dc0e9060ad70309e0b2
parent02edab6ceefaaf8cb917e864d8c26dbac0ea9686
cxl/test: Refactor decoder setup to reduce cxl_test burden

Group the decoder setup code in switch and endpoint port probe into a
single function for each to reduce the number of functions to be mocked
in cxl_test. Introduce devm_cxl_switch_port_decoders_setup() and
devm_cxl_endpoint_decoders_setup(). These two functions will be mocked
instead with some functions optimized out since the mock version does
not do anything. Remove devm_cxl_setup_hdm(),
devm_cxl_add_passthrough_decoder(), and devm_cxl_enumerate_decoders() in
cxl_test mock code. In turn, mock_cxl_add_passthrough_decoder() can be
removed since cxl_test does not setup passthrough decoders.
__wrap_cxl_hdm_decode_init() and __wrap_cxl_dvsec_rr_decode() can be
removed as well since they only return 0 when called.

[dj: drop 'struct cxl_port' forward declaration (Robert)]

Suggested-by: Robert Richter <rrichter@amd.com>
Reviewed-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
Reviewed-by: Robert Richter <rrichter@amd.com>
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
drivers/cxl/core/core.h
drivers/cxl/core/hdm.c
drivers/cxl/core/pci.c
drivers/cxl/cxl.h
drivers/cxl/cxlpci.h
drivers/cxl/port.c
tools/testing/cxl/Kbuild
tools/testing/cxl/test/cxl.c
tools/testing/cxl/test/mock.c
tools/testing/cxl/test/mock.h