| /* SPDX-License-Identifier: GPL-2.0-only */ |
| /* Copyright(c) 2024 Intel Corporation */ |
| #ifndef QAT_MIG_DEV_H_ |
| #define QAT_MIG_DEV_H_ |
| |
| struct pci_dev; |
| |
| struct qat_mig_dev { |
| void *parent_accel_dev; |
| u8 *state; |
| u32 setup_size; |
| u32 remote_setup_size; |
| u32 state_size; |
| s32 vf_id; |
| }; |
| |
| struct qat_mig_dev *qat_vfmig_create(struct pci_dev *pdev, int vf_id); |
| int qat_vfmig_init(struct qat_mig_dev *mdev); |
| void qat_vfmig_cleanup(struct qat_mig_dev *mdev); |
| void qat_vfmig_reset(struct qat_mig_dev *mdev); |
| int qat_vfmig_open(struct qat_mig_dev *mdev); |
| void qat_vfmig_close(struct qat_mig_dev *mdev); |
| int qat_vfmig_suspend(struct qat_mig_dev *mdev); |
| int qat_vfmig_resume(struct qat_mig_dev *mdev); |
| int qat_vfmig_save_state(struct qat_mig_dev *mdev); |
| int qat_vfmig_save_setup(struct qat_mig_dev *mdev); |
| int qat_vfmig_load_state(struct qat_mig_dev *mdev); |
| int qat_vfmig_load_setup(struct qat_mig_dev *mdev, int size); |
| void qat_vfmig_destroy(struct qat_mig_dev *mdev); |
| |
| #endif /*QAT_MIG_DEV_H_*/ |