Thread (89 messages) 89 messages, 6 authors, 2025-01-22

Re: [PATCH v9 09/27] sfc: request cxl ram resource

flat view

From: Dan Williams <hidden>
Date: 2025-01-18 01:59:42
Also in: linux-cxl

alejandro.lucero-palau@ wrote:
quoted hunk ↗ jump to hunk
From: Alejandro Lucero <redacted>

Use cxl accessor for obtaining the ram resource the device advertises.

Signed-off-by: Alejandro Lucero <redacted>
Reviewed-by: Martin Habets <redacted>
Reviewed-by: Fan Ni <redacted>
Acked-by: Edward Cree <ecree.xilinx@gmail.com>
Reviewed-by: Jonathan Cameron <redacted>
---
 drivers/net/ethernet/sfc/efx_cxl.c | 7 +++++++
 1 file changed, 7 insertions(+)
diff --git a/drivers/net/ethernet/sfc/efx_cxl.c b/drivers/net/ethernet/sfc/efx_cxl.c
index 29368d010adc..2031f08ee689 100644
--- a/drivers/net/ethernet/sfc/efx_cxl.c
+++ b/drivers/net/ethernet/sfc/efx_cxl.c
@@ -85,6 +85,12 @@ int efx_cxl_init(struct efx_probe_data *probe_data)
 		goto err_resource_set;
 	}
 
+	rc = cxl_request_resource(cxl->cxlds, CXL_RES_RAM);
+	if (rc) {
+		pci_err(pci_dev, "CXL request resource failed");
+		goto err_resource_set;
+	}
+
 	probe_data->cxl = cxl;
 
 	return 0;
@@ -99,6 +105,7 @@ int efx_cxl_init(struct efx_probe_data *probe_data)
 void efx_cxl_exit(struct efx_probe_data *probe_data)
 {
 	if (probe_data->cxl) {
+		cxl_release_resource(probe_data->cxl->cxlds, CXL_RES_RAM);
Given that the DPA layout is a static property of 'struct cxl_dev_state'
once set there is no need to release it. Notice how there is no release
in the memdev case either. The 'release' is freeing @cxlds.

Now, any DPA reservations from that partition need to be released, but
those releases are with respect to cxl_dpa_{alloc,free}().
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help