Re: [PATCH v8 1/1] virtio-media: Add virtio media device specification

Albert Esteve <[email protected]>
Newsgroups dev.linux.lists.virtio-comment
Message-ID <CADSE00+gAfgCz0N8ceS2kdZkvEF6=nBHEghrmm8eXfuyZ10_Mw@mail.gmail.com>
On Wed, Jul 9, 2025 at 11:38 AM Albert Esteve <[email protected]> wrote:
>
> On Wed, Jul 9, 2025 at 11:32 AM Alex Bennée <[email protected]> wrote:
> >
> > Albert Esteve <[email protected]> writes:
> >
> > > On Fri, Mar 14, 2025 at 2:26 PM Alexandre Courbot <[email protected]> wrote:
> > >>
> > >> Hello Albert,
> > >>
> > >> On Tue Mar 4, 2025 at 10:01 PM JST, Albert Esteve wrote:
> > >> > Virtio-media is an encapsulation of the V4L2 UAPI into
> > >> > virtio, able to virtualize any video device supported
> > >> > by V4L2.
> > >> >
> > >> > Note that virtio-media does not require the use of a
> > >> > V4L2 device driver on the host or guest side -
> > >> > V4L2 is only used as a host-guest protocol,
> > >> > and both sides are free to convert it from/to any
> > >> > model that they wish to use.
> > >>
> > >> Thank you for your patience with this. I have done a final pass on this
> > >> version and it looks great to me!
> > >>
> > >> Reviewed-by: Alexandre Courbot <[email protected]>
> > >>
> > >
> > > Thanks! Could we please open a voting ballot for these changes?
> > >
> > > Fixes: https://github.com/oasis-tcs/virtio-spec/issues/214
> >
> > What was the result of the ballot?
>
> AFAIU the ballot was approved. There were conflicts with the
> virtio-1.4 branch, which may have delayed the integration. I've just
> sent a new version of the patch rebased to virtio-1.4 to try to ease
> the process.

Adding the diff here on the v8 instead, to avoid having to vote again
on a new patch version.
The diff should allow applying the original v8 patch cleanly to
virtio-1.4. Let me know if this is enough.

