diff options
-rw-r--r-- | content.tex | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/content.tex b/content.tex index 2a7a513..7b99650 100644 --- a/content.tex +++ b/content.tex @@ -1258,7 +1258,8 @@ and if that flag is set when the driver reads from the device-specific configuration, increment \field{config_generation} and clear the flag. \end{note} -The device MUST reset when 0 is written to \field{device_status}. +The device MUST reset when 0 is written to \field{device_status}, and +present a 0 in \field{device_status} once that is done. The device MUST present a 0 in \field{queue_enable} on reset. @@ -1274,6 +1275,9 @@ The driver MUST NOT write a value which is not a power of 2 to \field{queue_size The driver MUST configure the other virtqueue fields before enabling the virtqueue with \field{queue_enable}. +After writing 0 to \field{device_status}, the driver MUST wait for a read of +\field{device_status} to return 0 before reinitializing the device. + \subsubsection{Notification structure layout}\label{sec:Virtio Transport Options / Virtio Over PCI Bus / PCI Device Layout / Notification capability} The notification location is found using the VIRTIO_PCI_CAP_NOTIFY_CFG |