It's been a requirement that at least one function pointer for read
and one for write are provided ever since the MemoryRegion APIs were
introduced in 2012.

Signed-off-by: Bin Meng <[email protected]>
---

 docs/devel/memory.rst | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/docs/devel/memory.rst b/docs/devel/memory.rst
index 5dc8a12682..7b589b21d2 100644
--- a/docs/devel/memory.rst
+++ b/docs/devel/memory.rst
@@ -344,6 +344,11 @@ based on the attributes used for the memory transaction, 
or need
 to be able to respond that the access should provoke a bus error
 rather than completing successfully; those devices can use the
 ->read_with_attrs() and ->write_with_attrs() callbacks instead.
+The requirement for a device's MemoryRegionOps is that at least
+one callback for read and one for write are provided. If both
+->read() and ->read_with_attrs() are provided, the plain ->read()
+version takes precedence over the with_attrs() version. So does
+the write callback.
 
 In addition various constraints can be supplied to control how these
 callbacks are called:
-- 
2.25.1


Reply via email to