summaryrefslogtreecommitdiffstats
path: root/include/linux/qat/qat_mig_dev.h
blob: dbbb6a063dd25cb1509a756b5dc437cc7e1439f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/* 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_*/