Home
last modified time | relevance | path

Searched refs:cxled (Results 1 – 10 of 10) sorted by relevance

/Linux-v6.6/drivers/cxl/core/
Dhdm.c227 static void __cxl_dpa_release(struct cxl_endpoint_decoder *cxled) in __cxl_dpa_release() argument
229 struct cxl_memdev *cxlmd = cxled_to_memdev(cxled); in __cxl_dpa_release()
230 struct cxl_port *port = cxled_to_port(cxled); in __cxl_dpa_release()
232 struct resource *res = cxled->dpa_res; in __cxl_dpa_release()
238 skip_start = res->start - cxled->skip; in __cxl_dpa_release()
240 if (cxled->skip) in __cxl_dpa_release()
241 __release_region(&cxlds->dpa_res, skip_start, cxled->skip); in __cxl_dpa_release()
242 cxled->skip = 0; in __cxl_dpa_release()
243 cxled->dpa_res = NULL; in __cxl_dpa_release()
244 put_device(&cxled->cxld.dev); in __cxl_dpa_release()
[all …]
Dregion.c162 struct cxl_endpoint_decoder *cxled = p->targets[i]; in cxl_region_decode_reset() local
163 struct cxl_memdev *cxlmd = cxled_to_memdev(cxled); in cxl_region_decode_reset()
164 struct cxl_port *iter = cxled_to_port(cxled); in cxl_region_decode_reset()
189 rc = cxled->cxld.reset(&cxled->cxld); in cxl_region_decode_reset()
223 struct cxl_endpoint_decoder *cxled = p->targets[i]; in cxl_region_decode_commit() local
224 struct cxl_memdev *cxlmd = cxled_to_memdev(cxled); in cxl_region_decode_commit()
231 for (iter = cxled_to_port(cxled); !is_cxl_root(iter); in cxl_region_decode_commit()
250 cxled->cxld.reset(&cxled->cxld); in cxl_region_decode_commit()
673 struct cxl_endpoint_decoder *cxled; in show_targetN() local
687 cxled = p->targets[pos]; in show_targetN()
[all …]
Dtrace.c37 struct cxl_endpoint_decoder *cxled) in cxl_dpa_to_hpa() argument
41 int pos = cxled->pos; in cxl_dpa_to_hpa()
59 dpa_offset = dpa - cxl_dpa_resource_start(cxled); in cxl_dpa_to_hpa()
78 if (!cxl_is_hpa_in_range(hpa, cxlr, cxled->pos)) in cxl_dpa_to_hpa()
88 struct cxl_endpoint_decoder *cxled = NULL; in cxl_trace_hpa() local
91 cxled = p->targets[i]; in cxl_trace_hpa()
92 if (cxlmd == cxled_to_memdev(cxled)) in cxl_trace_hpa()
95 if (!cxled || cxlmd != cxled_to_memdev(cxled)) in cxl_trace_hpa()
98 return cxl_dpa_to_hpa(dpa, cxlr, cxled); in cxl_trace_hpa()
Dcore.h21 void cxl_decoder_kill_region(struct cxl_endpoint_decoder *cxled);
35 static inline void cxl_decoder_kill_region(struct cxl_endpoint_decoder *cxled) in cxl_decoder_kill_region() argument
61 int cxl_dpa_set_mode(struct cxl_endpoint_decoder *cxled,
63 int cxl_dpa_alloc(struct cxl_endpoint_decoder *cxled, unsigned long long size);
64 int cxl_dpa_free(struct cxl_endpoint_decoder *cxled);
65 resource_size_t cxl_dpa_size(struct cxl_endpoint_decoder *cxled);
66 resource_size_t cxl_dpa_resource_start(struct cxl_endpoint_decoder *cxled);
Dport.c185 struct cxl_endpoint_decoder *cxled = to_cxl_endpoint_decoder(dev); in mode_show() local
187 return sysfs_emit(buf, "%s\n", cxl_decoder_mode_name(cxled->mode)); in mode_show()
193 struct cxl_endpoint_decoder *cxled = to_cxl_endpoint_decoder(dev); in mode_store() local
204 rc = cxl_dpa_set_mode(cxled, mode); in mode_store()
215 struct cxl_endpoint_decoder *cxled = to_cxl_endpoint_decoder(dev); in dpa_resource_show() local
216 u64 base = cxl_dpa_resource_start(cxled); in dpa_resource_show()
225 struct cxl_endpoint_decoder *cxled = to_cxl_endpoint_decoder(dev); in dpa_size_show() local
226 resource_size_t size = cxl_dpa_size(cxled); in dpa_size_show()
234 struct cxl_endpoint_decoder *cxled = to_cxl_endpoint_decoder(dev); in dpa_size_store() local
245 rc = cxl_dpa_free(cxled); in dpa_size_store()
[all …]
Dmemdev.c266 struct cxl_endpoint_decoder *cxled; in __cxl_dpa_to_region() local
272 cxled = to_cxl_endpoint_decoder(dev); in __cxl_dpa_to_region()
273 if (!cxled->dpa_res || !resource_size(cxled->dpa_res)) in __cxl_dpa_to_region()
276 if (dpa > cxled->dpa_res->end || dpa < cxled->dpa_res->start) in __cxl_dpa_to_region()
280 dev_name(&cxled->cxld.region->dev)); in __cxl_dpa_to_region()
282 ctx->cxlr = cxled->cxld.region; in __cxl_dpa_to_region()
/Linux-v6.6/drivers/cxl/
Dport.c35 struct cxl_endpoint_decoder *cxled; in discover_region() local
41 cxled = to_cxl_endpoint_decoder(dev); in discover_region()
42 if ((cxled->cxld.flags & CXL_DECODER_F_ENABLE) == 0) in discover_region()
45 if (cxled->state != CXL_DECODER_STATE_AUTO) in discover_region()
52 rc = cxl_add_to_region(root, cxled); in discover_region()
55 cxled->cxld.hpa_range.start, cxled->cxld.hpa_range.end); in discover_region()
Dcxlmem.h63 static inline struct cxl_port *cxled_to_port(struct cxl_endpoint_decoder *cxled) in cxled_to_port() argument
65 return to_cxl_port(cxled->cxld.dev.parent); in cxled_to_port()
74 cxled_to_memdev(struct cxl_endpoint_decoder *cxled) in cxled_to_memdev() argument
76 struct cxl_port *port = to_cxl_port(cxled->cxld.dev.parent); in cxled_to_memdev()
90 int devm_cxl_dpa_reserve(struct cxl_endpoint_decoder *cxled,
Dcxl.h802 struct cxl_endpoint_decoder *cxled);
814 struct cxl_endpoint_decoder *cxled) in cxl_add_to_region() argument
/Linux-v6.6/tools/testing/cxl/test/
Dcxl.c737 struct cxl_endpoint_decoder *cxled; in mock_init_hdm_decoder() local
749 cxled = to_cxl_endpoint_decoder(&cxld->dev); in mock_init_hdm_decoder()
750 cxlmd = cxled_to_memdev(cxled); in mock_init_hdm_decoder()
755 port = cxled_to_port(cxled); in mock_init_hdm_decoder()
766 port = cxled_to_port(cxled); in mock_init_hdm_decoder()
792 cxled->state = CXL_DECODER_STATE_AUTO; in mock_init_hdm_decoder()
794 devm_cxl_dpa_reserve(cxled, 0, size / cxld->interleave_ways, 0); in mock_init_hdm_decoder()
877 struct cxl_endpoint_decoder *cxled; in mock_cxl_enumerate_decoders() local
879 cxled = cxl_endpoint_decoder_alloc(port); in mock_cxl_enumerate_decoders()
881 if (IS_ERR(cxled)) { in mock_cxl_enumerate_decoders()
[all …]