The remaining text in docs/barrier.txt is user-facing description of what the device is and how to use it. Move this into the system manual and rstify it.
Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> Reviewed-by: Paolo Bonzini <pbonz...@redhat.com> Reviewed-by: Laurent Vivier <laur...@vivier.eu> Reviewed-by: Philippe Mathieu-Daudé <phi...@redhat.com> Message-id: 20210727204112.12579-4-peter.mayd...@linaro.org --- docs/barrier.txt | 48 ----------------------------------------- docs/system/barrier.rst | 44 +++++++++++++++++++++++++++++++++++++ docs/system/index.rst | 1 + 3 files changed, 45 insertions(+), 48 deletions(-) delete mode 100644 docs/barrier.txt create mode 100644 docs/system/barrier.rst diff --git a/docs/barrier.txt b/docs/barrier.txt deleted file mode 100644 index 54cb5fd8efc..00000000000 --- a/docs/barrier.txt +++ /dev/null @@ -1,48 +0,0 @@ - QEMU Barrier Client - - -* About - - Barrier is a KVM (Keyboard-Video-Mouse) software forked from Symless's - synergy 1.9 codebase. - - See https://github.com/debauchee/barrier - -* QEMU usage - - Generally, mouse and keyboard are grabbed through the QEMU video - interface emulation. - - But when we want to use a video graphic adapter via a PCI passthrough - there is no way to provide the keyboard and mouse inputs to the VM - except by plugging a second set of mouse and keyboard to the host - or by installing a KVM software in the guest OS. - - The QEMU Barrier client avoids this by implementing directly the Barrier - protocol into QEMU. - - This protocol is enabled by adding an input-barrier object to QEMU. - - Syntax: input-barrier,id=<object-id>,name=<guest display name> - [,server=<barrier server address>][,port=<barrier server port>] - [,x-origin=<x-origin>][,y-origin=<y-origin>] - [,width=<width>][,height=<height>] - - The object can be added on the QEMU command line, for instance with: - - ... -object input-barrier,id=barrier0,name=VM-1 ... - - where VM-1 is the name the display configured int the Barrier server - on the host providing the mouse and the keyboard events. - - by default <barrier server address> is "localhost", port is 24800, - <x-origin> and <y-origin> are set to 0, <width> and <height> to - 1920 and 1080. - - If Barrier server is stopped QEMU needs to be reconnected manually, - by removing and re-adding the input-barrier object, for instance - with the help of the HMP monitor: - - (qemu) object_del barrier0 - (qemu) object_add input-barrier,id=barrier0,name=VM-1 - diff --git a/docs/system/barrier.rst b/docs/system/barrier.rst new file mode 100644 index 00000000000..155d7d29013 --- /dev/null +++ b/docs/system/barrier.rst @@ -0,0 +1,44 @@ +QEMU Barrier Client +=================== + +Generally, mouse and keyboard are grabbed through the QEMU video +interface emulation. + +But when we want to use a video graphic adapter via a PCI passthrough +there is no way to provide the keyboard and mouse inputs to the VM +except by plugging a second set of mouse and keyboard to the host +or by installing a KVM software in the guest OS. + +The QEMU Barrier client avoids this by implementing directly the Barrier +protocol into QEMU. + +`Barrier <https://github.com/debauchee/barrier>`__ +is a KVM (Keyboard-Video-Mouse) software forked from Symless's +synergy 1.9 codebase. + +This protocol is enabled by adding an input-barrier object to QEMU. + +Syntax:: + + input-barrier,id=<object-id>,name=<guest display name> + [,server=<barrier server address>][,port=<barrier server port>] + [,x-origin=<x-origin>][,y-origin=<y-origin>] + [,width=<width>][,height=<height>] + +The object can be added on the QEMU command line, for instance with:: + + -object input-barrier,id=barrier0,name=VM-1 + +where VM-1 is the name the display configured in the Barrier server +on the host providing the mouse and the keyboard events. + +by default ``<barrier server address>`` is ``localhost``, +``<port>`` is ``24800``, ``<x-origin>`` and ``<y-origin>`` are set to ``0``, +``<width>`` and ``<height>`` to ``1920`` and ``1080``. + +If the Barrier server is stopped QEMU needs to be reconnected manually, +by removing and re-adding the input-barrier object, for instance +with the help of the HMP monitor:: + + (qemu) object_del barrier0 + (qemu) object_add input-barrier,id=barrier0,name=VM-1 diff --git a/docs/system/index.rst b/docs/system/index.rst index 650409d1566..7b9276c05f0 100644 --- a/docs/system/index.rst +++ b/docs/system/index.rst @@ -20,6 +20,7 @@ or Hypervisor.Framework. linuxboot generic-loader guest-loader + barrier vnc-security tls secrets -- 2.20.1