OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio-dev message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [PATCH 07/11] content: Introduce Doorbell register for MMIO


Signed-off-by: Nikos Dragazis <ndragazis@arrikto.com>
---
 content.tex | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/content.tex b/content.tex
index 628265e..d6fc17e 100644
--- a/content.tex
+++ b/content.tex
@@ -1884,6 +1884,18 @@ \subsection{MMIO Device Register Layout}\label{sec:Virtio Transport Options / Vi
     \field{SHMSel} is unused) results in a base address of
     0xffffffffffffffff.
   }
+  \hline
+  \mmioreg{Doorbell}{Doorbell Notifier}{0xc0}{W}{
+    Writing a value to this register
+    \ref{sec:Basic Facilities of a Virtio device / Doorbells} triggers a
+    notification to the device. The value written to this register is
+    interpreted as a doorbell index and the corresponding notification
+    concerns this specific doorbell. The mapping of doorbells to
+    doorbell indices is device-specific. One possible mapping would be
+    to use the integers 0 to N-1 as the doorbell indices for a total of
+    N doorbells. The total number of doorbells exposed by the device is
+    also device-specific.
+  }
   \hline 
   \mmioreg{ConfigGeneration}{Configuration atomicity value}{0x0fc}{R}{
     Reading from this register returns a value describing a version of the device-specific configuration space (see \field{Config}).
@@ -1920,6 +1932,9 @@ \subsection{MMIO Device Register Layout}\label{sec:Virtio Transport Options / Vi
 
 The device MUST NOT access virtual queue contents when \field{QueueReady} is zero (0x0).
 
+The device MUST ignore doorbell notifications for invalid doorbell
+indices.
+
 \drivernormative{\subsubsection}{MMIO Device Register Layout}{Virtio Transport Options / Virtio Over MMIO / MMIO Device Register Layout}
 The driver MUST NOT access memory locations not described in the
 table \ref{tab:Virtio Trasport Options / Virtio Over MMIO / MMIO Device Register Layout}
@@ -1977,6 +1992,8 @@ \subsubsection{Device Initialization}\label{sec:Virtio Transport Options / Virti
 Drivers not expecting shared memory MUST NOT use the shared
 memory registers.
 
+Drivers not expecting doorbells MUST NOT use the doorbell register.
+
 Further initialization MUST follow the procedure described in
 \ref{sec:General Initialization And Device Operation / Device Initialization}~\nameref{sec:General Initialization And Device Operation / Device Initialization}.
 
-- 
2.17.1



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]