.. | .. |
---|
113 | 113 | #define VIRTIO_PCI_CAP_DEVICE_CFG 4 |
---|
114 | 114 | /* PCI configuration access */ |
---|
115 | 115 | #define VIRTIO_PCI_CAP_PCI_CFG 5 |
---|
| 116 | +/* Additional shared memory capability */ |
---|
| 117 | +#define VIRTIO_PCI_CAP_SHARED_MEMORY_CFG 8 |
---|
116 | 118 | |
---|
117 | 119 | /* This is the PCI capability header: */ |
---|
118 | 120 | struct virtio_pci_cap { |
---|
.. | .. |
---|
121 | 123 | __u8 cap_len; /* Generic PCI field: capability length */ |
---|
122 | 124 | __u8 cfg_type; /* Identifies the structure. */ |
---|
123 | 125 | __u8 bar; /* Where to find it. */ |
---|
124 | | - __u8 padding[3]; /* Pad to full dword. */ |
---|
| 126 | + __u8 id; /* Multiple capabilities of the same type */ |
---|
| 127 | + __u8 padding[2]; /* Pad to full dword. */ |
---|
125 | 128 | __le32 offset; /* Offset within bar. */ |
---|
126 | 129 | __le32 length; /* Length of the structure, in bytes. */ |
---|
127 | 130 | }; |
---|
128 | 131 | |
---|
| 132 | +struct virtio_pci_cap64 { |
---|
| 133 | + struct virtio_pci_cap cap; |
---|
| 134 | + __le32 offset_hi; /* Most sig 32 bits of offset */ |
---|
| 135 | + __le32 length_hi; /* Most sig 32 bits of length */ |
---|
| 136 | +}; |
---|
| 137 | + |
---|
129 | 138 | struct virtio_pci_notify_cap { |
---|
130 | 139 | struct virtio_pci_cap cap; |
---|
131 | 140 | __le32 notify_off_multiplier; /* Multiplier for queue_notify_off. */ |
---|