Lines Matching refs:mdata

105 	struct cxl_mockmem_data *mdata = dev_get_drvdata(dev);  in event_find_log()  local
109 return &mdata->mes.mock_logs[log_type]; in event_find_log()
265 struct cxl_mockmem_data *mdata = dev_get_drvdata(dev); in cxl_mock_event_trigger() local
266 struct mock_event_store *mes = &mdata->mes; in cxl_mock_event_trigger()
503 struct cxl_mockmem_data *mdata = dev_get_drvdata(cxlds->dev); in mock_get_security_state() local
511 memcpy(cmd->payload_out, &mdata->security_state, sizeof(u32)); in mock_get_security_state()
516 static void master_plimit_check(struct cxl_mockmem_data *mdata) in master_plimit_check() argument
518 if (mdata->master_limit == PASS_TRY_LIMIT) in master_plimit_check()
520 mdata->master_limit++; in master_plimit_check()
521 if (mdata->master_limit == PASS_TRY_LIMIT) in master_plimit_check()
522 mdata->security_state |= CXL_PMEM_SEC_STATE_MASTER_PLIMIT; in master_plimit_check()
525 static void user_plimit_check(struct cxl_mockmem_data *mdata) in user_plimit_check() argument
527 if (mdata->user_limit == PASS_TRY_LIMIT) in user_plimit_check()
529 mdata->user_limit++; in user_plimit_check()
530 if (mdata->user_limit == PASS_TRY_LIMIT) in user_plimit_check()
531 mdata->security_state |= CXL_PMEM_SEC_STATE_USER_PLIMIT; in user_plimit_check()
536 struct cxl_mockmem_data *mdata = dev_get_drvdata(cxlds->dev); in mock_set_passphrase() local
545 if (mdata->security_state & CXL_PMEM_SEC_STATE_FROZEN) { in mock_set_passphrase()
553 if (mdata->security_state & CXL_PMEM_SEC_STATE_MASTER_PLIMIT) { in mock_set_passphrase()
561 if (mdata->security_state & CXL_PMEM_SEC_STATE_USER_PASS_SET) { in mock_set_passphrase()
565 if (memcmp(mdata->master_pass, set_pass->old_pass, NVDIMM_PASSPHRASE_LEN)) { in mock_set_passphrase()
566 master_plimit_check(mdata); in mock_set_passphrase()
570 memcpy(mdata->master_pass, set_pass->new_pass, NVDIMM_PASSPHRASE_LEN); in mock_set_passphrase()
571 mdata->security_state |= CXL_PMEM_SEC_STATE_MASTER_PASS_SET; in mock_set_passphrase()
575 if (mdata->security_state & CXL_PMEM_SEC_STATE_USER_PLIMIT) { in mock_set_passphrase()
579 if (memcmp(mdata->user_pass, set_pass->old_pass, NVDIMM_PASSPHRASE_LEN)) { in mock_set_passphrase()
580 user_plimit_check(mdata); in mock_set_passphrase()
584 memcpy(mdata->user_pass, set_pass->new_pass, NVDIMM_PASSPHRASE_LEN); in mock_set_passphrase()
585 mdata->security_state |= CXL_PMEM_SEC_STATE_USER_PASS_SET; in mock_set_passphrase()
596 struct cxl_mockmem_data *mdata = dev_get_drvdata(cxlds->dev); in mock_disable_passphrase() local
605 if (mdata->security_state & CXL_PMEM_SEC_STATE_FROZEN) { in mock_disable_passphrase()
613 if (mdata->security_state & CXL_PMEM_SEC_STATE_MASTER_PLIMIT) { in mock_disable_passphrase()
618 if (!(mdata->security_state & CXL_PMEM_SEC_STATE_MASTER_PASS_SET)) { in mock_disable_passphrase()
623 if (memcmp(dis_pass->pass, mdata->master_pass, NVDIMM_PASSPHRASE_LEN)) { in mock_disable_passphrase()
624 master_plimit_check(mdata); in mock_disable_passphrase()
629 mdata->master_limit = 0; in mock_disable_passphrase()
630 memset(mdata->master_pass, 0, NVDIMM_PASSPHRASE_LEN); in mock_disable_passphrase()
631 mdata->security_state &= ~CXL_PMEM_SEC_STATE_MASTER_PASS_SET; in mock_disable_passphrase()
635 if (mdata->security_state & CXL_PMEM_SEC_STATE_USER_PLIMIT) { in mock_disable_passphrase()
640 if (!(mdata->security_state & CXL_PMEM_SEC_STATE_USER_PASS_SET)) { in mock_disable_passphrase()
645 if (memcmp(dis_pass->pass, mdata->user_pass, NVDIMM_PASSPHRASE_LEN)) { in mock_disable_passphrase()
646 user_plimit_check(mdata); in mock_disable_passphrase()
651 mdata->user_limit = 0; in mock_disable_passphrase()
652 memset(mdata->user_pass, 0, NVDIMM_PASSPHRASE_LEN); in mock_disable_passphrase()
653 mdata->security_state &= ~(CXL_PMEM_SEC_STATE_USER_PASS_SET | in mock_disable_passphrase()
667 struct cxl_mockmem_data *mdata = dev_get_drvdata(cxlds->dev); in mock_freeze_security() local
675 if (mdata->security_state & CXL_PMEM_SEC_STATE_FROZEN) in mock_freeze_security()
678 mdata->security_state |= CXL_PMEM_SEC_STATE_FROZEN; in mock_freeze_security()
684 struct cxl_mockmem_data *mdata = dev_get_drvdata(cxlds->dev); in mock_unlock_security() local
692 if (mdata->security_state & CXL_PMEM_SEC_STATE_FROZEN) { in mock_unlock_security()
697 if (!(mdata->security_state & CXL_PMEM_SEC_STATE_USER_PASS_SET)) { in mock_unlock_security()
702 if (mdata->security_state & CXL_PMEM_SEC_STATE_USER_PLIMIT) { in mock_unlock_security()
707 if (!(mdata->security_state & CXL_PMEM_SEC_STATE_LOCKED)) { in mock_unlock_security()
712 if (memcmp(cmd->payload_in, mdata->user_pass, NVDIMM_PASSPHRASE_LEN)) { in mock_unlock_security()
713 if (++mdata->user_limit == PASS_TRY_LIMIT) in mock_unlock_security()
714 mdata->security_state |= CXL_PMEM_SEC_STATE_USER_PLIMIT; in mock_unlock_security()
719 mdata->user_limit = 0; in mock_unlock_security()
720 mdata->security_state &= ~CXL_PMEM_SEC_STATE_LOCKED; in mock_unlock_security()
727 struct cxl_mockmem_data *mdata = dev_get_drvdata(cxlds->dev); in mock_passphrase_secure_erase() local
737 if (mdata->security_state & CXL_PMEM_SEC_STATE_FROZEN) { in mock_passphrase_secure_erase()
742 if (mdata->security_state & CXL_PMEM_SEC_STATE_USER_PLIMIT && in mock_passphrase_secure_erase()
748 if (mdata->security_state & CXL_PMEM_SEC_STATE_MASTER_PLIMIT && in mock_passphrase_secure_erase()
763 if (mdata->security_state & CXL_PMEM_SEC_STATE_MASTER_PASS_SET) { in mock_passphrase_secure_erase()
764 if (memcmp(mdata->master_pass, erase->pass, in mock_passphrase_secure_erase()
766 master_plimit_check(mdata); in mock_passphrase_secure_erase()
770 mdata->master_limit = 0; in mock_passphrase_secure_erase()
771 mdata->user_limit = 0; in mock_passphrase_secure_erase()
772 mdata->security_state &= ~CXL_PMEM_SEC_STATE_USER_PASS_SET; in mock_passphrase_secure_erase()
773 memset(mdata->user_pass, 0, NVDIMM_PASSPHRASE_LEN); in mock_passphrase_secure_erase()
774 mdata->security_state &= ~CXL_PMEM_SEC_STATE_LOCKED; in mock_passphrase_secure_erase()
794 if (mdata->security_state & CXL_PMEM_SEC_STATE_USER_PASS_SET) { in mock_passphrase_secure_erase()
795 if (memcmp(mdata->user_pass, erase->pass, in mock_passphrase_secure_erase()
797 user_plimit_check(mdata); in mock_passphrase_secure_erase()
801 mdata->user_limit = 0; in mock_passphrase_secure_erase()
802 mdata->security_state &= ~CXL_PMEM_SEC_STATE_USER_PASS_SET; in mock_passphrase_secure_erase()
803 memset(mdata->user_pass, 0, NVDIMM_PASSPHRASE_LEN); in mock_passphrase_secure_erase()
826 struct cxl_mockmem_data *mdata = dev_get_drvdata(cxlds->dev); in mock_get_lsa() local
827 void *lsa = mdata->lsa; in mock_get_lsa()
846 struct cxl_mockmem_data *mdata = dev_get_drvdata(cxlds->dev); in mock_set_lsa() local
847 void *lsa = mdata->lsa; in mock_set_lsa()
981 struct cxl_mockmem_data *mdata; in cxl_mock_mem_probe() local
984 mdata = devm_kzalloc(dev, sizeof(*mdata), GFP_KERNEL); in cxl_mock_mem_probe()
985 if (!mdata) in cxl_mock_mem_probe()
987 dev_set_drvdata(dev, mdata); in cxl_mock_mem_probe()
989 mdata->lsa = vmalloc(LSA_SIZE); in cxl_mock_mem_probe()
990 if (!mdata->lsa) in cxl_mock_mem_probe()
992 rc = devm_add_action_or_reset(dev, label_area_release, mdata->lsa); in cxl_mock_mem_probe()
1003 cxlds->event.buf = (struct cxl_get_event_payload *) mdata->event_buf; in cxl_mock_mem_probe()
1021 mdata->mes.cxlds = cxlds; in cxl_mock_mem_probe()
1022 cxl_mock_add_event_logs(&mdata->mes); in cxl_mock_mem_probe()
1036 struct cxl_mockmem_data *mdata = dev_get_drvdata(dev); in security_lock_show() local
1039 !!(mdata->security_state & CXL_PMEM_SEC_STATE_LOCKED)); in security_lock_show()
1045 struct cxl_mockmem_data *mdata = dev_get_drvdata(dev); in security_lock_store() local
1054 if (!(mdata->security_state & CXL_PMEM_SEC_STATE_USER_PASS_SET)) in security_lock_store()
1056 mdata->security_state |= CXL_PMEM_SEC_STATE_LOCKED; in security_lock_store()
1057 mdata->security_state &= ~mask; in security_lock_store()