1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* Copyright(c) 2023 Advanced Micro Devices, Inc. */ 3 4 #ifndef _CMDS_H_ 5 #define _CMDS_H_ 6 7 int pds_vfio_register_client_cmd(struct pds_vfio_pci_device *pds_vfio); 8 void pds_vfio_unregister_client_cmd(struct pds_vfio_pci_device *pds_vfio); 9 int pds_vfio_suspend_device_cmd(struct pds_vfio_pci_device *pds_vfio, u8 type); 10 int pds_vfio_resume_device_cmd(struct pds_vfio_pci_device *pds_vfio, u8 type); 11 int pds_vfio_get_lm_state_size_cmd(struct pds_vfio_pci_device *pds_vfio, u64 *size); 12 int pds_vfio_get_lm_state_cmd(struct pds_vfio_pci_device *pds_vfio); 13 int pds_vfio_set_lm_state_cmd(struct pds_vfio_pci_device *pds_vfio); 14 void pds_vfio_send_host_vf_lm_status_cmd(struct pds_vfio_pci_device *pds_vfio, 15 enum pds_lm_host_vf_status vf_status); 16 int pds_vfio_dirty_status_cmd(struct pds_vfio_pci_device *pds_vfio, 17 u64 regions_dma, u8 *max_regions, 18 u8 *num_regions); 19 int pds_vfio_dirty_enable_cmd(struct pds_vfio_pci_device *pds_vfio, 20 u64 regions_dma, u8 num_regions); 21 int pds_vfio_dirty_disable_cmd(struct pds_vfio_pci_device *pds_vfio); 22 int pds_vfio_dirty_seq_ack_cmd(struct pds_vfio_pci_device *pds_vfio, 23 u64 sgl_dma, u16 num_sge, u32 offset, 24 u32 total_len, bool read_seq); 25 #endif /* _CMDS_H_ */ 26