diff options
Diffstat (limited to 'tools/testing/cxl/test/mock.c')
| -rw-r--r-- | tools/testing/cxl/test/mock.c | 59 | 
1 files changed, 33 insertions, 26 deletions
diff --git a/tools/testing/cxl/test/mock.c b/tools/testing/cxl/test/mock.c index 284416527644..1a61e68e3095 100644 --- a/tools/testing/cxl/test/mock.c +++ b/tools/testing/cxl/test/mock.c @@ -139,7 +139,7 @@ struct cxl_hdm *__wrap_devm_cxl_setup_hdm(struct cxl_port *port,  	struct cxl_hdm *cxlhdm;  	struct cxl_mock_ops *ops = get_cxl_mock_ops(&index); -	if (ops && ops->is_mock_port(port->uport)) +	if (ops && ops->is_mock_port(port->uport_dev))  		cxlhdm = ops->devm_cxl_setup_hdm(port, info);  	else  		cxlhdm = devm_cxl_setup_hdm(port, info); @@ -149,27 +149,12 @@ struct cxl_hdm *__wrap_devm_cxl_setup_hdm(struct cxl_port *port,  }  EXPORT_SYMBOL_NS_GPL(__wrap_devm_cxl_setup_hdm, CXL); -int __wrap_devm_cxl_enable_hdm(struct cxl_port *port, struct cxl_hdm *cxlhdm) -{ -	int index, rc; -	struct cxl_mock_ops *ops = get_cxl_mock_ops(&index); - -	if (ops && ops->is_mock_port(port->uport)) -		rc = 0; -	else -		rc = devm_cxl_enable_hdm(port, cxlhdm); -	put_cxl_mock_ops(index); - -	return rc; -} -EXPORT_SYMBOL_NS_GPL(__wrap_devm_cxl_enable_hdm, CXL); -  int __wrap_devm_cxl_add_passthrough_decoder(struct cxl_port *port)  {  	int rc, index;  	struct cxl_mock_ops *ops = get_cxl_mock_ops(&index); -	if (ops && ops->is_mock_port(port->uport)) +	if (ops && ops->is_mock_port(port->uport_dev))  		rc = ops->devm_cxl_add_passthrough_decoder(port);  	else  		rc = devm_cxl_add_passthrough_decoder(port); @@ -186,7 +171,7 @@ int __wrap_devm_cxl_enumerate_decoders(struct cxl_hdm *cxlhdm,  	struct cxl_port *port = cxlhdm->port;  	struct cxl_mock_ops *ops = get_cxl_mock_ops(&index); -	if (ops && ops->is_mock_port(port->uport)) +	if (ops && ops->is_mock_port(port->uport_dev))  		rc = ops->devm_cxl_enumerate_decoders(cxlhdm, info);  	else  		rc = devm_cxl_enumerate_decoders(cxlhdm, info); @@ -201,7 +186,7 @@ int __wrap_devm_cxl_port_enumerate_dports(struct cxl_port *port)  	int rc, index;  	struct cxl_mock_ops *ops = get_cxl_mock_ops(&index); -	if (ops && ops->is_mock_port(port->uport)) +	if (ops && ops->is_mock_port(port->uport_dev))  		rc = ops->devm_cxl_port_enumerate_dports(port);  	else  		rc = devm_cxl_port_enumerate_dports(port); @@ -259,24 +244,46 @@ int __wrap_cxl_dvsec_rr_decode(struct device *dev, int dvsec,  }  EXPORT_SYMBOL_NS_GPL(__wrap_cxl_dvsec_rr_decode, CXL); -resource_size_t __wrap_cxl_rcrb_to_component(struct device *dev, -					     resource_size_t rcrb, -					     enum cxl_rcrb which) +struct cxl_dport *__wrap_devm_cxl_add_rch_dport(struct cxl_port *port, +						struct device *dport_dev, +						int port_id, +						resource_size_t rcrb) +{ +	int index; +	struct cxl_dport *dport; +	struct cxl_mock_ops *ops = get_cxl_mock_ops(&index); + +	if (ops && ops->is_mock_port(dport_dev)) { +		dport = devm_cxl_add_dport(port, dport_dev, port_id, +					   CXL_RESOURCE_NONE); +		if (!IS_ERR(dport)) { +			dport->rcrb.base = rcrb; +			dport->rch = true; +		} +	} else +		dport = devm_cxl_add_rch_dport(port, dport_dev, port_id, rcrb); +	put_cxl_mock_ops(index); + +	return dport; +} +EXPORT_SYMBOL_NS_GPL(__wrap_devm_cxl_add_rch_dport, CXL); + +resource_size_t __wrap_cxl_rcd_component_reg_phys(struct device *dev, +						  struct cxl_dport *dport)  {  	int index;  	resource_size_t component_reg_phys;  	struct cxl_mock_ops *ops = get_cxl_mock_ops(&index);  	if (ops && ops->is_mock_port(dev)) -		component_reg_phys = -			ops->cxl_rcrb_to_component(dev, rcrb, which); +		component_reg_phys = CXL_RESOURCE_NONE;  	else -		component_reg_phys = cxl_rcrb_to_component(dev, rcrb, which); +		component_reg_phys = cxl_rcd_component_reg_phys(dev, dport);  	put_cxl_mock_ops(index);  	return component_reg_phys;  } -EXPORT_SYMBOL_NS_GPL(__wrap_cxl_rcrb_to_component, CXL); +EXPORT_SYMBOL_NS_GPL(__wrap_cxl_rcd_component_reg_phys, CXL);  MODULE_LICENSE("GPL v2");  MODULE_IMPORT_NS(ACPI);  |