----
diff --git a/content.tex b/content.tex
index 59925ae..56b2cb1 100644
--- a/content.tex
+++ b/content.tex
@@ -100,7 +100,7 @@ \section{Feature Bits}\label{sec:Basic Facilities
of a Virtio Device / Feature B
 \item[0 to 23, and 50 to 127] Feature bits for the specific device type

 \item[24 to 41] Feature bits reserved for extensions to the queue and
-  feature negotiation mechanisms
+  feature negotiation mechanisms, see \ref{sec:Reserved Feature Bits}

 \item[42 to 49, and 128 and above] Feature bits reserved for future extensions.
 \end{description}
@@ -493,7 +493,7 @@ \section{Driver Notifications} \label{sec:Basic
Facilities of a Virtio Device /
 \section{Exporting Objects}\label{sec:Basic Facilities of a Virtio
Device / Exporting Objects}

 When an object created by one virtio device needs to be
-shared with a seperate virtio device, the first device can
+shared with a separate virtio device, the first device can
 export the object by generating a UUID which can then
 be passed to the second device to identify the object.

@@ -503,11 +503,12 @@ \section{Exporting Objects}\label{sec:Basic
Facilities of a Virtio Device / Expo
 UUIDs as specified by \hyperref[intro:rfc4122]{[RFC4122]}.

 \input{admin.tex}
+\input{device-parts.tex}

 \chapter{General Initialization And Device
Operation}\label{sec:General Initialization And Device Operation}

 We start with an overview of device initialization, then expand on the
-details of the device and how each step is preformed.  This section
+details of the device and how each step is performed.  This section
 is best read along with the bus-specific section which describes
 how to communicate with the specific device.

@@ -649,7 +650,7 @@ \chapter{Device Types}\label{sec:Device Types}

 Discovering what devices are available and their type is bus-dependent.

-\begin{tabular} { |l|c| }
+\begin{longtable} { |l|c| }
 \hline
 Device ID  &  Virtio Device    \\
 \hline \hline
@@ -737,9 +738,17 @@ \chapter{Device Types}\label{sec:Device Types}
 \hline
 44         &   ISM device \\
 \hline
-45         &   SPI master \\
+45         &   SPI controller \\
 \hline
-\end{tabular}
+46         &   TEE device \\
+\hline
+47         &   CPU balloon device \\
+\hline
+48         &   Media device \\
+\hline
+49         &   USB controller \\
+\hline
+\end{longtable}

 Some of the devices above are unspecified by this document,
 because they are seen as immature or especially niche.  Be warned
@@ -767,6 +776,8 @@ \chapter{Device Types}\label{sec:Device Types}
 \input{device-types/scmi/description.tex}
 \input{device-types/gpio/description.tex}
 \input{device-types/pmem/description.tex}
+\input{device-types/can/description.tex}
+\input{device-types/spi/description.tex}
 \input{device-types/media/description.tex}

 \chapter{Reserved Feature Bits}\label{sec:Reserved Feature Bits}

diff --git a/conformance.tex b/conformance.tex
index 2564034..0856353 100644
--- a/conformance.tex
+++ b/conformance.tex
@@ -33,6 +33,9 @@ \section{Conformance Targets}\label{sec:Conformance
/ Conformance Targets}
 \ref{sec:Conformance / Driver Conformance / I2C Adapter Driver Conformance},
 \ref{sec:Conformance / Driver Conformance / SCMI Driver Conformance},
 \ref{sec:Conformance / Driver Conformance / GPIO Driver Conformance},
+\ref{sec:Conformance / Driver Conformance / PMEM Driver Conformance},
+\ref{sec:Conformance / Driver Conformance / CAN Driver Conformance},
+\ref{sec:Conformance / Driver Conformance / SPI Controller Driver Conformance},
 \ref{sec:Conformance / Driver Conformance / PMEM Driver Conformance} or
 \ref{sec:Conformance / Driver Conformance / Media Driver Conformance}.

@@ -61,7 +64,10 @@ \section{Conformance Targets}\label{sec:Conformance
/ Conformance Targets}
 \ref{sec:Conformance / Device Conformance / I2C Adapter Device Conformance},
 \ref{sec:Conformance / Device Conformance / SCMI Device Conformance},
 \ref{sec:Conformance / Device Conformance / GPIO Device Conformance},
-\ref{sec:Conformance / Device Conformance / PMEM Device Conformance} or
+\ref{sec:Conformance / Device Conformance / PMEM Device Conformance},
+\ref{sec:Conformance / Device Conformance / CAN Device Conformance},
+\ref{sec:Conformance / Device Conformance / SPI Controller Device Conformance},
+\ref{sec:Conformance / Device Conformance / PMEM Device Conformance},
 \ref{sec:Conformance / Device Conformance / Media Device Conformance}.

     \item Clause \ref{sec:Conformance / Legacy Interface:
Transitional Device and Transitional Driver Conformance}.
@@ -78,6 +84,7 @@ \section{Conformance Targets}\label{sec:Conformance
/ Conformance Targets}
 \item \ref{drivernormative:Basic Facilities of a Virtio Device / Device Reset}
 \item \ref{drivernormative:Basic Facilities of a Virtio Device /
Device Configuration Space}
 \item \ref{drivernormative:Basic Facilities of a Virtio Device / Virtqueues}
+\item \ref{drivernormative:Basic Facilities of a Virtio Device /
Virtqueues / Virtqueue Reset / Virtqueue Reset}
 \item \ref{drivernormative:Basic Facilities of a Virtio Device /
Message Framing}
 \item \ref{drivernormative:Basic Facilities of a Virtio Device /
Virtqueues / The Virtqueue Descriptor Table}
 \item \ref{drivernormative:Basic Facilities of a Virtio Device /
Virtqueues / The Virtqueue Descriptor Table / Indirect Descriptors}
@@ -96,6 +103,9 @@ \section{Conformance Targets}\label{sec:Conformance
/ Conformance Targets}
 \item \ref{drivernormative:General Initialization And Device
Operation / Device Initialization}
 \item \ref{drivernormative:General Initialization And Device
Operation / Device Cleanup}
 \item \ref{drivernormative:Reserved Feature Bits}
+\item \ref{drivernormative:Basic Facilities of a Virtio Device /
Device groups / Group administration commands / Device and driver
capabilities}
+\item \ref{drivernormative:Basic Facilities of a Virtio Device /
Device groups / Group administration commands / Device resource
objects}
+\item \ref{drivernormative:Basic Facilities of a Virtio Device /
Device groups / Group administration commands / Device parts}
 \end{itemize}

 \conformance{\subsection}{PCI Driver
Conformance}\label{sec:Conformance / Driver Conformance / PCI Driver
Conformance}
@@ -154,6 +164,8 @@ \section{Conformance
Targets}\label{sec:Conformance / Conformance Targets}
 \input{device-types/scmi/driver-conformance.tex}
 \input{device-types/gpio/driver-conformance.tex}
 \input{device-types/pmem/driver-conformance.tex}
+\input{device-types/can/driver-conformance.tex}
+\input{device-types/spi/driver-conformance.tex}
 \input{device-types/media/driver-conformance.tex}

 \conformance{\section}{Device Conformance}\label{sec:Conformance /
Device Conformance}
@@ -165,6 +177,7 @@ \section{Conformance
Targets}\label{sec:Conformance / Conformance Targets}
 \item \ref{devicenormative:Basic Facilities of a Virtio Device / Feature Bits}
 \item \ref{devicenormative:Basic Facilities of a Virtio Device / Device Reset}
 \item \ref{devicenormative:Basic Facilities of a Virtio Device /
Device Configuration Space}
+\item \ref{devicenormative:Basic Facilities of a Virtio Device /
Virtqueues / Virtqueue Reset / Virtqueue Reset}
 \item \ref{devicenormative:Basic Facilities of a Virtio Device /
Message Framing}
 \item \ref{devicenormative:Basic Facilities of a Virtio Device /
Virtqueues / The Virtqueue Descriptor Table}
 \item \ref{devicenormative:Basic Facilities of a Virtio Device /
Virtqueues / The Virtqueue Descriptor Table / Indirect Descriptors}
@@ -176,6 +189,9 @@ \section{Conformance
Targets}\label{sec:Conformance / Conformance Targets}
 \item \ref{devicenormative:Basic Facilities of a Virtio Device /
Packed Virtqueues / Scatter-Gather Support}
 \item \ref{devicenormative:Basic Facilities of a Virtio Device /
Shared Memory Regions}
 \item \ref{devicenormative:Reserved Feature Bits}
+\item \ref{devicenormative:Basic Facilities of a Virtio Device /
Device groups / Group administration commands / Device and driver
capabilities}
+\item \ref{devicenormative:Basic Facilities of a Virtio Device /
Device groups / Group administration commands / Device resource
objects}
+\item \ref{devicenormative:Basic Facilities of a Virtio Device /
Device groups / Group administration commands / Device parts}
 \end{itemize}

 \conformance{\subsection}{PCI Device
Conformance}\label{sec:Conformance / Device Conformance / PCI Device
Conformance}
@@ -241,6 +257,8 @@ \section{Conformance
Targets}\label{sec:Conformance / Conformance Targets}
 \input{device-types/scmi/device-conformance.tex}
 \input{device-types/gpio/device-conformance.tex}
 \input{device-types/pmem/device-conformance.tex}
+\input{device-types/can/device-conformance.tex}
+\input{device-types/spi/device-conformance.tex}
 \input{device-types/media/device-conformance.tex}

 \conformance{\section}{Legacy Interface: Transitional Device and
Transitional Driver Conformance}\label{sec:Conformance / Legacy
Interface: Transitional Device and Transitional Driver Conformance}

>
> >
> > --
> > Alex Bennée
> > Virtualisation Tech Lead @ Linaro
> >
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.