path: root/Documentation/powerpc
diff options
authorShivaprasad G Bhat <>2021-03-29 13:36:43 -0400
committerMichael Ellerman <>2021-04-14 23:04:07 +1000
commit75b7c05ebf902632f7f540c3eb0a8945c2d74aab (patch)
treed3150b2c37b1363fc329a406c9988c25e5eef728 /Documentation/powerpc
parentaf072b1a9d4d9edc24da84a071b0671e147026cb (diff)
powerpc/papr_scm: Implement support for H_SCM_FLUSH hcall
Add support for ND_REGION_ASYNC capability if the device tree indicates 'ibm,hcall-flush-required' property in the NVDIMM node. Flush is done by issuing H_SCM_FLUSH hcall to the hypervisor. If the flush request failed, the hypervisor is expected to to reflect the problem in the subsequent nvdimm H_SCM_HEALTH call. This patch prevents mmap of namespaces with MAP_SYNC flag if the nvdimm requires an explicit flush[1]. References: [1] Signed-off-by: Shivaprasad G Bhat <> Reviewed-by: Aneesh Kumar K.V <> [mpe: Use unsigned long / long instead of uint64_t/int64_t] Signed-off-by: Michael Ellerman <> Link:
Diffstat (limited to 'Documentation/powerpc')
1 files changed, 14 insertions, 0 deletions
diff --git a/Documentation/powerpc/papr_hcalls.rst b/Documentation/powerpc/papr_hcalls.rst
index 48fcf1255a33..648f278eea8f 100644
--- a/Documentation/powerpc/papr_hcalls.rst
+++ b/Documentation/powerpc/papr_hcalls.rst
@@ -275,6 +275,20 @@ Health Bitmap Flags:
Given a DRC Index collect the performance statistics for NVDIMM and copy them
to the resultBuffer.
+| Input: *drcIndex, continue-token*
+| Out: *continue-token*
+| Return Value: *H_SUCCESS, H_Parameter, H_P2, H_BUSY*
+Given a DRC Index Flush the data to backend NVDIMM device.
+The hcall returns H_BUSY when the flush takes longer time and the hcall needs
+to be issued multiple times in order to be completely serviced. The
+*continue-token* from the output to be passed in the argument list of
+subsequent hcalls to the hypervisor until the hcall is completely serviced
+at which point H_SUCCESS or other error is returned by the hypervisor.
.. [1] "Power Architecture Platform Reference"