Lines Matching refs:mds

44 	struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds);  in firmware_version_show()  local
46 if (!mds) in firmware_version_show()
48 return sysfs_emit(buf, "%.16s\n", mds->firmware_version); in firmware_version_show()
57 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds); in payload_max_show() local
59 if (!mds) in payload_max_show()
70 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds); in label_storage_size_show() local
72 if (!mds) in label_storage_size_show()
74 return sysfs_emit(buf, "%zu\n", mds->lsa_size); in label_storage_size_show()
136 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds); in security_state_show() local
137 unsigned long state = mds->security.state; in security_state_show()
142 if (mds->security.sanitize_active) in security_state_show()
524 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlmd->cxlds); in cxl_memdev_security_visible() local
527 !test_bit(CXL_SEC_ENABLED_SANITIZE, mds->security.enabled_cmds)) in cxl_memdev_security_visible()
531 !test_bit(CXL_SEC_ENABLED_SECURE_ERASE, mds->security.enabled_cmds)) in cxl_memdev_security_visible()
580 void set_exclusive_cxl_commands(struct cxl_memdev_state *mds, in set_exclusive_cxl_commands() argument
583 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in set_exclusive_cxl_commands()
596 void clear_exclusive_cxl_commands(struct cxl_memdev_state *mds, in clear_exclusive_cxl_commands() argument
599 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in clear_exclusive_cxl_commands()
676 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlmd->cxlds); in __cxl_memdev_ioctl() local
677 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in __cxl_memdev_ioctl()
734 static int cxl_mem_get_fw_info(struct cxl_memdev_state *mds) in cxl_mem_get_fw_info() argument
736 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_mem_get_fw_info()
751 mds->fw.num_slots = info.num_slots; in cxl_mem_get_fw_info()
752 mds->fw.cur_slot = FIELD_GET(CXL_FW_INFO_SLOT_INFO_CUR_MASK, in cxl_mem_get_fw_info()
769 static int cxl_mem_activate_fw(struct cxl_memdev_state *mds, int slot) in cxl_mem_activate_fw() argument
771 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_mem_activate_fw()
775 if (slot == 0 || slot > mds->fw.num_slots) in cxl_mem_activate_fw()
801 static int cxl_mem_abort_fw_xfer(struct cxl_memdev_state *mds) in cxl_mem_abort_fw_xfer() argument
803 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_mem_abort_fw_xfer()
830 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_cleanup() local
832 mds->fw.next_slot = 0; in cxl_fw_cleanup()
837 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_do_cancel() local
838 struct cxl_dev_state *cxlds = &mds->cxlds; in cxl_fw_do_cancel()
842 rc = cxl_mem_abort_fw_xfer(mds); in cxl_fw_do_cancel()
852 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_prepare() local
854 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_fw_prepare()
859 mds->fw.oneshot = struct_size(transfer, data, size) < in cxl_fw_prepare()
862 if (cxl_mem_get_fw_info(mds)) in cxl_fw_prepare()
869 if (test_and_clear_bit(CXL_FW_CANCEL, mds->fw.state)) in cxl_fw_prepare()
878 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_write() local
879 struct cxl_dev_state *cxlds = &mds->cxlds; in cxl_fw_write()
909 if (test_and_clear_bit(CXL_FW_CANCEL, mds->fw.state)) in cxl_fw_write()
917 mds->fw.next_slot = (mds->fw.cur_slot % mds->fw.num_slots) + 1; in cxl_fw_write()
926 if (mds->fw.oneshot) { in cxl_fw_write()
928 transfer->slot = mds->fw.next_slot; in cxl_fw_write()
934 transfer->slot = mds->fw.next_slot; in cxl_fw_write()
957 if (mds->fw.oneshot || remaining == 0) { in cxl_fw_write()
959 mds->fw.next_slot); in cxl_fw_write()
960 rc = cxl_mem_activate_fw(mds, mds->fw.next_slot); in cxl_fw_write()
978 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_poll_complete() local
986 if (test_and_clear_bit(CXL_FW_CANCEL, mds->fw.state)) in cxl_fw_poll_complete()
994 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_cancel() local
996 set_bit(CXL_FW_CANCEL, mds->fw.state); in cxl_fw_cancel()
1012 int devm_cxl_setup_fw_upload(struct device *host, struct cxl_memdev_state *mds) in devm_cxl_setup_fw_upload() argument
1014 struct cxl_dev_state *cxlds = &mds->cxlds; in devm_cxl_setup_fw_upload()
1023 &cxl_memdev_fw_ops, mds); in devm_cxl_setup_fw_upload()
1086 struct cxl_memdev_state *mds = data; in sanitize_teardown_notifier() local
1087 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in sanitize_teardown_notifier()
1095 state = mds->security.sanitize_node; in sanitize_teardown_notifier()
1096 mds->security.sanitize_node = NULL; in sanitize_teardown_notifier()
1099 cancel_delayed_work_sync(&mds->security.poll_dwork); in sanitize_teardown_notifier()
1107 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds); in devm_cxl_sanitize_setup_notifier() local
1110 if (!test_bit(CXL_SEC_ENABLED_SANITIZE, mds->security.enabled_cmds)) in devm_cxl_sanitize_setup_notifier()
1120 mds->security.sanitize_node = sysfs_get_dirent(sec, "state"); in devm_cxl_sanitize_setup_notifier()
1122 if (!mds->security.sanitize_node) in devm_cxl_sanitize_setup_notifier()
1125 return devm_add_action_or_reset(host, sanitize_teardown_notifier, mds); in devm_cxl_sanitize_setup_notifier()