Lines Matching refs:cmd

219 static int mock_get_event(struct device *dev, struct cxl_mbox_cmd *cmd)  in mock_get_event()  argument
227 if (cmd->size_in != sizeof(log_type)) in mock_get_event()
230 if (cmd->size_out < struct_size(pl, records, CXL_TEST_EVENT_CNT)) in mock_get_event()
233 log_type = *((u8 *)cmd->payload_in); in mock_get_event()
237 memset(cmd->payload_out, 0, cmd->size_out); in mock_get_event()
243 pl = cmd->payload_out; in mock_get_event()
272 static int mock_clear_event(struct device *dev, struct cxl_mbox_cmd *cmd) in mock_clear_event() argument
274 struct cxl_mbox_clear_event_payload *pl = cmd->payload_in; in mock_clear_event()
418 struct cxl_mbox_cmd *cmd) in mock_set_timestamp() argument
421 struct cxl_mbox_set_timestamp_in *ts = cmd->payload_in; in mock_set_timestamp()
423 if (cmd->size_in != sizeof(*ts)) in mock_set_timestamp()
426 if (cmd->size_out != 0) in mock_set_timestamp()
479 static int mock_gsl(struct cxl_mbox_cmd *cmd) in mock_gsl() argument
481 if (cmd->size_out < sizeof(mock_gsl_payload)) in mock_gsl()
484 memcpy(cmd->payload_out, &mock_gsl_payload, sizeof(mock_gsl_payload)); in mock_gsl()
485 cmd->size_out = sizeof(mock_gsl_payload); in mock_gsl()
490 static int mock_get_log(struct cxl_memdev_state *mds, struct cxl_mbox_cmd *cmd) in mock_get_log() argument
492 struct cxl_mbox_get_log *gl = cmd->payload_in; in mock_get_log()
498 if (cmd->size_in < sizeof(*gl)) in mock_get_log()
506 if (length > cmd->size_out) in mock_get_log()
509 memcpy(cmd->payload_out, data + offset, length); in mock_get_log()
514 static int mock_rcd_id(struct cxl_mbox_cmd *cmd) in mock_rcd_id() argument
524 if (cmd->size_out < sizeof(id)) in mock_rcd_id()
527 memcpy(cmd->payload_out, &id, sizeof(id)); in mock_rcd_id()
532 static int mock_id(struct cxl_mbox_cmd *cmd) in mock_id() argument
546 if (cmd->size_out < sizeof(id)) in mock_id()
549 memcpy(cmd->payload_out, &id, sizeof(id)); in mock_id()
554 static int mock_partition_info(struct cxl_mbox_cmd *cmd) in mock_partition_info() argument
563 if (cmd->size_out < sizeof(pi)) in mock_partition_info()
566 memcpy(cmd->payload_out, &pi, sizeof(pi)); in mock_partition_info()
572 struct cxl_mbox_cmd *cmd) in mock_sanitize() argument
574 if (cmd->size_in != 0) in mock_sanitize()
577 if (cmd->size_out != 0) in mock_sanitize()
581 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_sanitize()
585 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_sanitize()
593 struct cxl_mbox_cmd *cmd) in mock_secure_erase() argument
595 if (cmd->size_in != 0) in mock_secure_erase()
598 if (cmd->size_out != 0) in mock_secure_erase()
602 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_secure_erase()
607 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_secure_erase()
615 struct cxl_mbox_cmd *cmd) in mock_get_security_state() argument
617 if (cmd->size_in) in mock_get_security_state()
620 if (cmd->size_out != sizeof(u32)) in mock_get_security_state()
623 memcpy(cmd->payload_out, &mdata->security_state, sizeof(u32)); in mock_get_security_state()
647 struct cxl_mbox_cmd *cmd) in mock_set_passphrase() argument
651 if (cmd->size_in != sizeof(*set_pass)) in mock_set_passphrase()
654 if (cmd->size_out != 0) in mock_set_passphrase()
658 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_set_passphrase()
662 set_pass = cmd->payload_in; in mock_set_passphrase()
666 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_set_passphrase()
674 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_set_passphrase()
679 cmd->return_code = CXL_MBOX_CMD_RC_PASSPHRASE; in mock_set_passphrase()
688 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_set_passphrase()
693 cmd->return_code = CXL_MBOX_CMD_RC_PASSPHRASE; in mock_set_passphrase()
701 cmd->return_code = CXL_MBOX_CMD_RC_INPUT; in mock_set_passphrase()
707 struct cxl_mbox_cmd *cmd) in mock_disable_passphrase() argument
711 if (cmd->size_in != sizeof(*dis_pass)) in mock_disable_passphrase()
714 if (cmd->size_out != 0) in mock_disable_passphrase()
718 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_disable_passphrase()
722 dis_pass = cmd->payload_in; in mock_disable_passphrase()
726 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_disable_passphrase()
731 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_disable_passphrase()
737 cmd->return_code = CXL_MBOX_CMD_RC_PASSPHRASE; in mock_disable_passphrase()
748 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_disable_passphrase()
753 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_disable_passphrase()
759 cmd->return_code = CXL_MBOX_CMD_RC_PASSPHRASE; in mock_disable_passphrase()
770 cmd->return_code = CXL_MBOX_CMD_RC_INPUT; in mock_disable_passphrase()
778 struct cxl_mbox_cmd *cmd) in mock_freeze_security() argument
780 if (cmd->size_in != 0) in mock_freeze_security()
783 if (cmd->size_out != 0) in mock_freeze_security()
794 struct cxl_mbox_cmd *cmd) in mock_unlock_security() argument
796 if (cmd->size_in != NVDIMM_PASSPHRASE_LEN) in mock_unlock_security()
799 if (cmd->size_out != 0) in mock_unlock_security()
803 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_unlock_security()
808 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_unlock_security()
813 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_unlock_security()
818 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_unlock_security()
822 if (memcmp(cmd->payload_in, mdata->user_pass, NVDIMM_PASSPHRASE_LEN)) { in mock_unlock_security()
825 cmd->return_code = CXL_MBOX_CMD_RC_PASSPHRASE; in mock_unlock_security()
835 struct cxl_mbox_cmd *cmd) in mock_passphrase_secure_erase() argument
839 if (cmd->size_in != sizeof(*erase)) in mock_passphrase_secure_erase()
842 if (cmd->size_out != 0) in mock_passphrase_secure_erase()
845 erase = cmd->payload_in; in mock_passphrase_secure_erase()
847 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_passphrase_secure_erase()
853 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_passphrase_secure_erase()
859 cmd->return_code = CXL_MBOX_CMD_RC_SECURITY; in mock_passphrase_secure_erase()
876 cmd->return_code = CXL_MBOX_CMD_RC_PASSPHRASE; in mock_passphrase_secure_erase()
907 cmd->return_code = CXL_MBOX_CMD_RC_PASSPHRASE; in mock_passphrase_secure_erase()
933 struct cxl_mbox_cmd *cmd) in mock_get_lsa() argument
935 struct cxl_mbox_get_lsa *get_lsa = cmd->payload_in; in mock_get_lsa()
939 if (sizeof(*get_lsa) > cmd->size_in) in mock_get_lsa()
945 if (length > cmd->size_out) in mock_get_lsa()
948 memcpy(cmd->payload_out, lsa + offset, length); in mock_get_lsa()
953 struct cxl_mbox_cmd *cmd) in mock_set_lsa() argument
955 struct cxl_mbox_set_lsa *set_lsa = cmd->payload_in; in mock_set_lsa()
959 if (sizeof(*set_lsa) > cmd->size_in) in mock_set_lsa()
962 length = cmd->size_in - sizeof(*set_lsa); in mock_set_lsa()
970 static int mock_health_info(struct cxl_mbox_cmd *cmd) in mock_health_info() argument
992 if (cmd->size_out < sizeof(health_info)) in mock_health_info()
995 memcpy(cmd->payload_out, &health_info, sizeof(health_info)); in mock_health_info()
1037 struct cxl_mbox_cmd *cmd) in mock_get_poison() argument
1039 struct cxl_mbox_poison_in *pi = cmd->payload_in; in mock_get_poison()
1049 memcpy(cmd->payload_out, po, struct_size(po, record, nr_records)); in mock_get_poison()
1050 cmd->size_out = struct_size(po, record, nr_records); in mock_get_poison()
1101 struct cxl_mbox_cmd *cmd) in mock_inject_poison() argument
1103 struct cxl_mbox_inject_poison *pi = cmd->payload_in; in mock_inject_poison()
1130 struct cxl_mbox_cmd *cmd) in mock_clear_poison() argument
1132 struct cxl_mbox_clear_poison *pi = cmd->payload_in; in mock_clear_poison()
1188 struct cxl_mbox_cmd *cmd) in mock_fw_info() argument
1202 if (cmd->size_out < sizeof(fw_info)) in mock_fw_info()
1205 memcpy(cmd->payload_out, &fw_info, sizeof(fw_info)); in mock_fw_info()
1210 struct cxl_mbox_cmd *cmd) in mock_transfer_fw() argument
1212 struct cxl_mbox_transfer_fw *transfer = cmd->payload_in; in mock_transfer_fw()
1217 length = cmd->size_in - sizeof(*transfer); in mock_transfer_fw()
1245 struct cxl_mbox_cmd *cmd) in mock_activate_fw() argument
1247 struct cxl_mbox_activate_fw *activate = cmd->payload_in; in mock_activate_fw()
1266 struct cxl_mbox_cmd *cmd) in cxl_mock_mbox_send() argument
1273 switch (cmd->opcode) { in cxl_mock_mbox_send()
1275 rc = mock_set_timestamp(cxlds, cmd); in cxl_mock_mbox_send()
1278 rc = mock_gsl(cmd); in cxl_mock_mbox_send()
1281 rc = mock_get_log(mds, cmd); in cxl_mock_mbox_send()
1285 rc = mock_rcd_id(cmd); in cxl_mock_mbox_send()
1287 rc = mock_id(cmd); in cxl_mock_mbox_send()
1290 rc = mock_get_lsa(mdata, cmd); in cxl_mock_mbox_send()
1293 rc = mock_partition_info(cmd); in cxl_mock_mbox_send()
1296 rc = mock_get_event(dev, cmd); in cxl_mock_mbox_send()
1299 rc = mock_clear_event(dev, cmd); in cxl_mock_mbox_send()
1302 rc = mock_set_lsa(mdata, cmd); in cxl_mock_mbox_send()
1305 rc = mock_health_info(cmd); in cxl_mock_mbox_send()
1308 rc = mock_sanitize(mdata, cmd); in cxl_mock_mbox_send()
1311 rc = mock_secure_erase(mdata, cmd); in cxl_mock_mbox_send()
1314 rc = mock_get_security_state(mdata, cmd); in cxl_mock_mbox_send()
1317 rc = mock_set_passphrase(mdata, cmd); in cxl_mock_mbox_send()
1320 rc = mock_disable_passphrase(mdata, cmd); in cxl_mock_mbox_send()
1323 rc = mock_freeze_security(mdata, cmd); in cxl_mock_mbox_send()
1326 rc = mock_unlock_security(mdata, cmd); in cxl_mock_mbox_send()
1329 rc = mock_passphrase_secure_erase(mdata, cmd); in cxl_mock_mbox_send()
1332 rc = mock_get_poison(cxlds, cmd); in cxl_mock_mbox_send()
1335 rc = mock_inject_poison(cxlds, cmd); in cxl_mock_mbox_send()
1338 rc = mock_clear_poison(cxlds, cmd); in cxl_mock_mbox_send()
1341 rc = mock_fw_info(mdata, cmd); in cxl_mock_mbox_send()
1344 rc = mock_transfer_fw(mdata, cmd); in cxl_mock_mbox_send()
1347 rc = mock_activate_fw(mdata, cmd); in cxl_mock_mbox_send()
1353 dev_dbg(dev, "opcode: %#x sz_in: %zd sz_out: %zd rc: %d\n", cmd->opcode, in cxl_mock_mbox_send()
1354 cmd->size_in, cmd->size_out, rc); in cxl_mock_mbox_send()