Skip to content

Commit 5be24d3

Browse files
virtio-msg: Switch to normative in device numbers
Switch to normative statement in device numbers and enumeration section. Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
1 parent d045ab6 commit 5be24d3

1 file changed

Lines changed: 16 additions & 6 deletions

File tree

transport-msg.tex

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -229,19 +229,29 @@ \subsubsection{Device Numbers and Enumeration}
229229
Device Numbers}
230230

231231
Each virtio-msg bus instance contains one or more \emph{devices}, identified
232-
by a 16-bit \textbf{device number}. Buses MAY discover these device
233-
numbers in multiple ways:
232+
by a 16-bit \textbf{device number}. Buses discover these device numbers through
233+
mechanisms such as:
234234
\begin{itemize}
235235
\item \textbf{Message-Based Enumeration}: Using \busref{GET_DEVICES} to query
236236
which numbers exist (optional).
237237
\item \textbf{Platform Data}: A device tree, ACPI tables, or hypervisor calls
238238
might inform the bus of available device numbers and their properties.
239239
\end{itemize}
240240

241-
Once a bus confirms that a given device number is valid (regardless of the method),
242-
it typically issues \msgref{GET_DEVICE_INFO} to retrieve the device's Device ID
243-
and vendor ID. The bus can then register the device with the host OS to initiate
244-
the usual Virtio driver binding process.
241+
Once a bus confirms that a device number is valid—regardless of the discovery
242+
method—it normally issues \msgref{GET_DEVICE_INFO} to retrieve the device and
243+
vendor IDs before registering the device with the host OS so the usual Virtio
244+
driver binding process can begin.
245+
246+
\busnormative{\paragraph}{Device Number Assignment}{Virtio Transport Options / Virtio Over Messages / Basic Concepts / Device Numbers / Assignment}
247+
\begin{itemize}
248+
\item A bus implementation MUST assign a unique device number to every
249+
device on a given bus instance and MUST NOT forward transport messages
250+
for a device number that has not been validated.
251+
\item A bus implementation SHOULD provide the driver with sufficient
252+
information—either via \busref{GET_DEVICES} or equivalent platform
253+
data—to discover each valid device number.
254+
\end{itemize}
245255

246256
\subsubsection{Configuration Generation Count}
247257
\label{sec:Virtio Transport Options / Virtio Over Messages / Basic Concepts / ConfigGen}

0 commit comments

Comments
 (0)