Home
last modified time | relevance | path

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

/linux/drivers/cxl/
H A Dport.c62 struct cxl_hdm *cxlhdm; in cxl_switch_port_probe() local
74 cxlhdm = devm_cxl_setup_hdm(port, NULL); in cxl_switch_port_probe()
75 if (!IS_ERR(cxlhdm)) in cxl_switch_port_probe()
76 return devm_cxl_enumerate_decoders(cxlhdm, NULL); in cxl_switch_port_probe()
78 if (PTR_ERR(cxlhdm) != -ENODEV) { in cxl_switch_port_probe()
80 return PTR_ERR(cxlhdm); in cxl_switch_port_probe()
97 struct cxl_hdm *cxlhdm; in cxl_endpoint_port_probe() local
104 cxlhdm = devm_cxl_setup_hdm(port, &info); in cxl_endpoint_port_probe()
105 if (IS_ERR(cxlhdm)) { in cxl_endpoint_port_probe()
106 if (PTR_ERR(cxlhdm) in cxl_endpoint_port_probe()
[all...]
H A Dcxlpci.h132 int cxl_hdm_decode_init(struct cxl_dev_state *cxlds, struct cxl_hdm *cxlhdm,
/linux/drivers/cxl/core/
H A Dhdm.c59 struct cxl_hdm *cxlhdm = dev_get_drvdata(&port->dev); in devm_cxl_add_passthrough_decoder() local
65 cxlhdm->interleave_mask = ~0U; in devm_cxl_add_passthrough_decoder()
66 cxlhdm->iw_cap_mask = ~0UL; in devm_cxl_add_passthrough_decoder()
82 static void parse_hdm_decoder_caps(struct cxl_hdm *cxlhdm) in parse_hdm_decoder_caps() argument
86 hdm_cap = readl(cxlhdm->regs.hdm_decoder + CXL_HDM_DECODER_CAP_OFFSET); in parse_hdm_decoder_caps()
87 cxlhdm->decoder_count = cxl_hdm_decoder_count(hdm_cap); in parse_hdm_decoder_caps()
88 cxlhdm->target_count = in parse_hdm_decoder_caps()
91 cxlhdm->interleave_mask |= GENMASK(11, 8); in parse_hdm_decoder_caps()
93 cxlhdm->interleave_mask |= GENMASK(14, 12); in parse_hdm_decoder_caps()
94 cxlhdm in parse_hdm_decoder_caps()
103 struct cxl_hdm *cxlhdm; should_emulate_decoders() local
155 struct cxl_hdm *cxlhdm; devm_cxl_setup_hdm() local
820 struct cxl_hdm *cxlhdm = dev_get_drvdata(&port->dev); cxl_decoder_commit() local
910 struct cxl_hdm *cxlhdm = dev_get_drvdata(&port->dev); cxl_decoder_reset() local
1139 cxl_settle_decoders(struct cxl_hdm * cxlhdm) cxl_settle_decoders() argument
1171 devm_cxl_enumerate_decoders(struct cxl_hdm * cxlhdm,struct cxl_endpoint_dvsec_info * info) devm_cxl_enumerate_decoders() argument
[all...]
H A Dpci.c274 struct cxl_hdm *cxlhdm = _cxlhdm; in disable_hdm() local
275 void __iomem *hdm = cxlhdm->regs.hdm_decoder; in disable_hdm()
282 static int devm_cxl_enable_hdm(struct device *host, struct cxl_hdm *cxlhdm) in devm_cxl_enable_hdm() argument
284 void __iomem *hdm = cxlhdm->regs.hdm_decoder; in devm_cxl_enable_hdm()
291 return devm_add_action_or_reset(host, disable_hdm, cxlhdm); in devm_cxl_enable_hdm()
394 * @cxlhdm: Mapped HDM decoder Capability
399 int cxl_hdm_decode_init(struct cxl_dev_state *cxlds, struct cxl_hdm *cxlhdm, in cxl_hdm_decode_init() argument
402 void __iomem *hdm = cxlhdm->regs.hdm_decoder; in cxl_hdm_decode_init()
403 struct cxl_port *port = cxlhdm->port; in cxl_hdm_decode_init()
433 rc = devm_cxl_enable_hdm(&port->dev, cxlhdm); in cxl_hdm_decode_init()
1024 struct cxl_hdm *cxlhdm; __cxl_endpoint_decoder_reset_detected() local
[all...]
H A Dregion.c1277 struct cxl_hdm *cxlhdm = dev_get_drvdata(&port->dev); in check_interleave_cap() local
1283 if (!test_bit(iw, &cxlhdm->iw_cap_mask)) in check_interleave_cap()
1312 if (interleave_mask & ~cxlhdm->interleave_mask) in check_interleave_cap()
/linux/tools/testing/cxl/test/
H A Dmock.c139 struct cxl_hdm *cxlhdm; in __wrap_devm_cxl_setup_hdm() local
143 cxlhdm = ops->devm_cxl_setup_hdm(port, info); in __wrap_devm_cxl_setup_hdm()
145 cxlhdm = devm_cxl_setup_hdm(port, info); in __wrap_devm_cxl_setup_hdm()
148 return cxlhdm; in __wrap_devm_cxl_setup_hdm()
167 int __wrap_devm_cxl_enumerate_decoders(struct cxl_hdm *cxlhdm, in __wrap_devm_cxl_enumerate_decoders() argument
171 struct cxl_port *port = cxlhdm->port; in __wrap_devm_cxl_enumerate_decoders()
175 rc = ops->devm_cxl_enumerate_decoders(cxlhdm, info); in __wrap_devm_cxl_enumerate_decoders()
177 rc = devm_cxl_enumerate_decoders(cxlhdm, info); in __wrap_devm_cxl_enumerate_decoders()
215 struct cxl_hdm *cxlhdm, in __wrap_cxl_hdm_decode_init() argument
224 rc = cxl_hdm_decode_init(cxlds, cxlhdm, inf in __wrap_cxl_hdm_decode_init()
[all...]
H A Dcxl.c633 struct cxl_hdm *cxlhdm = devm_kzalloc(&port->dev, sizeof(*cxlhdm), GFP_KERNEL); in mock_cxl_setup_hdm() local
636 if (!cxlhdm) in mock_cxl_setup_hdm()
639 cxlhdm->port = port; in mock_cxl_setup_hdm()
640 cxlhdm->interleave_mask = ~0U; in mock_cxl_setup_hdm()
641 cxlhdm->iw_cap_mask = ~0UL; in mock_cxl_setup_hdm()
642 dev_set_drvdata(dev, cxlhdm); in mock_cxl_setup_hdm()
643 return cxlhdm; in mock_cxl_setup_hdm()
851 static int mock_cxl_enumerate_decoders(struct cxl_hdm *cxlhdm, in mock_cxl_enumerate_decoders() argument
854 struct cxl_port *port = cxlhdm in mock_cxl_enumerate_decoders()
[all...]