Searched refs:cxled (Results 1 – 9 of 9) sorted by relevance
/openbmc/linux/drivers/cxl/core/ |
H A D | hdm.c | 240 static void __cxl_dpa_release(struct cxl_endpoint_decoder *cxled) in __cxl_dpa_release() argument 242 struct cxl_memdev *cxlmd = cxled_to_memdev(cxled); in __cxl_dpa_release() 243 struct cxl_port *port = cxled_to_port(cxled); in __cxl_dpa_release() 245 struct resource *res = cxled->dpa_res; in __cxl_dpa_release() 251 skip_start = res->start - cxled->skip; in __cxl_dpa_release() 253 if (cxled->skip) in __cxl_dpa_release() 254 __release_region(&cxlds->dpa_res, skip_start, cxled->skip); in __cxl_dpa_release() 255 cxled->skip = 0; in __cxl_dpa_release() 256 cxled->dpa_res = NULL; in __cxl_dpa_release() 257 put_device(&cxled->cxld.dev); in __cxl_dpa_release() [all …]
|
H A D | region.c | 154 struct cxl_endpoint_decoder *cxled = p->targets[i]; in cxl_region_decode_reset() local 155 struct cxl_memdev *cxlmd = cxled_to_memdev(cxled); in cxl_region_decode_reset() 156 struct cxl_port *iter = cxled_to_port(cxled); in cxl_region_decode_reset() 179 cxled->cxld.reset(&cxled->cxld); in cxl_region_decode_reset() 209 struct cxl_endpoint_decoder *cxled = p->targets[i]; in cxl_region_decode_commit() local 210 struct cxl_memdev *cxlmd = cxled_to_memdev(cxled); in cxl_region_decode_commit() 217 for (iter = cxled_to_port(cxled); !is_cxl_root(iter); in cxl_region_decode_commit() 236 cxled->cxld.reset(&cxled->cxld); in cxl_region_decode_commit() 651 struct cxl_endpoint_decoder *cxled; in show_targetN() local 665 cxled = p->targets[pos]; in show_targetN() [all …]
|
H A D | trace.c | 37 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()
|
H A D | core.h | 21 void cxl_decoder_kill_region(struct cxl_endpoint_decoder *cxled); 42 static inline void cxl_decoder_kill_region(struct cxl_endpoint_decoder *cxled) in cxl_decoder_kill_region() argument 68 int cxl_dpa_set_mode(struct cxl_endpoint_decoder *cxled, 70 int cxl_dpa_alloc(struct cxl_endpoint_decoder *cxled, unsigned long long size); 71 int cxl_dpa_free(struct cxl_endpoint_decoder *cxled); 72 resource_size_t cxl_dpa_size(struct cxl_endpoint_decoder *cxled); 73 resource_size_t cxl_dpa_resource_start(struct cxl_endpoint_decoder *cxled);
|
H A D | port.c | 194 struct cxl_endpoint_decoder *cxled = to_cxl_endpoint_decoder(dev); in mode_show() local 196 return sysfs_emit(buf, "%s\n", cxl_decoder_mode_name(cxled->mode)); in mode_show() 202 struct cxl_endpoint_decoder *cxled = to_cxl_endpoint_decoder(dev); in mode_store() local 213 rc = cxl_dpa_set_mode(cxled, mode); in mode_store() 224 struct cxl_endpoint_decoder *cxled = to_cxl_endpoint_decoder(dev); in dpa_resource_show() local 227 return sysfs_emit(buf, "%#llx\n", (u64)cxl_dpa_resource_start(cxled)); in dpa_resource_show() 234 struct cxl_endpoint_decoder *cxled = to_cxl_endpoint_decoder(dev); in dpa_size_show() local 235 resource_size_t size = cxl_dpa_size(cxled); in dpa_size_show() 243 struct cxl_endpoint_decoder *cxled = to_cxl_endpoint_decoder(dev); in dpa_size_store() local 254 rc = cxl_dpa_free(cxled); in dpa_size_store() [all …]
|
/openbmc/linux/drivers/cxl/ |
H A D | port.c | 35 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()
|
H A D | cxlmem.h | 63 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() 93 int devm_cxl_dpa_reserve(struct cxl_endpoint_decoder *cxled,
|
H A D | cxl.h | 804 struct cxl_endpoint_decoder *cxled); 816 struct cxl_endpoint_decoder *cxled) in cxl_add_to_region() argument
|
/openbmc/linux/tools/testing/cxl/test/ |
H A D | cxl.c | 738 struct cxl_endpoint_decoder *cxled; in mock_init_hdm_decoder() local 750 cxled = to_cxl_endpoint_decoder(&cxld->dev); in mock_init_hdm_decoder() 751 cxlmd = cxled_to_memdev(cxled); in mock_init_hdm_decoder() 756 port = cxled_to_port(cxled); in mock_init_hdm_decoder() 767 port = cxled_to_port(cxled); in mock_init_hdm_decoder() 793 cxled->state = CXL_DECODER_STATE_AUTO; in mock_init_hdm_decoder() 795 devm_cxl_dpa_reserve(cxled, 0, size / cxld->interleave_ways, 0); in mock_init_hdm_decoder() 878 struct cxl_endpoint_decoder *cxled; in mock_cxl_enumerate_decoders() local 880 cxled = cxl_endpoint_decoder_alloc(port); in mock_cxl_enumerate_decoders() 882 if (IS_ERR(cxled)) { in mock_cxl_enumerate_decoders() [all …]
|