R-Car/Virtualization/VFIO

From eLinux.org
< R-Car‎ | Virtualization
Revision as of 06:21, 9 February 2018 by Geert (talk | contribs) (GPIO Pass-Through / Host Side)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Device Pass-Through Using VFIO

Platform Device Pass-Through Proof-of-Concept

This is a proof-of-concept showing how to provide guest access to an R-Car GPIO controller block on the Renesas Salvator-XS board.

Host Side

  • Configure workarounds for missing functionality:
$ echo 0 > /sys/module/vfio_platform/parameters/reset_required
$ echo 1 > /sys/module/vfio/parameters/enable_unsafe_noiommu_mode
  • Unbind GPIO6 from the "gpio-rcar" driver:
$ echo e6055400.gpio > /sys/bus/platform/drivers/gpio_rcar/unbind
gpio gpiochip6: REMOVING GPIOCHIP WITH GPIOS STILL REQUESTED
  • Bind GPIO6 to the "vfio-platform" driver, for pass-through to guests:
$ echo vfio-platform > /sys/bus/platform/devices/e6055400.gpio/driver_override
$ echo e6055400.gpio > /sys/bus/platform/drivers/vfio-platform/bind
iommu: Adding device e6055400.gpio to group 0
vfio-platform e6055400.gpio: Adding kernel taint for vfio-noiommu group on device