Lines Matching refs:cmd_buf
546 static void snp_populate_cmd_buf_desc_list(int cmd, void *cmd_buf, in snp_populate_cmd_buf_desc_list() argument
551 struct sev_data_pdh_cert_export *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
560 struct sev_data_get_id *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
567 struct sev_data_pek_csr *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
574 struct sev_data_launch_update_data *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
582 struct sev_data_launch_update_vmsa *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
590 struct sev_data_launch_measure *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
597 struct sev_data_launch_secret *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
605 struct sev_data_dbg *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
613 struct sev_data_dbg *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
621 struct sev_data_attestation_report *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
628 struct sev_data_send_start *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
635 struct sev_data_send_update_data *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
644 struct sev_data_send_update_vmsa *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
653 struct sev_data_receive_update_data *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
661 struct sev_data_receive_update_vmsa *data = cmd_buf; in snp_populate_cmd_buf_desc_list()
735 static int snp_map_cmd_buf_desc_list(int cmd, void *cmd_buf, struct cmd_buf_desc *desc_list) in snp_map_cmd_buf_desc_list() argument
739 snp_populate_cmd_buf_desc_list(cmd, cmd_buf, desc_list); in snp_map_cmd_buf_desc_list()
806 static int snp_prep_cmd_buf(int cmd, void *cmd_buf, struct cmd_buf_desc *desc_list) in snp_prep_cmd_buf() argument
811 if (snp_map_cmd_buf_desc_list(cmd, cmd_buf, desc_list)) in snp_prep_cmd_buf()
819 if (rmp_mark_pages_firmware(__pa(cmd_buf), 1, true)) in snp_prep_cmd_buf()
826 static int snp_reclaim_cmd_buf(int cmd, void *cmd_buf) in snp_reclaim_cmd_buf() argument
836 if (snp_reclaim_pages(__pa(cmd_buf), 1, true)) in snp_reclaim_cmd_buf()
850 void *cmd_buf; in __sev_do_cmd_locked() local
880 cmd_buf = sev->cmd_buf; in __sev_do_cmd_locked()
883 cmd_buf = sev->cmd_buf_backup; in __sev_do_cmd_locked()
891 memcpy(cmd_buf, data, buf_len); in __sev_do_cmd_locked()
897 ret = snp_prep_cmd_buf(cmd, cmd_buf, desc_list); in __sev_do_cmd_locked()
905 cmd_buf = sev->cmd_buf; in __sev_do_cmd_locked()
909 phys_lsb = data ? lower_32_bits(__psp_pa(cmd_buf)) : 0; in __sev_do_cmd_locked()
910 phys_msb = data ? upper_32_bits(__psp_pa(cmd_buf)) : 0; in __sev_do_cmd_locked()
984 ret_reclaim = snp_reclaim_cmd_buf(cmd, cmd_buf); in __sev_do_cmd_locked()
992 memcpy(data, cmd_buf, buf_len); in __sev_do_cmd_locked()
2385 sev->cmd_buf = (void *)devm_get_free_pages(dev, GFP_KERNEL, 1); in sev_dev_init()
2386 if (!sev->cmd_buf) in sev_dev_init()
2389 sev->cmd_buf_backup = (uint8_t *)sev->cmd_buf + PAGE_SIZE; in sev_dev_init()
2418 devm_free_pages(dev, (unsigned long)sev->cmd_buf); in sev_dev_init()