[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]