Home
last modified time | relevance | path

Searched refs:cxlsd (Results 1 – 7 of 7) sorted by relevance

/linux/tools/testing/cxl/test/
H A Dcxl.c768 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 Dport.c150 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 Dregion.c297 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 Dhdm.c54 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 Dcdat.c330 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 Dacpi.c78 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 Dcxl.h379 * @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