Searched refs:cxlsd (Results 1 – 7 of 7) sorted by relevance
| /linux/tools/testing/cxl/test/ |
| H A D | cxl.c | 768 struct cxl_switch_decoder cxlsd; in cxld_registry_find() 822 struct cxl_switch_decoder *cxlsd = in cxld_registry_restore() 825 if (!(td->cxlsd.cxld.flags & CXL_DECODER_F_ENABLE)) in cxld_registry_restore() 828 dbg_cxld(port, "restore", &td->cxlsd.cxld); in cxld_registry_restore() 829 cxld_copy(cxld, &td->cxlsd.cxld); in cxld_registry_restore() 830 WARN_ON(cxlsd->nr_targets != td->cxlsd.nr_targets); in cxld_registry_restore() 833 for (int i = 0; i < cxlsd->nr_targets; i++) { in cxld_registry_restore() 834 cxlsd->target[i] = NULL; in cxld_registry_restore() 835 cxld->target_map[i] = td->cxlsd in cxld_registry_restore() 761 struct cxl_switch_decoder cxlsd; global() member 815 struct cxl_switch_decoder *cxlsd = cxld_registry_restore() local 863 struct cxl_switch_decoder *cxlsd = __cxld_registry_save() local 1012 struct cxl_switch_decoder *cxlsd = init_disabled_mock_decoder() local 1076 struct cxl_switch_decoder *cxlsd; mock_init_hdm_decoder() local 1245 struct cxl_switch_decoder *cxlsd; mock_cxl_enumerate_decoders() local [all...] |
| /linux/drivers/cxl/core/ |
| H A D | port.c | 150 static ssize_t emit_target_list(struct cxl_switch_decoder *cxlsd, char *buf) in emit_target_list() argument 152 struct cxl_decoder *cxld = &cxlsd->cxld; in emit_target_list() 157 struct cxl_dport *dport = cxlsd->target[i]; in emit_target_list() 164 next = cxlsd->target[i + 1]; in emit_target_list() 178 struct cxl_switch_decoder *cxlsd = to_cxl_switch_decoder(dev); in target_list_show() local 183 rc = emit_target_list(cxlsd, buf); in target_list_show() 344 return (cxlrd->cxlsd.cxld.flags & flags) == flags; in can_create_pmem() 351 return (cxlrd->cxlsd.cxld.flags & flags) == flags; in can_create_ram() 440 struct cxl_switch_decoder *cxlsd = to_cxl_switch_decoder(dev); in cxl_switch_decoder_release() local 442 __cxl_decoder_release(&cxlsd in cxl_switch_decoder_release() 1602 struct cxl_switch_decoder *cxlsd; update_decoder_targets() local 1907 decoder_populate_targets(struct cxl_switch_decoder * cxlsd,struct cxl_port * port) decoder_populate_targets() argument 1977 cxl_switch_decoder_init(struct cxl_port * port,struct cxl_switch_decoder * cxlsd,int nr_targets) cxl_switch_decoder_init() argument 2001 struct cxl_switch_decoder *cxlsd; cxl_root_decoder_alloc() local 2054 struct cxl_switch_decoder *cxlsd; cxl_switch_decoder_alloc() local 2145 struct cxl_switch_decoder *cxlsd = to_cxl_switch_decoder(dev); cxl_decoder_add_locked() local [all...] |
| H A D | region.c | 297 struct cxl_switch_decoder *cxlsd = NULL; in commit_decoder() local 303 cxlsd = to_cxl_switch_decoder(&cxld->dev); in commit_decoder() 305 if (dev_WARN_ONCE(&cxld->dev, !cxlsd || cxlsd->nr_targets > 1, in commit_decoder() 491 struct cxl_decoder *cxld = &cxlrd->cxlsd.cxld; in set_interleave_ways() 565 struct cxl_decoder *cxld = &cxlrd->cxlsd.cxld; in set_interleave_granularity() 1267 struct cxl_switch_decoder *cxlsd; in cxl_port_attach_region() 1269 cxlsd = to_cxl_switch_decoder(&cxld->dev); in cxl_port_attach_region() 1270 if (cxl_rr->nr_targets > cxlsd->nr_targets) { in cxl_port_attach_region() 1276 cxlsd in cxl_port_attach_region() 1256 struct cxl_switch_decoder *cxlsd; cxl_port_attach_region() local 1438 struct cxl_switch_decoder *cxlsd; cxl_port_setup_targets() local 1793 struct cxl_switch_decoder *cxlsd = &cxlrd->cxlsd; cxl_region_attach_position() local 1872 struct cxl_switch_decoder *cxlsd; match_switch_decoder_by_range() local 1890 struct cxl_switch_decoder *cxlsd; find_pos_and_ways() local [all...] |
| H A D | hdm.c | 54 struct cxl_switch_decoder *cxlsd; in devm_cxl_add_passthrough_decoder() local 64 cxlsd = cxl_switch_decoder_alloc(port, 1); in devm_cxl_add_passthrough_decoder() 65 if (IS_ERR(cxlsd)) in devm_cxl_add_passthrough_decoder() 66 return PTR_ERR(cxlsd); in devm_cxl_add_passthrough_decoder() 70 return add_hdm_decoder(port, &cxlsd->cxld); in devm_cxl_add_passthrough_decoder() 711 static void cxlsd_set_targets(struct cxl_switch_decoder *cxlsd, u64 *tgt) in cxlsd_set_targets() argument 713 struct cxl_dport **t = &cxlsd->target[0]; in cxlsd_set_targets() 714 int ways = cxlsd->cxld.interleave_ways; in cxlsd_set_targets() 778 struct cxl_switch_decoder *cxlsd = in setup_hw_decoder() local 784 cxlsd_set_targets(cxlsd, &targets); in setup_hw_decoder() [all …]
|
| H A D | cdat.c | 330 struct cxl_switch_decoder *cxlsd; in match_cxlrd_hb() local 337 cxlsd = &cxlrd->cxlsd; in match_cxlrd_hb() 340 for (int i = 0; i < cxlsd->nr_targets; i++) { in match_cxlrd_hb() 341 if (cxlsd->target[i] && host_bridge == cxlsd->target[i]->dport_dev) in match_cxlrd_hb()
|
| /linux/drivers/cxl/ |
| H A D | acpi.c | 78 int hbiw = cxlrd->cxlsd.nr_targets; in cxl_apply_xor_maps() 101 struct cxl_decoder *cxld = &cxlrd->cxlsd.cxld; in cxl_parse_cxims() 365 struct cxl_decoder *cxld = &cxlrd->cxlsd.cxld; in cxl_setup_extended_linear_cache() 399 if (!IS_ERR_OR_NULL(_T)) put_device(&_T->cxlsd.cxld.dev)) 438 cxld = &cxlrd->cxlsd.cxld; in DEFINE_FREE() 870 struct cxl_decoder *cxld = &cxlrd->cxlsd.cxld; in pair_cxl_resource()
|
| H A D | cxl.h | 379 * @cxlsd: base cxl switch decoder 391 struct cxl_switch_decoder cxlsd; 740 DEFINE_FREE(put_cxl_root_decoder, struct cxl_root_decoder *, if (!IS_ERR_OR_NULL(_T)) put_device(&_T->cxlsd.cxld.dev)) 785 return cxl_decoder_autoremove(host, &cxlrd->cxlsd.cxld); 375 struct cxl_switch_decoder cxlsd; global() member
|