qemu/qapi/rocker.json
<<
>>
Prefs
   1##
   2# @Rocker:
   3#
   4# Rocker switch information.
   5#
   6# @name: switch name
   7#
   8# @id: switch ID
   9#
  10# @ports: number of front-panel ports
  11#
  12# Since: 2.4
  13##
  14{ 'struct': 'RockerSwitch',
  15  'data': { 'name': 'str', 'id': 'uint64', 'ports': 'uint32' } }
  16
  17##
  18# @query-rocker:
  19#
  20# Return rocker switch information.
  21#
  22# Returns: @Rocker information
  23#
  24# Since: 2.4
  25##
  26{ 'command': 'query-rocker',
  27  'data': { 'name': 'str' },
  28  'returns': 'RockerSwitch' }
  29
  30##
  31# @RockerPortDuplex:
  32#
  33# An eumeration of port duplex states.
  34#
  35# @half: half duplex
  36#
  37# @full: full duplex
  38#
  39# Since: 2.4
  40##
  41{ 'enum': 'RockerPortDuplex', 'data': [ 'half', 'full' ] }
  42
  43##
  44# @RockerPortAutoneg:
  45#
  46# An eumeration of port autoneg states.
  47#
  48# @off: autoneg is off
  49#
  50# @on: autoneg is on
  51#
  52# Since: 2.4
  53##
  54{ 'enum': 'RockerPortAutoneg', 'data': [ 'off', 'on' ] }
  55
  56##
  57# @RockerPort:
  58#
  59# Rocker switch port information.
  60#
  61# @name: port name
  62#
  63# @enabled: port is enabled for I/O
  64#
  65# @link-up: physical link is UP on port
  66#
  67# @speed: port link speed in Mbps
  68#
  69# @duplex: port link duplex
  70#
  71# @autoneg: port link autoneg
  72#
  73# Since: 2.4
  74##
  75{ 'struct': 'RockerPort',
  76  'data': { 'name': 'str', 'enabled': 'bool', 'link-up': 'bool',
  77            'speed': 'uint32', 'duplex': 'RockerPortDuplex',
  78            'autoneg': 'RockerPortAutoneg' } }
  79
  80##
  81# @query-rocker-ports:
  82#
  83# Return rocker switch information.
  84#
  85# Returns: @Rocker information
  86#
  87# Since: 2.4
  88##
  89{ 'command': 'query-rocker-ports',
  90  'data': { 'name': 'str' },
  91  'returns': ['RockerPort'] }
  92
  93##
  94# @RockerOfDpaFlowKey:
  95#
  96# Rocker switch OF-DPA flow key
  97#
  98# @priority: key priority, 0 being lowest priority
  99#
 100# @tbl-id: flow table ID
 101#
 102# @in-pport: #optional physical input port
 103#
 104# @tunnel-id: #optional tunnel ID
 105#
 106# @vlan-id: #optional VLAN ID
 107#
 108# @eth-type: #optional Ethernet header type
 109#
 110# @eth-src: #optional Ethernet header source MAC address
 111#
 112# @eth-dst: #optional Ethernet header destination MAC address
 113#
 114# @ip-proto: #optional IP Header protocol field
 115#
 116# @ip-tos: #optional IP header TOS field
 117#
 118# @ip-dst: #optional IP header destination address
 119#
 120# Note: fields are marked #optional to indicate that they may or may not
 121# appear in the flow key depending if they're relevant to the flow key.
 122#
 123# Since: 2.4
 124##
 125{ 'struct': 'RockerOfDpaFlowKey',
 126  'data' : { 'priority': 'uint32', 'tbl-id': 'uint32', '*in-pport': 'uint32',
 127             '*tunnel-id': 'uint32', '*vlan-id': 'uint16',
 128             '*eth-type': 'uint16', '*eth-src': 'str', '*eth-dst': 'str',
 129             '*ip-proto': 'uint8', '*ip-tos': 'uint8', '*ip-dst': 'str' } }
 130
 131##
 132# @RockerOfDpaFlowMask:
 133#
 134# Rocker switch OF-DPA flow mask
 135#
 136# @in-pport: #optional physical input port
 137#
 138# @tunnel-id: #optional tunnel ID
 139#
 140# @vlan-id: #optional VLAN ID
 141#
 142# @eth-src: #optional Ethernet header source MAC address
 143#
 144# @eth-dst: #optional Ethernet header destination MAC address
 145#
 146# @ip-proto: #optional IP Header protocol field
 147#
 148# @ip-tos: #optional IP header TOS field
 149#
 150# Note: fields are marked #optional to indicate that they may or may not
 151# appear in the flow mask depending if they're relevant to the flow mask.
 152#
 153# Since: 2.4
 154##
 155{ 'struct': 'RockerOfDpaFlowMask',
 156  'data' : { '*in-pport': 'uint32', '*tunnel-id': 'uint32',
 157             '*vlan-id': 'uint16', '*eth-src': 'str', '*eth-dst': 'str',
 158             '*ip-proto': 'uint8', '*ip-tos': 'uint8' } }
 159
 160##
 161# @RockerOfDpaFlowAction:
 162#
 163# Rocker switch OF-DPA flow action
 164#
 165# @goto-tbl: #optional next table ID
 166#
 167# @group-id: #optional group ID
 168#
 169# @tunnel-lport: #optional tunnel logical port ID
 170#
 171# @vlan-id: #optional VLAN ID
 172#
 173# @new-vlan-id: #optional new VLAN ID
 174#
 175# @out-pport: #optional physical output port
 176#
 177# Note: fields are marked #optional to indicate that they may or may not
 178# appear in the flow action depending if they're relevant to the flow action.
 179#
 180# Since: 2.4
 181##
 182{ 'struct': 'RockerOfDpaFlowAction',
 183  'data' : { '*goto-tbl': 'uint32', '*group-id': 'uint32',
 184             '*tunnel-lport': 'uint32', '*vlan-id': 'uint16',
 185             '*new-vlan-id': 'uint16', '*out-pport': 'uint32' } }
 186
 187##
 188# @RockerOfDpaFlow:
 189#
 190# Rocker switch OF-DPA flow
 191#
 192# @cookie: flow unique cookie ID
 193#
 194# @hits: count of matches (hits) on flow
 195#
 196# @key: flow key
 197#
 198# @mask: flow mask
 199#
 200# @action: flow action
 201#
 202# Since: 2.4
 203##
 204{ 'struct': 'RockerOfDpaFlow',
 205  'data': { 'cookie': 'uint64', 'hits': 'uint64', 'key': 'RockerOfDpaFlowKey',
 206            'mask': 'RockerOfDpaFlowMask', 'action': 'RockerOfDpaFlowAction' } }
 207
 208##
 209# @query-rocker-of-dpa-flows:
 210#
 211# Return rocker OF-DPA flow information.
 212#
 213# @name: switch name
 214#
 215# @tbl-id: #optional flow table ID.  If tbl-id is not specified, returns
 216# flow information for all tables.
 217#
 218# Returns: @Rocker OF-DPA flow information
 219#
 220# Since: 2.4
 221##
 222{ 'command': 'query-rocker-of-dpa-flows',
 223  'data': { 'name': 'str', '*tbl-id': 'uint32' },
 224  'returns': ['RockerOfDpaFlow'] }
 225
 226##
 227# @RockerOfDpaGroup:
 228#
 229# Rocker switch OF-DPA group
 230#
 231# @id: group unique ID
 232#
 233# @type: group type
 234#
 235# @vlan-id: #optional VLAN ID
 236#
 237# @pport: #optional physical port number
 238#
 239# @index: #optional group index, unique with group type
 240#
 241# @out-pport: #optional output physical port number
 242#
 243# @group-id: #optional next group ID
 244#
 245# @set-vlan-id: #optional VLAN ID to set
 246#
 247# @pop-vlan: #optional pop VLAN headr from packet
 248#
 249# @group-ids: #optional list of next group IDs
 250#
 251# @set-eth-src: #optional set source MAC address in Ethernet header
 252#
 253# @set-eth-dst: #optional set destination MAC address in Ethernet header
 254#
 255# @ttl-check: #optional perform TTL check
 256#
 257# Note: fields are marked #optional to indicate that they may or may not
 258# appear in the group depending if they're relevant to the group type.
 259#
 260# Since: 2.4
 261##
 262{ 'struct': 'RockerOfDpaGroup',
 263  'data': { 'id': 'uint32',  'type': 'uint8', '*vlan-id': 'uint16',
 264            '*pport': 'uint32', '*index': 'uint32', '*out-pport': 'uint32',
 265            '*group-id': 'uint32', '*set-vlan-id': 'uint16',
 266            '*pop-vlan': 'uint8', '*group-ids': ['uint32'],
 267            '*set-eth-src': 'str', '*set-eth-dst': 'str',
 268            '*ttl-check': 'uint8' } }
 269
 270##
 271# @query-rocker-of-dpa-groups:
 272#
 273# Return rocker OF-DPA group information.
 274#
 275# @name: switch name
 276#
 277# @type: #optional group type.  If type is not specified, returns
 278# group information for all group types.
 279#
 280# Returns: @Rocker OF-DPA group information
 281#
 282# Since: 2.4
 283##
 284{ 'command': 'query-rocker-of-dpa-groups',
 285  'data': { 'name': 'str', '*type': 'uint8' },
 286  'returns': ['RockerOfDpaGroup'] }
 287