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()
205 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlmd->cxlds); in cxl_memdev_has_poison_cmd() local
207 return test_bit(cmd, mds->poison.enabled_cmds); in cxl_memdev_has_poison_cmd()
538 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlmd->cxlds); in cxl_memdev_security_visible() local
541 !test_bit(CXL_SEC_ENABLED_SANITIZE, mds->security.enabled_cmds)) in cxl_memdev_security_visible()
545 !test_bit(CXL_SEC_ENABLED_SECURE_ERASE, mds->security.enabled_cmds)) in cxl_memdev_security_visible()
594 void set_exclusive_cxl_commands(struct cxl_memdev_state *mds, in set_exclusive_cxl_commands() argument
597 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in set_exclusive_cxl_commands()
610 void clear_exclusive_cxl_commands(struct cxl_memdev_state *mds, in clear_exclusive_cxl_commands() argument
613 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in clear_exclusive_cxl_commands()
702 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlmd->cxlds); in __cxl_memdev_ioctl() local
703 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in __cxl_memdev_ioctl()
760 static int cxl_mem_get_fw_info(struct cxl_memdev_state *mds) in cxl_mem_get_fw_info() argument
762 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_mem_get_fw_info()
777 mds->fw.num_slots = info.num_slots; in cxl_mem_get_fw_info()
778 mds->fw.cur_slot = FIELD_GET(CXL_FW_INFO_SLOT_INFO_CUR_MASK, in cxl_mem_get_fw_info()
795 static int cxl_mem_activate_fw(struct cxl_memdev_state *mds, int slot) in cxl_mem_activate_fw() argument
797 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_mem_activate_fw()
801 if (slot == 0 || slot > mds->fw.num_slots) in cxl_mem_activate_fw()
827 static int cxl_mem_abort_fw_xfer(struct cxl_memdev_state *mds) in cxl_mem_abort_fw_xfer() argument
829 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_mem_abort_fw_xfer()
856 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_cleanup() local
858 mds->fw.next_slot = 0; in cxl_fw_cleanup()
863 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_do_cancel() local
864 struct cxl_dev_state *cxlds = &mds->cxlds; in cxl_fw_do_cancel()
868 rc = cxl_mem_abort_fw_xfer(mds); in cxl_fw_do_cancel()
878 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_prepare() local
880 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in cxl_fw_prepare()
885 mds->fw.oneshot = struct_size(transfer, data, size) < in cxl_fw_prepare()
888 if (cxl_mem_get_fw_info(mds)) in cxl_fw_prepare()
895 if (test_and_clear_bit(CXL_FW_CANCEL, mds->fw.state)) in cxl_fw_prepare()
904 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_write() local
905 struct cxl_dev_state *cxlds = &mds->cxlds; in cxl_fw_write()
935 if (test_and_clear_bit(CXL_FW_CANCEL, mds->fw.state)) in cxl_fw_write()
943 mds->fw.next_slot = (mds->fw.cur_slot % mds->fw.num_slots) + 1; in cxl_fw_write()
952 if (mds->fw.oneshot) { in cxl_fw_write()
954 transfer->slot = mds->fw.next_slot; in cxl_fw_write()
960 transfer->slot = mds->fw.next_slot; in cxl_fw_write()
983 if (mds->fw.oneshot || remaining == 0) { in cxl_fw_write()
985 mds->fw.next_slot); in cxl_fw_write()
986 rc = cxl_mem_activate_fw(mds, mds->fw.next_slot); in cxl_fw_write()
1004 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_poll_complete() local
1012 if (test_and_clear_bit(CXL_FW_CANCEL, mds->fw.state)) in cxl_fw_poll_complete()
1020 struct cxl_memdev_state *mds = fwl->dd_handle; in cxl_fw_cancel() local
1022 set_bit(CXL_FW_CANCEL, mds->fw.state); in cxl_fw_cancel()
1038 int devm_cxl_setup_fw_upload(struct device *host, struct cxl_memdev_state *mds) in devm_cxl_setup_fw_upload() argument
1040 struct cxl_dev_state *cxlds = &mds->cxlds; in devm_cxl_setup_fw_upload()
1049 &cxl_memdev_fw_ops, mds); in devm_cxl_setup_fw_upload()
1146 struct cxl_memdev_state *mds = data; in sanitize_teardown_notifier() local
1147 struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox; in sanitize_teardown_notifier()
1155 state = mds->security.sanitize_node; in sanitize_teardown_notifier()
1156 mds->security.sanitize_node = NULL; in sanitize_teardown_notifier()
1159 cancel_delayed_work_sync(&mds->security.poll_dwork); in sanitize_teardown_notifier()
1167 struct cxl_memdev_state *mds = to_cxl_memdev_state(cxlds); in devm_cxl_sanitize_setup_notifier() local
1170 if (!test_bit(CXL_SEC_ENABLED_SANITIZE, mds->security.enabled_cmds)) in devm_cxl_sanitize_setup_notifier()
1180 mds->security.sanitize_node = sysfs_get_dirent(sec, "state"); in devm_cxl_sanitize_setup_notifier()
1182 if (!mds->security.sanitize_node) in devm_cxl_sanitize_setup_notifier()
1185 return devm_add_action_or_reset(host, sanitize_teardown_notifier, mds); in devm_cxl_sanitize_setup_notifier()