docs/devel/reset: Document reset expectations for DMA and IOMMU
authorEric Auger <eric.auger@redhat.com>
Tue, 18 Feb 2025 18:25:35 +0000 (19:25 +0100)
committerMichael S. Tsirkin <mst@redhat.com>
Fri, 21 Feb 2025 12:21:25 +0000 (07:21 -0500)
To avoid any translation faults, the IOMMUs are expected to be
reset after the devices they protect. Document that we expect
DMA requests to be stopped during the 'enter' or 'hold' phase
while IOMMUs should be reset during the 'exit' phase.

Signed-off-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Message-Id: <20250218182737.76722-6-eric.auger@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
docs/devel/reset.rst

index adefd59ef97c92d798779b1e19de4bc2aca5ffe2..0b8b2fa5f40df833f60ac24067648d3191988a76 100644 (file)
@@ -143,6 +143,11 @@ The *exit* phase is executed only when the last reset operation ends. Therefore
 the object does not need to care how many of reset controllers it has and how
 many of them have started a reset.
 
+DMA capable devices are expected to cancel all outstanding DMA operations
+during either 'enter' or 'hold' phases. IOMMUs are expected to reset during
+the 'exit' phase and this sequencing makes sure no outstanding DMA request
+will fault.
+
 
 Handling reset in a resettable object
 -------------------------------------