FRET-qemu/qapi/rocker.json
Romain Malmain 7c3c7877d8 Update to QEMU 9.0.0 (#67)
* Update to QEMU v9.0.0

---------

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Fabiano Rosas <farosas@suse.de>
Signed-off-by: Peter Xu <peterx@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Cédric Le Goater <clg@redhat.com>
Signed-off-by: Zheyu Ma <zheyuma97@gmail.com>
Signed-off-by: Ido Plat <ido.plat@ibm.com>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Signed-off-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
Signed-off-by: Gregory Price <gregory.price@memverge.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Lorenz Brun <lorenz@brun.one>
Signed-off-by: Yao Xingtao <yaoxt.fnst@fujitsu.com>
Signed-off-by: Arnaud Minier <arnaud.minier@telecom-paris.fr>
Signed-off-by: Inès Varhol <ines.varhol@telecom-paris.fr>
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Sven Schnelle <svens@stackframe.org>
Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Signed-off-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Benjamin Gray <bgray@linux.ibm.com>
Signed-off-by: Avihai Horon <avihaih@nvidia.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Joonas Kankaala <joonas.a.kankaala@gmail.com>
Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Signed-off-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Glenn Miles <milesg@linux.ibm.com>
Signed-off-by: Oleg Sviridov <oleg.sviridov@red-soft.ru>
Signed-off-by: Artem Chernyshev <artem.chernyshev@red-soft.ru>
Signed-off-by: Yajun Wu <yajunw@nvidia.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Signed-off-by: Pierre-Clément Tosi <ptosi@google.com>
Signed-off-by: Lei Wang <lei4.wang@intel.com>
Signed-off-by: Wei Wang <wei.w.wang@intel.com>
Signed-off-by: Martin Hundebøll <martin@geanix.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
Signed-off-by: Wafer <wafer@jaguarmicro.com>
Signed-off-by: Yuxue Liu <yuxue.liu@jaguarmicro.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Nguyen Dinh Phi <phind.uet@gmail.com>
Signed-off-by: Zack Buhman <zack@buhman.org>
Signed-off-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Yuquan Wang wangyuquan1236@phytium.com.cn
Signed-off-by: Matheus Tavares Bernardino <quic_mathbern@quicinc.com>
Signed-off-by: Cindy Lu <lulu@redhat.com>
Co-authored-by: Peter Maydell <peter.maydell@linaro.org>
Co-authored-by: Fabiano Rosas <farosas@suse.de>
Co-authored-by: Peter Xu <peterx@redhat.com>
Co-authored-by: Thomas Huth <thuth@redhat.com>
Co-authored-by: Cédric Le Goater <clg@redhat.com>
Co-authored-by: Zheyu Ma <zheyuma97@gmail.com>
Co-authored-by: Ido Plat <ido.plat@ibm.com>
Co-authored-by: Ilya Leoshkevich <iii@linux.ibm.com>
Co-authored-by: Markus Armbruster <armbru@redhat.com>
Co-authored-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Co-authored-by: Paolo Bonzini <pbonzini@redhat.com>
Co-authored-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Co-authored-by: David Hildenbrand <david@redhat.com>
Co-authored-by: Kevin Wolf <kwolf@redhat.com>
Co-authored-by: Stefan Reiter <s.reiter@proxmox.com>
Co-authored-by: Fiona Ebner <f.ebner@proxmox.com>
Co-authored-by: Gregory Price <gregory.price@memverge.com>
Co-authored-by: Lorenz Brun <lorenz@brun.one>
Co-authored-by: Yao Xingtao <yaoxt.fnst@fujitsu.com>
Co-authored-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Co-authored-by: Arnaud Minier <arnaud.minier@telecom-paris.fr>
Co-authored-by: BALATON Zoltan <balaton@eik.bme.hu>
Co-authored-by: Igor Mammedov <imammedo@redhat.com>
Co-authored-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Co-authored-by: Richard Henderson <richard.henderson@linaro.org>
Co-authored-by: Sven Schnelle <svens@stackframe.org>
Co-authored-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Co-authored-by: Helge Deller <deller@kernel.org>
Co-authored-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Co-authored-by: Benjamin Gray <bgray@linux.ibm.com>
Co-authored-by: Nicholas Piggin <npiggin@gmail.com>
Co-authored-by: Avihai Horon <avihaih@nvidia.com>
Co-authored-by: Michael Tokarev <mjt@tls.msk.ru>
Co-authored-by: Joonas Kankaala <joonas.a.kankaala@gmail.com>
Co-authored-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Co-authored-by: Stefan Weil <sw@weilnetz.de>
Co-authored-by: Dayu Liu <liu.dayu@zte.com.cn>
Co-authored-by: Zhao Liu <zhao1.liu@intel.com>
Co-authored-by: Glenn Miles <milesg@linux.vnet.ibm.com>
Co-authored-by: Artem Chernyshev <artem.chernyshev@red-soft.ru>
Co-authored-by: Yajun Wu <yajunw@nvidia.com>
Co-authored-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Co-authored-by: Pierre-Clément Tosi <ptosi@google.com>
Co-authored-by: Wei Wang <wei.w.wang@intel.com>
Co-authored-by: Martin Hundebøll <martin@geanix.com>
Co-authored-by: Michael S. Tsirkin <mst@redhat.com>
Co-authored-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
Co-authored-by: Wafer <wafer@jaguarmicro.com>
Co-authored-by: lyx634449800 <yuxue.liu@jaguarmicro.com>
Co-authored-by: Gerd Hoffmann <kraxel@redhat.com>
Co-authored-by: Nguyen Dinh Phi <phind.uet@gmail.com>
Co-authored-by: Zack Buhman <zack@buhman.org>
Co-authored-by: Keith Packard <keithp@keithp.com>
Co-authored-by: Yuquan Wang <wangyuquan1236@phytium.com.cn>
Co-authored-by: Matheus Tavares Bernardino <quic_mathbern@quicinc.com>
Co-authored-by: Cindy Lu <lulu@redhat.com>
2024-05-01 16:10:20 +02:00

339 lines
7.7 KiB
Python

# -*- Mode: Python -*-
# vim: filetype=python
##
# = Rocker switch device
##
##
# @RockerSwitch:
#
# Rocker switch information.
#
# @name: switch name
#
# @id: switch ID
#
# @ports: number of front-panel ports
#
# Since: 2.4
##
{ 'struct': 'RockerSwitch',
'data': { 'name': 'str', 'id': 'uint64', 'ports': 'uint32' } }
##
# @query-rocker:
#
# Return rocker switch information.
#
# Returns: @Rocker information
#
# Since: 2.4
#
# Example:
#
# -> { "execute": "query-rocker", "arguments": { "name": "sw1" } }
# <- { "return": {"name": "sw1", "ports": 2, "id": 1327446905938}}
##
{ 'command': 'query-rocker',
'data': { 'name': 'str' },
'returns': 'RockerSwitch' }
##
# @RockerPortDuplex:
#
# An eumeration of port duplex states.
#
# @half: half duplex
#
# @full: full duplex
#
# Since: 2.4
##
{ 'enum': 'RockerPortDuplex', 'data': [ 'half', 'full' ] }
##
# @RockerPortAutoneg:
#
# An eumeration of port autoneg states.
#
# @off: autoneg is off
#
# @on: autoneg is on
#
# Since: 2.4
##
{ 'enum': 'RockerPortAutoneg', 'data': [ 'off', 'on' ] }
##
# @RockerPort:
#
# Rocker switch port information.
#
# @name: port name
#
# @enabled: port is enabled for I/O
#
# @link-up: physical link is UP on port
#
# @speed: port link speed in Mbps
#
# @duplex: port link duplex
#
# @autoneg: port link autoneg
#
# Since: 2.4
##
{ 'struct': 'RockerPort',
'data': { 'name': 'str', 'enabled': 'bool', 'link-up': 'bool',
'speed': 'uint32', 'duplex': 'RockerPortDuplex',
'autoneg': 'RockerPortAutoneg' } }
##
# @query-rocker-ports:
#
# Return rocker switch port information.
#
# Returns: a list of @RockerPort information
#
# Since: 2.4
#
# Example:
#
# -> { "execute": "query-rocker-ports", "arguments": { "name": "sw1" } }
# <- { "return": [ {"duplex": "full", "enabled": true, "name": "sw1.1",
# "autoneg": "off", "link-up": true, "speed": 10000},
# {"duplex": "full", "enabled": true, "name": "sw1.2",
# "autoneg": "off", "link-up": true, "speed": 10000}
# ]}
##
{ 'command': 'query-rocker-ports',
'data': { 'name': 'str' },
'returns': ['RockerPort'] }
##
# @RockerOfDpaFlowKey:
#
# Rocker switch OF-DPA flow key
#
# @priority: key priority, 0 being lowest priority
#
# @tbl-id: flow table ID
#
# @in-pport: physical input port
#
# @tunnel-id: tunnel ID
#
# @vlan-id: VLAN ID
#
# @eth-type: Ethernet header type
#
# @eth-src: Ethernet header source MAC address
#
# @eth-dst: Ethernet header destination MAC address
#
# @ip-proto: IP Header protocol field
#
# @ip-tos: IP header TOS field
#
# @ip-dst: IP header destination address
#
# Note: optional members may or may not appear in the flow key
# depending if they're relevant to the flow key.
#
# Since: 2.4
##
{ 'struct': 'RockerOfDpaFlowKey',
'data' : { 'priority': 'uint32', 'tbl-id': 'uint32', '*in-pport': 'uint32',
'*tunnel-id': 'uint32', '*vlan-id': 'uint16',
'*eth-type': 'uint16', '*eth-src': 'str', '*eth-dst': 'str',
'*ip-proto': 'uint8', '*ip-tos': 'uint8', '*ip-dst': 'str' } }
##
# @RockerOfDpaFlowMask:
#
# Rocker switch OF-DPA flow mask
#
# @in-pport: physical input port
#
# @tunnel-id: tunnel ID
#
# @vlan-id: VLAN ID
#
# @eth-src: Ethernet header source MAC address
#
# @eth-dst: Ethernet header destination MAC address
#
# @ip-proto: IP Header protocol field
#
# @ip-tos: IP header TOS field
#
# Note: optional members may or may not appear in the flow mask
# depending if they're relevant to the flow mask.
#
# Since: 2.4
##
{ 'struct': 'RockerOfDpaFlowMask',
'data' : { '*in-pport': 'uint32', '*tunnel-id': 'uint32',
'*vlan-id': 'uint16', '*eth-src': 'str', '*eth-dst': 'str',
'*ip-proto': 'uint8', '*ip-tos': 'uint8' } }
##
# @RockerOfDpaFlowAction:
#
# Rocker switch OF-DPA flow action
#
# @goto-tbl: next table ID
#
# @group-id: group ID
#
# @tunnel-lport: tunnel logical port ID
#
# @vlan-id: VLAN ID
#
# @new-vlan-id: new VLAN ID
#
# @out-pport: physical output port
#
# Note: optional members may or may not appear in the flow action
# depending if they're relevant to the flow action.
#
# Since: 2.4
##
{ 'struct': 'RockerOfDpaFlowAction',
'data' : { '*goto-tbl': 'uint32', '*group-id': 'uint32',
'*tunnel-lport': 'uint32', '*vlan-id': 'uint16',
'*new-vlan-id': 'uint16', '*out-pport': 'uint32' } }
##
# @RockerOfDpaFlow:
#
# Rocker switch OF-DPA flow
#
# @cookie: flow unique cookie ID
#
# @hits: count of matches (hits) on flow
#
# @key: flow key
#
# @mask: flow mask
#
# @action: flow action
#
# Since: 2.4
##
{ 'struct': 'RockerOfDpaFlow',
'data': { 'cookie': 'uint64', 'hits': 'uint64', 'key': 'RockerOfDpaFlowKey',
'mask': 'RockerOfDpaFlowMask', 'action': 'RockerOfDpaFlowAction' } }
##
# @query-rocker-of-dpa-flows:
#
# Return rocker OF-DPA flow information.
#
# @name: switch name
#
# @tbl-id: flow table ID. If tbl-id is not specified, returns flow
# information for all tables.
#
# Returns: rocker OF-DPA flow information
#
# Since: 2.4
#
# Example:
#
# -> { "execute": "query-rocker-of-dpa-flows",
# "arguments": { "name": "sw1" } }
# <- { "return": [ {"key": {"in-pport": 0, "priority": 1, "tbl-id": 0},
# "hits": 138,
# "cookie": 0,
# "action": {"goto-tbl": 10},
# "mask": {"in-pport": 4294901760}
# },
# {...more...},
# ]}
##
{ 'command': 'query-rocker-of-dpa-flows',
'data': { 'name': 'str', '*tbl-id': 'uint32' },
'returns': ['RockerOfDpaFlow'] }
##
# @RockerOfDpaGroup:
#
# Rocker switch OF-DPA group
#
# @id: group unique ID
#
# @type: group type
#
# @vlan-id: VLAN ID
#
# @pport: physical port number
#
# @index: group index, unique with group type
#
# @out-pport: output physical port number
#
# @group-id: next group ID
#
# @set-vlan-id: VLAN ID to set
#
# @pop-vlan: pop VLAN headr from packet
#
# @group-ids: list of next group IDs
#
# @set-eth-src: set source MAC address in Ethernet header
#
# @set-eth-dst: set destination MAC address in Ethernet header
#
# @ttl-check: perform TTL check
#
# Note: optional members may or may not appear in the group depending
# if they're relevant to the group type.
#
# Since: 2.4
##
{ 'struct': 'RockerOfDpaGroup',
'data': { 'id': 'uint32', 'type': 'uint8', '*vlan-id': 'uint16',
'*pport': 'uint32', '*index': 'uint32', '*out-pport': 'uint32',
'*group-id': 'uint32', '*set-vlan-id': 'uint16',
'*pop-vlan': 'uint8', '*group-ids': ['uint32'],
'*set-eth-src': 'str', '*set-eth-dst': 'str',
'*ttl-check': 'uint8' } }
##
# @query-rocker-of-dpa-groups:
#
# Return rocker OF-DPA group information.
#
# @name: switch name
#
# @type: group type. If type is not specified, returns group
# information for all group types.
#
# Returns: rocker OF-DPA group information
#
# Since: 2.4
#
# Example:
#
# -> { "execute": "query-rocker-of-dpa-groups",
# "arguments": { "name": "sw1" } }
# <- { "return": [ {"type": 0, "out-pport": 2,
# "pport": 2, "vlan-id": 3841,
# "pop-vlan": 1, "id": 251723778},
# {"type": 0, "out-pport": 0,
# "pport": 0, "vlan-id": 3841,
# "pop-vlan": 1, "id": 251723776},
# {"type": 0, "out-pport": 1,
# "pport": 1, "vlan-id": 3840,
# "pop-vlan": 1, "id": 251658241},
# {"type": 0, "out-pport": 0,
# "pport": 0, "vlan-id": 3840,
# "pop-vlan": 1, "id": 251658240}
# ]}
##
{ 'command': 'query-rocker-of-dpa-groups',
'data': { 'name': 'str', '*type': 'uint8' },
'returns': ['RockerOfDpaGroup'] }