1*9f583bddSPankaj Gupta /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2*9f583bddSPankaj Gupta /*
3*9f583bddSPankaj Gupta  * Definitions for virtio-pmem devices.
4*9f583bddSPankaj Gupta  *
5*9f583bddSPankaj Gupta  * Copyright (C) 2019 Red Hat, Inc.
6*9f583bddSPankaj Gupta  *
7*9f583bddSPankaj Gupta  * Author(s): Pankaj Gupta <pagupta@redhat.com>
8*9f583bddSPankaj Gupta  */
9*9f583bddSPankaj Gupta 
10*9f583bddSPankaj Gupta #ifndef _UAPI_LINUX_VIRTIO_PMEM_H
11*9f583bddSPankaj Gupta #define _UAPI_LINUX_VIRTIO_PMEM_H
12*9f583bddSPankaj Gupta 
13*9f583bddSPankaj Gupta #include "standard-headers/linux/types.h"
14*9f583bddSPankaj Gupta #include "standard-headers/linux/virtio_ids.h"
15*9f583bddSPankaj Gupta #include "standard-headers/linux/virtio_config.h"
16*9f583bddSPankaj Gupta 
17*9f583bddSPankaj Gupta struct virtio_pmem_config {
18*9f583bddSPankaj Gupta 	uint64_t start;
19*9f583bddSPankaj Gupta 	uint64_t size;
20*9f583bddSPankaj Gupta };
21*9f583bddSPankaj Gupta 
22*9f583bddSPankaj Gupta #define VIRTIO_PMEM_REQ_TYPE_FLUSH      0
23*9f583bddSPankaj Gupta 
24*9f583bddSPankaj Gupta struct virtio_pmem_resp {
25*9f583bddSPankaj Gupta 	/* Host return status corresponding to flush request */
26*9f583bddSPankaj Gupta 	uint32_t ret;
27*9f583bddSPankaj Gupta };
28*9f583bddSPankaj Gupta 
29*9f583bddSPankaj Gupta struct virtio_pmem_req {
30*9f583bddSPankaj Gupta 	/* command type */
31*9f583bddSPankaj Gupta 	uint32_t type;
32*9f583bddSPankaj Gupta };
33*9f583bddSPankaj Gupta 
34*9f583bddSPankaj Gupta #endif
35