com.ibm: Add NotifyDump method

This commit introduces a new 'NotifyDump' method in a
new com.ibm.Dump.Notify interface to cater the specific
requirements of IBM OpenPOWER systems. This is
supplementing the general dbus 'Notify' method but
caters to the unique needs of IBM OpenPOWER systems.

The 'NotifyDump' method creates or updates a dump
entry based on parameters and specific dump type,
like 'System' or 'Resource'. The host provides a
source dump id, size, dump type and a 'token'. The
token helps identify user-initiated dump requests and
defaults to 0 if not valid.

Change-Id: Ic036b6ce30ccd0d12717c1ee314ba8aa4c4c74f3
Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
diff --git a/yaml/com/ibm/Dump/Notify.interface.yaml b/yaml/com/ibm/Dump/Notify.interface.yaml
new file mode 100644
index 0000000..c5074b0
--- /dev/null
+++ b/yaml/com/ibm/Dump/Notify.interface.yaml
@@ -0,0 +1,62 @@
+description: >
+    Implement to notify the creation of new dump. This interface is used when a
+    dump is already created and ready to be offloaded. This interface will
+    update an existing dump object or add a new one with the provided
+    properties. The existing create interface should be used when the data is
+    being collected and the dump needs to be packaged.
+
+    Specifically for IBM OpenPOWER systems, dumps are collected and stored in
+    the host. Post dump completion, the host notifies via PLDM, which calls this
+    interface with dump type, dump source id (an id assigned by the host and
+    used for all communication with the host), and the size of the newly created
+    dump.
+
+    Any OpenBMC implementation must provide exactly one implementation of
+    com.ibm.Dump.Notify on /xyz/openbmc_project/dump.
+methods:
+    - name: NotifyDump
+      description: >
+          Create or update a dump entry based on the parameters and the specific
+          dump type.
+      parameters:
+          - name: SourceDumpId
+            type: uint32
+            description: >
+                The dump id provided by the source of the dump. In IBM OpenPOWER
+                systems, some types of dumps are generated and stored in the
+                host memory. All dumps have a unique id, but when communicating
+                to the source of the dump, the SourceDumpId will be used.
+          - name: Size
+            type: uint64
+            description: >
+                Size of the dump in bytes. On large systems, the size of the
+                dump can be up to 32GB.
+          - name: DumpType
+            type: enum [self.DumpType]
+            description: >
+                The type of the dump.
+          - name: Token
+            type: uint32
+            default: 0
+            description: >
+                Sometimes the dump is created in the host based on the request
+                from the user, such requests come through the BMC first and then
+                get forwaded to host in such cases host will be sending a token
+                to identify the dump request. If the token is not valid it
+                should be defaulted to 0.
+      errors:
+          - xyz.openbmc_project.Dump.Create.Error.Disabled
+
+enumerations:
+    - name: DumpType
+      description: >
+          The type of the host dump to be collected.
+      values:
+          - name: "System"
+            description: >
+                System Dump: A dump that contains certain hardware register data
+                and host memory.
+          - name: "Resource"
+            description: >
+                Resource Dump: A dump of host resources, created for various
+                host components. The content may vary accordingly.