[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [virtio-dev] [PATCH RESEND v4 1/1] Add virtio-iommu device specification
On Wed, 20 Nov 2019 16:19:03 +0100
Jean-Philippe Brucker <jean-philippe@linaro.org> wrote:
> The IOMMU device allows a guest to manage DMA mappings for physical,
> emulated and paravirtualized endpoints. Add device description for the
> virtio-iommu device and driver. Introduce PROBE, ATTACH, DETACH, MAP and
> UNMAP requests, as well as translation error reporting.
>
> Fixes: https://github.com/oasis-tcs/virtio-spec/issues/37
> Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
> ---
> conformance.tex | 40 ++-
> content.tex | 1 +
> virtio-iommu.tex | 816 +++++++++++++++++++++++++++++++++++++++++++++++
> 3 files changed, 855 insertions(+), 2 deletions(-)
> create mode 100644 virtio-iommu.tex
Sorry about being late to the party, but I just started looking at this
when the voting went up :/
(...)
> diff --git a/virtio-iommu.tex b/virtio-iommu.tex
> new file mode 100644
> index 0000000..28c562b
> --- /dev/null
> +++ b/virtio-iommu.tex
(...)
> +\subsection{Device configuration layout}\label{sec:Device Types / IOMMU Device / Device configuration layout}
> +
> +The \field{page_size_mask} field is always present. Availability of the
> +others all depend on feature bits described in
> +\ref{sec:Device Types / IOMMU Device / Feature bits}.
> +
> +\begin{lstlisting}
> +struct virtio_iommu_config {
> + le64 page_size_mask;
> + struct virtio_iommu_range_64 {
> + le64 start;
> + le64 end;
> + } input_range;
> + struct virtio_iommu_range_32 {
> + le32 start;
> + le32 end;
> + } domain_range;
> + le32 probe_size;
> +};
> +\end{lstlisting}
> +
> +\drivernormative{\subsubsection}{Device configuration layout}{Device Types / IOMMU Device / Device configuration layout}
> +
> +The driver MUST NOT write to device configuration fields.
> +
> +\devicenormative{\subsubsection}{Device configuration layout}{Device Types / IOMMU Device / Device configuration layout}
> +
> +The device SHOULD set \field{padding} to zero.
I don't see any field named 'padding' -- is that a leftover from an
earlier version?
If it is, we can probably remove it as a trivial change on top after
this change went in.
> +
> +The device MUST set at least one bit in \field{page_size_mask}, describing
> +the page granularity. The device MAY set more than one bit in
> +\field{page_size_mask}.
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]