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] 2.3.2 MMIO: Define reset requirements


This patch addresses VIRTIO-47, adding explicit description
of the device behaviour when being reset.

Signed-off-by: Pawel Moll <pawel.moll@arm.com>
---
 virtio-v1.0-wd01-part1-specification.txt | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/virtio-v1.0-wd01-part1-specification.txt b/virtio-v1.0-wd01-part1-specification.txt
index c2052ec..07d3a4d 100644
--- a/virtio-v1.0-wd01-part1-specification.txt
+++ b/virtio-v1.0-wd01-part1-specification.txt
@@ -1451,8 +1451,10 @@ configuration space. The following list presents their layout:
   flags.
   Writing non-zero values to this register sets the status flags,
   indicating the Guest progress. Writing zero (0x0) to this
-  register triggers a device reset.
-  Also see "2.2.1. Device Initialization".
+  register triggers a device reset, including clearing all
+  bits in the InterruptStatus register and ready bits in the
+  QueueReady register for all queues in the device.
+  See also p. 2.3.2.3.1. "Device Initialization".
 
 * 0x080 | W | QueueDescLow
   0x084 | W | QueueDescHigh
@@ -1516,6 +1518,9 @@ If both values are valid, it must read the DeviceID register
 and if its value is zero (0x0) must abort initialization and
 must not access any other register.
 
+Further initialization must follow the procedure described in
+p. 2.2.1. "Device Initialization".
+
 2.3.2.3.2. Virtqueue Configuration
 ----------------------------------
 
@@ -1658,6 +1663,14 @@ nor behaviour:
 * 0x064 | W | InterruptACK
 
 * 0x070 | RW | Status
+  Device status.
+  Reading from this register returns the current device status
+  flags.
+  Writing non-zero values to this register sets the status flags,
+  indicating the Guest progress. Writing zero (0x0) to this
+  register triggers a device reset. This should include
+  setting QueuePFN to zero (0x0) for all queues in the device.
+  Also see "2.2.1. Device Initialization".
 
 * 0x100+ | RW | Config
 
-- 
1.8.1.2




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