Lines Matching +full:virtio +full:- +full:iommu

40 #include <linux/virtio.h>
47 * struct resource_table - firmware resource table header
81 * struct fw_rsc_hdr - firmware resource entry header
95 * enum fw_resource_type - types of resource entries
99 * @RSC_DEVMEM: request to iommu_map a memory-based peripheral.
102 * @RSC_VDEV: declare support for a virtio device, and serve as its
103 * virtio header.
126 #define FW_RSC_ADDR_ANY (-1)
129 * struct fw_rsc_carveout - physically contiguous memory request
133 * @flags: iommu protection flags
135 * @name: human-readable name of the requested memory region
146 * needed to map it (in case @rproc is using an IOMMU). Reducing the TLB
155 * isn't using an iommu. In that case, though, it will obviously contain
159 * even if they do use an iommu. This is needed, e.g., if they control
167 * @flags is used to provide IOMMU protection flags, and @name should
181 * struct fw_rsc_devmem - iommu mapping request
185 * @flags: iommu protection flags
187 * @name: human-readable name of the requested region to be mapped
189 * This resource entry requests the host to iommu map a physically contiguous
191 * access to certain memory-based peripherals; _never_ use it to access
195 * via an iommu.
199 * the mapping and @flags is the IOMMU protection flags. As always, @name may
219 * struct fw_rsc_trace - trace buffer declaration
223 * @name: human-readable name of the trace buffer
242 * struct fw_rsc_vdev_vring - vring descriptor entry
246 * @notifyid: a unique rproc-wide notify index for this vring. This notify
267 * struct fw_rsc_vdev - virtio device header
268 * @id: virtio device id (as in virtio_ids.h)
269 * @notifyid: a unique rproc-wide notify index for this vdev. This notify
272 * @dfeatures: specifies the virtio device features supported by the firmware
275 * @config_len: the size of the virtio config space of this vdev. The config
277 * @status: a place holder where the host will indicate its virtio progress.
282 * This resource is a virtio device header: it provides information about
284 * to negotiate and share certain virtio properties.
293 * processors. We use the name 'gfeatures' to comply with virtio's terms,
298 * 2. immediately following this structure is the virtio config space for
299 * this vdev (which is specific to the vdev; for more info, read the virtio
317 * struct rproc_mem_entry - memory entry descriptor
328 * @flags: iommu protection flags
351 * enum rsc_handling_status - return status of rproc_ops handle_rsc hook
361 * struct rproc_ops - platform-specific device handlers
409 * enum rproc_state - remote processor states
423 * to rproc_state_string, a state-to-name lookup table,
440 * enum rproc_crash_type - remote processor crash types
441 * @RPROC_MMUFAULT: iommu fault
457 * enum rproc_dump_mechanism - Coredump options for core
471 * struct rproc_dump_segment - segment info from ELF header
493 * enum rproc_features - features supported
507 * struct rproc - represents a physical remote processor device
509 * @domain: iommu domain
512 * @priv: private data which belongs to the platform-specific rproc module
513 * @ops: platform-specific start/stop rproc handlers
523 * @mappings: list of iommu mappings we initiated, needed on shutdown
525 * @rvdevs: list of remote virtio devices
527 * @notifyids: idr for dynamically assigning rproc-wide unique notify ids
539 * @auto_boot: flag to indicate if remote processor should be auto-started
592 * struct rproc_subdev - subdevice tied to a remoteproc
614 * struct rproc_vring - remoteproc vring state
619 * @notifyid: rproc-specific unique vring index
634 * struct rproc_vdev - remoteproc state for a supported virtio device
636 * @pdev: remoteproc virtio platform device
637 * @id: virtio device id (as in virtio_ids.h)