|
| 1 | + |
| 2 | +#define VIRTIO_DEVICE_ID_virtio_device1 1 |
| 3 | +#define VIRTIO_DEVICE_ID_virtio_device2 2 |
| 4 | +#define VIRTIO_DEVICE_ID_virtio_device3 3 |
| 5 | +#define VIRTIO_DEVICE_ID_virtio_device4 4 |
| 6 | +#define VIRTIO_DEVICE_ID_virtio_device5 5 |
| 7 | +#define VIRTIO_DEVICE_ID_virtio_device6 6 |
| 8 | +#define VIRTIO_DEVICE_ID_virtio_device7 7 |
| 9 | +#define VIRTIO_DEVICE_ID_virtio_device8 8 |
| 10 | +#define VIRTIO_DEVICE_ID_virtio_device9 9 |
| 11 | +#define VIRTIO_DEVICE_ID_virtio_devicea 10 |
| 12 | +#define VIRTIO_DEVICE_ID_virtio_deviceb 11 |
| 13 | +#define VIRTIO_DEVICE_ID_virtio_devicec 12 |
| 14 | +#define VIRTIO_DEVICE_ID_virtio_deviced 13 |
| 15 | +#define VIRTIO_DEVICE_ID_virtio_devicee 14 |
| 16 | +#define VIRTIO_DEVICE_ID_virtio_devicef 15 |
| 17 | +#define VIRTIO_DEVICE_ID_virtio_device10 16 |
| 18 | +#define VIRTIO_DEVICE_ID_virtio_device11 17 |
| 19 | +#define VIRTIO_DEVICE_ID_virtio_device12 18 |
| 20 | +#define VIRTIO_DEVICE_ID_virtio_device13 19 |
| 21 | +#define VIRTIO_DEVICE_ID_virtio_device14 20 |
| 22 | +#define VIRTIO_DEVICE_ID_virtio_device15 21 |
| 23 | +#define VIRTIO_DEVICE_ID_virtio_device16 22 |
| 24 | +#define VIRTIO_DEVICE_ID_virtio_device17 23 |
| 25 | +#define VIRTIO_DEVICE_ID_virtio_device18 24 |
| 26 | +#define VIRTIO_DEVICE_ID_virtio_device19 25 |
| 27 | +#define VIRTIO_DEVICE_ID_virtio_device1a 26 |
| 28 | +#define VIRTIO_DEVICE_ID_virtio_device1b 27 |
| 29 | +#define VIRTIO_DEVICE_ID_virtio_device1c 28 |
| 30 | +#define VIRTIO_DEVICE_ID_virtio_device1d 29 |
| 31 | +#define VIRTIO_DEVICE_ID_virtio_device1e 30 |
| 32 | +#define VIRTIO_DEVICE_ID_virtio_device1f 31 |
| 33 | +#define VIRTIO_DEVICE_ID_virtio_device20 32 |
| 34 | +#define VIRTIO_DEVICE_ID_virtio_device21 33 |
| 35 | +#define VIRTIO_DEVICE_ID_virtio_device22 34 |
| 36 | +#define VIRTIO_DEVICE_ID_virtio_device23 35 |
| 37 | +#define VIRTIO_DEVICE_ID_virtio_device24 36 |
| 38 | +#define VIRTIO_DEVICE_ID_virtio_device25 37 |
| 39 | +#define VIRTIO_DEVICE_ID_virtio_device26 38 |
| 40 | +#define VIRTIO_DEVICE_ID_virtio_device27 39 |
| 41 | +#define VIRTIO_DEVICE_ID_virtio_device28 40 |
| 42 | +#define VIRTIO_DEVICE_ID_virtio_device29 41 |
| 43 | +#define VIRTIO_DEVICE_ID_virtio_device2a 42 |
| 44 | +#define VIRTIO_DEVICE_ID_virtio_device2b 43 |
| 45 | +#define VIRTIO_DEVICE_ID_virtio_device2c 44 |
| 46 | +#define VIRTIO_DEVICE_ID_virtio_device2d 45 |
| 47 | +#define VIRTIO_DEVICE_ID_virtio_device2e 46 |
| 48 | +#define VIRTIO_DEVICE_ID_virtio_device2f 47 |
| 49 | + |
| 50 | +static const char* virtio_reg_name(size_t off) |
| 51 | +{ |
| 52 | + switch (off) { |
| 53 | + case 0x000: |
| 54 | + return "VIRTIO_MMIO_MAGIC_VALUE"; |
| 55 | + case 0x004: |
| 56 | + return "VIRTIO_MMIO_VERSION"; |
| 57 | + case 0x008: |
| 58 | + return "VIRTIO_MMIO_DEVICE_ID"; |
| 59 | + case 0x00c: |
| 60 | + return "VIRTIO_MMIO_VENDOR_ID"; |
| 61 | + case 0x010: |
| 62 | + return "VIRTIO_MMIO_DEVICE_FEATURES"; |
| 63 | + case 0x014: |
| 64 | + return "VIRTIO_MMIO_DEVICE_FEATURES_SEL"; |
| 65 | + case 0x020: |
| 66 | + return "VIRTIO_MMIO_DRIVER_FEATURES"; |
| 67 | + case 0x024: |
| 68 | + return "VIRTIO_MMIO_DRIVER_FEATURES_SEL"; |
| 69 | + case 0x030: |
| 70 | + return "VIRTIO_MMIO_QUEUE_SEL"; |
| 71 | + case 0x034: |
| 72 | + return "VIRTIO_MMIO_QUEUE_SIZE_MAX"; |
| 73 | + case 0x038: |
| 74 | + return "VIRTIO_MMIO_QUEUE_SIZE"; |
| 75 | + case 0x044: |
| 76 | + return "VIRTIO_MMIO_QUEUE_READY"; |
| 77 | + case 0x050: |
| 78 | + return "VIRTIO_MMIO_QUEUE_NOTIFY"; |
| 79 | + case 0x060: |
| 80 | + return "VIRTIO_MMIO_INTERRUPT_STATUS"; |
| 81 | + case 0x064: |
| 82 | + return "VIRTIO_MMIO_INTERRUPT_ACK"; |
| 83 | + case 0x070: |
| 84 | + return "VIRTIO_MMIO_STATUS"; |
| 85 | + case 0x080: |
| 86 | + return "VIRTIO_MMIO_QUEUE_DESC_LOW"; |
| 87 | + case 0x084: |
| 88 | + return "VIRTIO_MMIO_QUEUE_DESC_HIGH"; |
| 89 | + case 0x090: |
| 90 | + return "VIRTIO_MMIO_QUEUE_AVAIL_LOW"; |
| 91 | + case 0x094: |
| 92 | + return "VIRTIO_MMIO_QUEUE_AVAIL_HIGH"; |
| 93 | + case 0x0a0: |
| 94 | + return "VIRTIO_MMIO_QUEUE_USED_LOW"; |
| 95 | + case 0x0a4: |
| 96 | + return "VIRTIO_MMIO_QUEUE_USED_HIGH"; |
| 97 | + case 0x0ac: |
| 98 | + return "VIRTIO_MMIO_SHM_SEL"; |
| 99 | + case 0x0b0: |
| 100 | + return "VIRTIO_MMIO_SHM_LEN_LOW"; |
| 101 | + case 0x0b4: |
| 102 | + return "VIRTIO_MMIO_SHM_LEN_HIGH"; |
| 103 | + case 0x0b8: |
| 104 | + return "VIRTIO_MMIO_SHM_BASE_LOW"; |
| 105 | + case 0x0bc: |
| 106 | + return "VIRTIO_MMIO_SHM_BASE_HIGH"; |
| 107 | + case 0x0c0: |
| 108 | + return "VIRTIO_MMIO_QUEUE_RESET"; |
| 109 | + case 0x0fc: |
| 110 | + return "VIRTIO_MMIO_CONFIG_GENERATION"; |
| 111 | + case 0x100: |
| 112 | + return "VIRTIO_MMIO_CONFIG"; |
| 113 | + default: |
| 114 | + return "?????"; |
| 115 | + } |
| 116 | +} |
| 117 | + |
0 commit comments