• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * This file is auto-generated. Modifications will be lost.
3  *
4  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5  * for more information.
6  */
7 #ifndef _LINUX_VIRTIO_MEM_H
8 #define _LINUX_VIRTIO_MEM_H
9 #include <linux/types.h>
10 #include <linux/virtio_types.h>
11 #include <linux/virtio_ids.h>
12 #include <linux/virtio_config.h>
13 #define VIRTIO_MEM_F_ACPI_PXM 0
14 #define VIRTIO_MEM_F_UNPLUGGED_INACCESSIBLE 1
15 #define VIRTIO_MEM_REQ_PLUG 0
16 #define VIRTIO_MEM_REQ_UNPLUG 1
17 #define VIRTIO_MEM_REQ_UNPLUG_ALL 2
18 #define VIRTIO_MEM_REQ_STATE 3
19 struct virtio_mem_req_plug {
20   __virtio64 addr;
21   __virtio16 nb_blocks;
22   __virtio16 padding[3];
23 };
24 struct virtio_mem_req_unplug {
25   __virtio64 addr;
26   __virtio16 nb_blocks;
27   __virtio16 padding[3];
28 };
29 struct virtio_mem_req_state {
30   __virtio64 addr;
31   __virtio16 nb_blocks;
32   __virtio16 padding[3];
33 };
34 struct virtio_mem_req {
35   __virtio16 type;
36   __virtio16 padding[3];
37   union {
38     struct virtio_mem_req_plug plug;
39     struct virtio_mem_req_unplug unplug;
40     struct virtio_mem_req_state state;
41   } u;
42 };
43 #define VIRTIO_MEM_RESP_ACK 0
44 #define VIRTIO_MEM_RESP_NACK 1
45 #define VIRTIO_MEM_RESP_BUSY 2
46 #define VIRTIO_MEM_RESP_ERROR 3
47 #define VIRTIO_MEM_STATE_PLUGGED 0
48 #define VIRTIO_MEM_STATE_UNPLUGGED 1
49 #define VIRTIO_MEM_STATE_MIXED 2
50 struct virtio_mem_resp_state {
51   __virtio16 state;
52 };
53 struct virtio_mem_resp {
54   __virtio16 type;
55   __virtio16 padding[3];
56   union {
57     struct virtio_mem_resp_state state;
58   } u;
59 };
60 struct virtio_mem_config {
61   __le64 block_size;
62   __le16 node_id;
63   __u8 padding[6];
64   __le64 addr;
65   __le64 region_size;
66   __le64 usable_region_size;
67   __le64 plugged_size;
68   __le64 requested_size;
69 };
70 #endif
71