mirror of
				https://github.com/qemu/qemu.git
				synced 2025-10-31 12:07:31 +00:00 
			
		
		
		
	 4a64939db7
			
		
	
	
		4a64939db7
		
	
	
	
	
		
			
			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.maydell@linaro.org> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-id: 20210727204112.12579-4-peter.maydell@linaro.org
		
			
				
	
	
		
			45 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| 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
 |