Lines Matching refs:cxlds
416 static int mock_set_timestamp(struct cxl_dev_state *cxlds,
419 struct cxl_mockmem_data *mdata = dev_get_drvdata(cxlds->dev);
999 struct cxl_dev_state *cxlds;
1004 cxl_get_injected_po(struct cxl_dev_state *cxlds, u64 offset, u64 length)
1015 if (mock_poison_list[i].cxlds != cxlds)
1035 static int mock_get_poison(struct cxl_dev_state *cxlds,
1044 po = cxl_get_injected_po(cxlds, offset, length);
1055 static bool mock_poison_dev_max_injected(struct cxl_dev_state *cxlds)
1060 if (mock_poison_list[i].cxlds == cxlds)
1066 static bool mock_poison_add(struct cxl_dev_state *cxlds, u64 dpa)
1068 if (mock_poison_dev_max_injected(cxlds)) {
1069 dev_dbg(cxlds->dev,
1076 if (!mock_poison_list[i].cxlds) {
1077 mock_poison_list[i].cxlds = cxlds;
1082 dev_dbg(cxlds->dev,
1089 static bool mock_poison_found(struct cxl_dev_state *cxlds, u64 dpa)
1092 if (mock_poison_list[i].cxlds == cxlds &&
1099 static int mock_inject_poison(struct cxl_dev_state *cxlds,
1105 if (mock_poison_found(cxlds, dpa)) {
1107 dev_dbg(cxlds->dev, "DPA: 0x%llx already poisoned\n", dpa);
1110 if (!mock_poison_add(cxlds, dpa))
1116 static bool mock_poison_del(struct cxl_dev_state *cxlds, u64 dpa)
1119 if (mock_poison_list[i].cxlds == cxlds &&
1121 mock_poison_list[i].cxlds = NULL;
1128 static int mock_clear_poison(struct cxl_dev_state *cxlds,
1139 if (!mock_poison_del(cxlds, dpa))
1140 dev_dbg(cxlds->dev, "DPA: 0x%llx not in poison list\n", dpa);
1148 if (mock_poison_list[i].cxlds)
1267 struct cxl_dev_state *cxlds = &mds->cxlds;
1268 struct device *dev = cxlds->dev;
1274 rc = mock_set_timestamp(cxlds, cmd);
1283 if (cxlds->rcd)
1331 rc = mock_get_poison(cxlds, cmd);
1334 rc = mock_inject_poison(cxlds, cmd);
1337 rc = mock_clear_poison(cxlds, cmd);
1389 struct cxl_dev_state *cxlds;
1422 cxlds = &mds->cxlds;
1423 cxlds->serial = pdev->id;
1425 cxlds->rcd = true;
1426 cxlds->component_reg_phys = CXL_RESOURCE_NONE;
1441 cxlds->media_ready = true;
1453 cxlmd = devm_cxl_add_memdev(&pdev->dev, cxlds);