Transitional MMR device PCI Device IDs are unique. Hence, any of the existing drivers do not bind to it. This further maintains the backward compatibility with existing drivers.
Co-developed-by: Satananda Burla <sbu...@marvell.com> Signed-off-by: Parav Pandit <pa...@nvidia.com> --- transport-pci.tex | 45 +++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 41 insertions(+), 4 deletions(-) diff --git a/transport-pci.tex b/transport-pci.tex index ee11ba5..665448e 100644 --- a/transport-pci.tex +++ b/transport-pci.tex @@ -19,12 +19,14 @@ \section{Virtio Over PCI Bus}\label{sec:Virtio Transport Options / Virtio Over P \subsection{PCI Device Discovery}\label{sec:Virtio Transport Options / Virtio Over PCI Bus / PCI Device Discovery} Any PCI device with PCI Vendor ID 0x1af4, and PCI Device ID 0x1000 through -0x107f inclusive is a virtio device. The actual value within this range -indicates which virtio device is supported by the device. +0x107f inclusive and DeviceID 0x10f9 through 0x10ff is a virtio device. +The actual value within this range indicates which virtio device +type it is. The PCI Device ID is calculated by adding 0x1040 to the Virtio Device ID, as indicated in section \ref{sec:Device Types}. -Additionally, devices MAY utilize a Transitional PCI Device ID range, -0x1000 to 0x103f depending on the device type. +Additionally, devices MAY utilize a Transitional PCI Device ID range +0x1000 to 0x103f inclusive or a Transitional MMR PCI Device ID range +0x10f9 to 0x10ff inclusive, depending on the device type. \devicenormative{\subsubsection}{PCI Device Discovery}{Virtio Transport Options / Virtio Over PCI Bus / PCI Device Discovery} @@ -95,6 +97,41 @@ \subsubsection{Legacy Interfaces: A Note on PCI Device Discovery}\label{sec:Virt This is to match legacy drivers. +\subsubsection{Transitional MMR Interface: A Note on PCI Device +Discovery}\label{sec:Virtio Transport Options / Virtio Over PCI +Bus / PCI Device Discovery / Transitional MMR Interface: A Note on PCI Device Discovery} + +The transitional MMR device has one of the following PCI Device ID +depending on the device type: + +\begin{tabular}{|l|c|} +\hline +Transitional PCI Device ID & Virtio Device \\ +\hline \hline +0x10f9 & network device \\ +\hline +0x10fa & block device \\ +\hline +0x10fb & memory ballooning (traditional) \\ +\hline +0x10fc & console \\ +\hline +0x10fd & SCSI host \\ +\hline +0x10fe & entropy source \\ +\hline +0x10ff & 9P transport \\ +\hline +\end{tabular} + +The PCI Subsystem Vendor ID and the PCI Subsystem Device ID MAY +reflect the PCI Vendor and Device ID of the environment. + +The transitional MMR driver MUST match any PCI Revision ID value. + +The transitional MMR driver MAY match any PCI Subsystem Vendor ID and +any PCI Subsystem Device ID value. + \subsection{PCI Device Layout}\label{sec:Virtio Transport Options / Virtio Over PCI Bus / PCI Device Layout} The device is configured via I/O and/or memory regions (though see -- 2.26.2 --------------------------------------------------------------------- To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org