As of r300829, support for graphic output has been checked into the projects/bhyve_graphics branch. This is just the usr.sbin/bhyve executable, so is quick and easy to build from source.

Assuming a reasonably current source tree is in /usr/src,
  svn co http://svn.freebsd.org/base/projects/bhyve_graphics path/to/dir
  cd path/to/dir
  make BHYVE_SYSDIR=/usr/src -m /usr/src/share/mk

UEFI GOP support has been checked into the freebsd/edk2 repo:

https://github.com/freebsd/uefi-edk2/commit/a36132939e259df79b16699c03c6f1d63c7454b9

A pre-built bhyve/UEFI binary image with GOP support is available at:
  https://people.freebsd.org/~grehan/bhyve_uefi/BHYVE_UEFI_20160526.fd

The new bhyve executable supports some new devices. An example of using them for Windows10 is:

bhyve \
   -c 2 \
   -s 3,ahci-cd,/images/win10_install.iso \
   -s 4,ahci-hd,/images/win10.img \
   -s 11,fbuf,tcp=0.0.0.0:5900,w=1600,h=900,wait \
   -s 20,xhci,tablet \
   -s 31,lpc \
   -l bootrom,/images/BHYVE_UEFI_20160526.fd \
   -m 2G -H -w \
   windows

The framebuffer device, "fbuf", takes parameters describing the VNC server options. The optional "wait" parameter will hold execution of the guest until a VNC client is connected. The height and width of the frame buffer can be specified, with the constraints that the maximum is 1920x1200.

Arbitrary resolutions are not yet supported by UEFI. That will be fixed, but in the meantime, available resolutions are:
     1920 x 1200
     1920 x 1080
     1600 x 1200
     1600 x 900
     1280 x 1024
     1280 x 720
     1024 x 768
      800 x 600
      640 x 480
Specifying an unsupported resolution will result in UEFI falling back to 800x600.

The XHCI emulation currently only has a tablet back end. This connects to pointer input from VNC. If not present, pointer input defaults to the ps2 mouse emulation. Note the latter only suppports relative coordinates which don't track the cursor very well in VNC.

Keyboard input currently defaults to the PS2 keyboard.

The code has been tested with Windows 7/8/8.1/10 and Server 2k12/2k16, Ubuntu 15.10, and FreeBSD 10.3/11-CURRENT. Note that older versions of Windows, and FreeBSD, don't like the XHCI tablet - the default ps2 mouse should be used with those.

For VNC clients, TightVNC, TigherVNC, and RealVNC (aka VNC Viewer) have been tested on various hosts. The OSX VNC client is known not to work.

 Give it a try and let us know how it goes !

 Many thanks to Michael Dexter for helping out with the testing of this.

later,

Peter.
_______________________________________________
freebsd-virtualization@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-virtualization
To unsubscribe, send any mail to 
"freebsd-virtualization-unsubscr...@freebsd.org"

Reply via email to