acrn-kernel/include/uapi
yichongt 7159ad071b virt: acrn: Introduce interfaces for PIO region passthrough
PIO region passthrough enables an OS in a virtual machine to directly
access a PIO device in the host. It promises almost the native
performance, which is required in performance-critical scenarios of
ACRN.

ACRN hypervisor will pass through most resource to Service VM at the
begining except those pre-allocated to hypervisor itself and pre-launched
VM. GPA and HPA of all these passthrough resource are identical mapped in
Service VM. In this case, user space program can manipulate the PIO region
in Service VM as PIO region in Host, such as delivering GPA in Service VM
to hypervisor to assign PIO region to other post launched VM.

HSM provides the following ioctls:
  - Assign - ACRN_IOCTL_ASSIGN_PIO_REGION
    Pass data struct acrn_pio_region from userspace to the hypervisor, and
    inform the hypervisor to assign a PIO region to a User VM.

  - De-assign - ACRN_IOCTL_DEASSIGN_PIO_REGION
    Pass data struct acrn_pio_region from userspace to the hypervisor, and
    inform the hypervisor to de-assign a PIO region from a User VM.

These hypercalls are for ACPI device passthrough function of ACRN.
Now ACRN only support legacy UART which has a PIO region. Before passing
through this PIO region to a post-launched VM, ACRN device model would
unbind UART device from Service VM through sysfs node
/sys/bus/pnp/drivers/serial/unbind.

Tracked-On: projectacrn/acrn-hypervisor#8635

Signed-off-by: Yichong Tang <yichong.tang@intel.com>
2024-07-31 15:40:11 +08:00
..
asm-generic open: return EINVAL for O_DIRECTORY | O_CREAT 2023-05-24 17:32:34 +01:00
drm drm/i915/pxp:[PXP-MULTI-UAPI] Implement ioctl action to query PXP tag 2023-07-18 13:24:04 +08:00
linux virt: acrn: Introduce interfaces for PIO region passthrough 2024-07-31 15:40:11 +08:00
misc gna: Enable support for GNA drivers 2023-05-12 17:02:47 +08:00
mtd This pull request contains updates for UBI and UBIFS 2022-10-14 18:23:23 -07:00
rdma RDMA/hns: Fix incorrect sge nums calculation 2022-12-31 13:32:33 +01:00
scsi scsi: scsi_transport_fc: Adjust struct fc_nl_event flex array usage 2022-09-25 12:52:48 -04:00
sound ALSA: pcm: Introduce MSBITS subformat interface 2024-04-24 22:20:29 +02:00
video
xen
Kbuild