devlink_linux.go 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package nl
  2. // All the following constants are coming from:
  3. // https://github.com/torvalds/linux/blob/master/include/uapi/linux/devlink.h
  4. const (
  5. GENL_DEVLINK_VERSION = 1
  6. GENL_DEVLINK_NAME = "devlink"
  7. )
  8. const (
  9. DEVLINK_CMD_GET = 1
  10. DEVLINK_CMD_PORT_GET = 5
  11. DEVLINK_CMD_ESWITCH_GET = 29
  12. DEVLINK_CMD_ESWITCH_SET = 30
  13. )
  14. const (
  15. DEVLINK_ATTR_BUS_NAME = 1
  16. DEVLINK_ATTR_DEV_NAME = 2
  17. DEVLINK_ATTR_PORT_INDEX = 3
  18. DEVLINK_ATTR_PORT_TYPE = 4
  19. DEVLINK_ATTR_PORT_NETDEV_IFINDEX = 6
  20. DEVLINK_ATTR_PORT_NETDEV_NAME = 7
  21. DEVLINK_ATTR_PORT_IBDEV_NAME = 8
  22. DEVLINK_ATTR_ESWITCH_MODE = 25
  23. DEVLINK_ATTR_ESWITCH_INLINE_MODE = 26
  24. DEVLINK_ATTR_ESWITCH_ENCAP_MODE = 62
  25. DEVLINK_ATTR_PORT_FLAVOUR = 77
  26. )
  27. const (
  28. DEVLINK_ESWITCH_MODE_LEGACY = 0
  29. DEVLINK_ESWITCH_MODE_SWITCHDEV = 1
  30. )
  31. const (
  32. DEVLINK_ESWITCH_INLINE_MODE_NONE = 0
  33. DEVLINK_ESWITCH_INLINE_MODE_LINK = 1
  34. DEVLINK_ESWITCH_INLINE_MODE_NETWORK = 2
  35. DEVLINK_ESWITCH_INLINE_MODE_TRANSPORT = 3
  36. )
  37. const (
  38. DEVLINK_ESWITCH_ENCAP_MODE_NONE = 0
  39. DEVLINK_ESWITCH_ENCAP_MODE_BASIC = 1
  40. )
  41. const (
  42. DEVLINK_PORT_FLAVOUR_PHYSICAL = 0
  43. DEVLINK_PORT_FLAVOUR_CPU = 1
  44. DEVLINK_PORT_FLAVOUR_DSA = 2
  45. DEVLINK_PORT_FLAVOUR_PCI_PF = 3
  46. DEVLINK_PORT_FLAVOUR_PCI_VF = 4
  47. DEVLINK_PORT_FLAVOUR_VIRTUAL = 5
  48. )
  49. const (
  50. DEVLINK_PORT_TYPE_NOTSET = 0
  51. DEVLINK_PORT_TYPE_AUTO = 1
  52. DEVLINK_PORT_TYPE_ETH = 2
  53. DEVLINK_PORT_TYPE_IB = 3
  54. )