| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- package netlink
- // features for virtio net
- const (
- VIRTIO_NET_F_CSUM = 0 // Host handles pkts w/ partial csum
- VIRTIO_NET_F_GUEST_CSUM = 1 // Guest handles pkts w/ partial csum
- VIRTIO_NET_F_CTRL_GUEST_OFFLOADS = 2 // Dynamic offload configuration.
- VIRTIO_NET_F_MTU = 3 // Initial MTU advice
- VIRTIO_NET_F_MAC = 5 // Host has given MAC address.
- VIRTIO_NET_F_GUEST_TSO4 = 7 // Guest can handle TSOv4 in.
- VIRTIO_NET_F_GUEST_TSO6 = 8 // Guest can handle TSOv6 in.
- VIRTIO_NET_F_GUEST_ECN = 9 // Guest can handle TSO[6] w/ ECN in.
- VIRTIO_NET_F_GUEST_UFO = 10 // Guest can handle UFO in.
- VIRTIO_NET_F_HOST_TSO4 = 11 // Host can handle TSOv4 in.
- VIRTIO_NET_F_HOST_TSO6 = 12 // Host can handle TSOv6 in.
- VIRTIO_NET_F_HOST_ECN = 13 // Host can handle TSO[6] w/ ECN in.
- VIRTIO_NET_F_HOST_UFO = 14 // Host can handle UFO in.
- VIRTIO_NET_F_MRG_RXBUF = 15 // Host can merge receive buffers.
- VIRTIO_NET_F_STATUS = 16 // virtio_net_config.status available
- VIRTIO_NET_F_CTRL_VQ = 17 // Control channel available
- VIRTIO_NET_F_CTRL_RX = 18 // Control channel RX mode support
- VIRTIO_NET_F_CTRL_VLAN = 19 // Control channel VLAN filtering
- VIRTIO_NET_F_CTRL_RX_EXTRA = 20 // Extra RX mode control support
- VIRTIO_NET_F_GUEST_ANNOUNCE = 21 // Guest can announce device on the* network
- VIRTIO_NET_F_MQ = 22 // Device supports Receive Flow Steering
- VIRTIO_NET_F_CTRL_MAC_ADDR = 23 // Set MAC address
- VIRTIO_NET_F_VQ_NOTF_COAL = 52 // Device supports virtqueue notification coalescing
- VIRTIO_NET_F_NOTF_COAL = 53 // Device supports notifications coalescing
- VIRTIO_NET_F_GUEST_USO4 = 54 // Guest can handle USOv4 in.
- VIRTIO_NET_F_GUEST_USO6 = 55 // Guest can handle USOv6 in.
- VIRTIO_NET_F_HOST_USO = 56 // Host can handle USO in.
- VIRTIO_NET_F_HASH_REPORT = 57 // Supports hash report
- VIRTIO_NET_F_GUEST_HDRLEN = 59 // Guest provides the exact hdr_len value.
- VIRTIO_NET_F_RSS = 60 // Supports RSS RX steering
- VIRTIO_NET_F_RSC_EXT = 61 // extended coalescing info
- VIRTIO_NET_F_STANDBY = 62 // Act as standby for another device with the same MAC.
- VIRTIO_NET_F_SPEED_DUPLEX = 63 // Device set linkspeed and duplex
- VIRTIO_NET_F_GSO = 6 // Host handles pkts any GSO type
- )
- // virtio net status
- const (
- VIRTIO_NET_S_LINK_UP = 1 // Link is up
- VIRTIO_NET_S_ANNOUNCE = 2 // Announcement is needed
- )
- // virtio config
- const (
- // Do we get callbacks when the ring is completely used, even if we've
- // suppressed them?
- VIRTIO_F_NOTIFY_ON_EMPTY = 24
- // Can the device handle any descriptor layout?
- VIRTIO_F_ANY_LAYOUT = 27
- // v1.0 compliant
- VIRTIO_F_VERSION_1 = 32
- // If clear - device has the platform DMA (e.g. IOMMU) bypass quirk feature.
- // If set - use platform DMA tools to access the memory.
- // Note the reverse polarity (compared to most other features),
- // this is for compatibility with legacy systems.
- VIRTIO_F_ACCESS_PLATFORM = 33
- // Legacy name for VIRTIO_F_ACCESS_PLATFORM (for compatibility with old userspace)
- VIRTIO_F_IOMMU_PLATFORM = VIRTIO_F_ACCESS_PLATFORM
- // This feature indicates support for the packed virtqueue layout.
- VIRTIO_F_RING_PACKED = 34
- // Inorder feature indicates that all buffers are used by the device
- // in the same order in which they have been made available.
- VIRTIO_F_IN_ORDER = 35
- // This feature indicates that memory accesses by the driver and the
- // device are ordered in a way described by the platform.
- VIRTIO_F_ORDER_PLATFORM = 36
- // Does the device support Single Root I/O Virtualization?
- VIRTIO_F_SR_IOV = 37
- // This feature indicates that the driver passes extra data (besides
- // identifying the virtqueue) in its device notifications.
- VIRTIO_F_NOTIFICATION_DATA = 38
- // This feature indicates that the driver uses the data provided by the device
- // as a virtqueue identifier in available buffer notifications.
- VIRTIO_F_NOTIF_CONFIG_DATA = 39
- // This feature indicates that the driver can reset a queue individually.
- VIRTIO_F_RING_RESET = 40
- )
- // virtio device ids
- const (
- VIRTIO_ID_NET = 1 // virtio net
- VIRTIO_ID_BLOCK = 2 // virtio block
- VIRTIO_ID_CONSOLE = 3 // virtio console
- VIRTIO_ID_RNG = 4 // virtio rng
- VIRTIO_ID_BALLOON = 5 // virtio balloon
- VIRTIO_ID_IOMEM = 6 // virtio ioMemory
- VIRTIO_ID_RPMSG = 7 // virtio remote processor messaging
- VIRTIO_ID_SCSI = 8 // virtio scsi
- VIRTIO_ID_9P = 9 // 9p virtio console
- VIRTIO_ID_MAC80211_WLAN = 10 // virtio WLAN MAC
- VIRTIO_ID_RPROC_SERIAL = 11 // virtio remoteproc serial link
- VIRTIO_ID_CAIF = 12 // Virtio caif
- VIRTIO_ID_MEMORY_BALLOON = 13 // virtio memory balloon
- VIRTIO_ID_GPU = 16 // virtio GPU
- VIRTIO_ID_CLOCK = 17 // virtio clock/timer
- VIRTIO_ID_INPUT = 18 // virtio input
- VIRTIO_ID_VSOCK = 19 // virtio vsock transport
- VIRTIO_ID_CRYPTO = 20 // virtio crypto
- VIRTIO_ID_SIGNAL_DIST = 21 // virtio signal distribution device
- VIRTIO_ID_PSTORE = 22 // virtio pstore device
- VIRTIO_ID_IOMMU = 23 // virtio IOMMU
- VIRTIO_ID_MEM = 24 // virtio mem
- VIRTIO_ID_SOUND = 25 // virtio sound
- VIRTIO_ID_FS = 26 // virtio filesystem
- VIRTIO_ID_PMEM = 27 // virtio pmem
- VIRTIO_ID_RPMB = 28 // virtio rpmb
- VIRTIO_ID_MAC80211_HWSIM = 29 // virtio mac80211-hwsim
- VIRTIO_ID_VIDEO_ENCODER = 30 // virtio video encoder
- VIRTIO_ID_VIDEO_DECODER = 31 // virtio video decoder
- VIRTIO_ID_SCMI = 32 // virtio SCMI
- VIRTIO_ID_NITRO_SEC_MOD = 33 // virtio nitro secure module
- VIRTIO_ID_I2C_ADAPTER = 34 // virtio i2c adapter
- VIRTIO_ID_WATCHDOG = 35 // virtio watchdog
- VIRTIO_ID_CAN = 36 // virtio can
- VIRTIO_ID_DMABUF = 37 // virtio dmabuf
- VIRTIO_ID_PARAM_SERV = 38 // virtio parameter server
- VIRTIO_ID_AUDIO_POLICY = 39 // virtio audio policy
- VIRTIO_ID_BT = 40 // virtio bluetooth
- VIRTIO_ID_GPIO = 41 // virtio gpio
- // Virtio Transitional IDs
- VIRTIO_TRANS_ID_NET = 0x1000 // transitional virtio net
- VIRTIO_TRANS_ID_BLOCK = 0x1001 // transitional virtio block
- VIRTIO_TRANS_ID_BALLOON = 0x1002 // transitional virtio balloon
- VIRTIO_TRANS_ID_CONSOLE = 0x1003 // transitional virtio console
- VIRTIO_TRANS_ID_SCSI = 0x1004 // transitional virtio SCSI
- VIRTIO_TRANS_ID_RNG = 0x1005 // transitional virtio rng
- VIRTIO_TRANS_ID_9P = 0x1009 // transitional virtio 9p console
- )
|