Lines Matching refs:cxlds

43 	struct cxl_dev_state *cxlds = cxlmd->cxlds;  in firmware_version_show()  local
44 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds); in firmware_version_show()
56 struct cxl_dev_state *cxlds = cxlmd->cxlds; in payload_max_show() local
57 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds); in payload_max_show()
61 return sysfs_emit(buf, "%zu\n", cxlds->cxl_mbox.payload_size); in payload_max_show()
69 struct cxl_dev_state *cxlds = cxlmd->cxlds; in label_storage_size_show() local
70 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds); in label_storage_size_show()
78 static resource_size_t cxl_ram_size(struct cxl_dev_state *cxlds) in cxl_ram_size() argument
81 if (cxlds->part[0].mode != CXL_PARTMODE_RAM) in cxl_ram_size()
83 return resource_size(&cxlds->part[0].res); in cxl_ram_size()
90 struct cxl_dev_state *cxlds = cxlmd->cxlds; in ram_size_show() local
91 unsigned long long len = cxl_ram_size(cxlds); in ram_size_show()
103 struct cxl_dev_state *cxlds = cxlmd->cxlds; in pmem_size_show() local
104 unsigned long long len = cxl_pmem_size(cxlds); in pmem_size_show()
116 struct cxl_dev_state *cxlds = cxlmd->cxlds; in serial_show() local
118 return sysfs_emit(buf, "%#llx\n", cxlds->serial); in serial_show()
134 struct cxl_dev_state *cxlds = cxlmd->cxlds; in security_state_show() local
135 struct cxl_mailbox *cxl_mbox = &cxlds->cxl_mbox; in security_state_show()
136 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds); in security_state_show()
205 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlmd->cxlds); in cxl_memdev_has_poison_cmd()
215 struct cxl_dev_state *cxlds = cxlmd->cxlds; in cxl_get_poison_by_memdev() local
220 for (int i = 0; i < cxlds->nr_partitions; i++) { in cxl_get_poison_by_memdev()
221 const struct resource *res = &cxlds->part[i].res; in cxl_get_poison_by_memdev()
230 if (rc == -EFAULT && cxlds->part[i].mode == CXL_PARTMODE_RAM) in cxl_get_poison_by_memdev()
267 struct cxl_dev_state *cxlds = cxlmd->cxlds; in cxl_validate_poison_dpa() local
272 if (!resource_size(&cxlds->dpa_res)) { in cxl_validate_poison_dpa()
273 dev_dbg(cxlds->dev, "device has no dpa resource\n"); in cxl_validate_poison_dpa()
276 if (!cxl_resource_contains_addr(&cxlds->dpa_res, dpa)) { in cxl_validate_poison_dpa()
277 dev_dbg(cxlds->dev, "dpa:0x%llx not in resource:%pR\n", in cxl_validate_poison_dpa()
278 dpa, &cxlds->dpa_res); in cxl_validate_poison_dpa()
282 dev_dbg(cxlds->dev, "dpa:0x%llx is not 64-byte aligned\n", dpa); in cxl_validate_poison_dpa()
291 struct cxl_mailbox *cxl_mbox = &cxlmd->cxlds->cxl_mbox; in cxl_inject_poison_locked()
351 struct cxl_mailbox *cxl_mbox = &cxlmd->cxlds->cxl_mbox; in cxl_clear_poison_locked()
427 static struct cxl_dpa_perf *to_pmem_perf(struct cxl_dev_state *cxlds) in to_pmem_perf() argument
429 for (int i = 0; i < cxlds->nr_partitions; i++) in to_pmem_perf()
430 if (cxlds->part[i].mode == CXL_PARTMODE_PMEM) in to_pmem_perf()
431 return &cxlds->part[i].perf; in to_pmem_perf()
439 struct cxl_dev_state *cxlds = cxlmd->cxlds; in pmem_qos_class_show() local
441 return sysfs_emit(buf, "%d\n", to_pmem_perf(cxlds)->qos_class); in pmem_qos_class_show()
453 static struct cxl_dpa_perf *to_ram_perf(struct cxl_dev_state *cxlds) in to_ram_perf() argument
455 if (cxlds->part[0].mode != CXL_PARTMODE_RAM) in to_ram_perf()
457 return &cxlds->part[0].perf; in to_ram_perf()
464 struct cxl_dev_state *cxlds = cxlmd->cxlds; in ram_qos_class_show() local
466 return sysfs_emit(buf, "%d\n", to_ram_perf(cxlds)->qos_class); in ram_qos_class_show()
502 struct cxl_dpa_perf *perf = to_ram_perf(cxlmd->cxlds); in cxl_ram_visible()
521 struct cxl_dpa_perf *perf = to_pmem_perf(cxlmd->cxlds); in cxl_pmem_visible()
541 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlmd->cxlds); in cxl_memdev_security_visible()
600 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in set_exclusive_cxl_commands()
616 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in clear_exclusive_cxl_commands()
629 cxlmd->cxlds = NULL; in cxl_memdev_shutdown()
667 struct cxl_dev_state *cxlds = devm_kzalloc(dev, size, GFP_KERNEL); in _devm_cxl_dev_state_create() local
669 if (!cxlds) in _devm_cxl_dev_state_create()
672 cxlds->dev = dev; in _devm_cxl_dev_state_create()
673 cxlds->type = type; in _devm_cxl_dev_state_create()
674 cxlds->serial = serial; in _devm_cxl_dev_state_create()
675 cxlds->cxl_dvsec = dvsec; in _devm_cxl_dev_state_create()
676 cxlds->reg_map.host = dev; in _devm_cxl_dev_state_create()
677 cxlds->reg_map.resource = CXL_RESOURCE_NONE; in _devm_cxl_dev_state_create()
680 cxlds->cxl_mbox.host = dev; in _devm_cxl_dev_state_create()
682 return cxlds; in _devm_cxl_dev_state_create()
686 static struct cxl_memdev *cxl_memdev_alloc(struct cxl_dev_state *cxlds, in cxl_memdev_alloc() argument
710 dev->parent = cxlds->dev; in cxl_memdev_alloc()
729 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlmd->cxlds); in __cxl_memdev_ioctl()
730 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in __cxl_memdev_ioctl()
746 struct cxl_dev_state *cxlds; in cxl_memdev_ioctl() local
749 cxlds = cxlmd->cxlds; in cxl_memdev_ioctl()
750 if (cxlds && cxlds->type == CXL_DEVTYPE_CLASSMEM) in cxl_memdev_ioctl()
789 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_mem_get_fw_info()
824 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_mem_activate_fw()
856 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_mem_abort_fw_xfer()
891 struct cxl_dev_state *cxlds = &mds->cxlds; in cxl_fw_do_cancel() local
892 struct cxl_memdev *cxlmd = cxlds->cxlmd; in cxl_fw_do_cancel()
907 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_fw_prepare()
932 struct cxl_dev_state *cxlds = &mds->cxlds; in cxl_fw_write() local
933 struct cxl_mailbox *cxl_mbox = &cxlds->cxl_mbox; in cxl_fw_write()
934 struct cxl_memdev *cxlmd = cxlds->cxlmd; in cxl_fw_write()
1067 struct cxl_dev_state *cxlds = &mds->cxlds; in devm_cxl_setup_fw_upload() local
1068 struct cxl_mailbox *cxl_mbox = &cxlds->cxl_mbox; in devm_cxl_setup_fw_upload()
1069 struct device *dev = &cxlds->cxlmd->dev; in devm_cxl_setup_fw_upload()
1096 static int cxlmd_add(struct cxl_memdev *cxlmd, struct cxl_dev_state *cxlds) in cxlmd_add() argument
1100 cxlmd->cxlds = cxlds; in cxlmd_add()
1101 cxlds->cxlmd = cxlmd; in cxlmd_add()
1140 rc = devm_add_action_or_reset(cxlmd->cxlds->dev, cxl_memdev_unregister, in cxl_memdev_autoremove()
1152 struct cxl_memdev *__devm_cxl_add_memdev(struct cxl_dev_state *cxlds, in __devm_cxl_add_memdev() argument
1159 cxl_memdev_alloc(cxlds, &cxl_memdev_fops, attach); in __devm_cxl_add_memdev()
1168 rc = cxlmd_add(cxlmd, cxlds); in __devm_cxl_add_memdev()
1179 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in sanitize_teardown_notifier()
1198 struct cxl_dev_state *cxlds = cxlmd->cxlds; in devm_cxl_sanitize_setup_notifier() local
1199 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds); in devm_cxl_sanitize_setup_notifier()