Port in intel-dbus-interfaces content

This takes the com.intel.Control.* content from the
intel-dbus-interfaces repo and puts it into the yaml/com/intel subdir.

Tested:
    meson build -Ddata_com_intel=true && ninja -C build
    Configures and builds, creating a library with the
    com.intel.Control.* interfaces in it (inspected using nm)

Change-Id: I42b07b734483a4a2c9ba89e1bcadbc08d5b074b5
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
diff --git a/gen/com/intel/Control/NMISource/meson.build b/gen/com/intel/Control/NMISource/meson.build
new file mode 100644
index 0000000..68f7c77
--- /dev/null
+++ b/gen/com/intel/Control/NMISource/meson.build
@@ -0,0 +1,15 @@
+# Generated file; do not modify.
+generated_sources += custom_target(
+    'com/intel/Control/NMISource__cpp'.underscorify(),
+    input: [ '../../../../../yaml/com/intel/Control/NMISource.interface.yaml',  ],
+    output: [ 'server.cpp', 'server.hpp', 'client.hpp',  ],
+    depend_files: sdbusplusplus_depfiles,
+    command: [
+        sdbuspp_gen_meson_prog, '--command', 'cpp',
+        '--output', meson.current_build_dir(),
+        '--tool', sdbusplusplus_prog,
+        '--directory', meson.current_source_dir() / '../../../../../yaml',
+        'com/intel/Control/NMISource',
+    ],
+)
+
diff --git a/gen/com/intel/Control/OCOTShutdownPolicy/meson.build b/gen/com/intel/Control/OCOTShutdownPolicy/meson.build
new file mode 100644
index 0000000..ff50a9b
--- /dev/null
+++ b/gen/com/intel/Control/OCOTShutdownPolicy/meson.build
@@ -0,0 +1,15 @@
+# Generated file; do not modify.
+generated_sources += custom_target(
+    'com/intel/Control/OCOTShutdownPolicy__cpp'.underscorify(),
+    input: [ '../../../../../yaml/com/intel/Control/OCOTShutdownPolicy.interface.yaml',  ],
+    output: [ 'server.cpp', 'server.hpp', 'client.hpp',  ],
+    depend_files: sdbusplusplus_depfiles,
+    command: [
+        sdbuspp_gen_meson_prog, '--command', 'cpp',
+        '--output', meson.current_build_dir(),
+        '--tool', sdbusplusplus_prog,
+        '--directory', meson.current_source_dir() / '../../../../../yaml',
+        'com/intel/Control/OCOTShutdownPolicy',
+    ],
+)
+
diff --git a/gen/com/intel/Control/meson.build b/gen/com/intel/Control/meson.build
new file mode 100644
index 0000000..2342e1e
--- /dev/null
+++ b/gen/com/intel/Control/meson.build
@@ -0,0 +1,31 @@
+# Generated file; do not modify.
+subdir('NMISource')
+generated_others += custom_target(
+    'com/intel/Control/NMISource__markdown'.underscorify(),
+    input: [ '../../../../yaml/com/intel/Control/NMISource.interface.yaml',  ],
+    output: [ 'NMISource.md' ],
+    depend_files: sdbusplusplus_depfiles,
+    command: [
+        sdbuspp_gen_meson_prog, '--command', 'markdown',
+        '--output', meson.current_build_dir(),
+        '--tool', sdbusplusplus_prog,
+        '--directory', meson.current_source_dir() / '../../../../yaml',
+        'com/intel/Control/NMISource',
+    ],
+)
+
+subdir('OCOTShutdownPolicy')
+generated_others += custom_target(
+    'com/intel/Control/OCOTShutdownPolicy__markdown'.underscorify(),
+    input: [ '../../../../yaml/com/intel/Control/OCOTShutdownPolicy.interface.yaml',  ],
+    output: [ 'OCOTShutdownPolicy.md' ],
+    depend_files: sdbusplusplus_depfiles,
+    command: [
+        sdbuspp_gen_meson_prog, '--command', 'markdown',
+        '--output', meson.current_build_dir(),
+        '--tool', sdbusplusplus_prog,
+        '--directory', meson.current_source_dir() / '../../../../yaml',
+        'com/intel/Control/OCOTShutdownPolicy',
+    ],
+)
+
diff --git a/gen/com/intel/meson.build b/gen/com/intel/meson.build
index f0bbed6..4fda1d7 100644
--- a/gen/com/intel/meson.build
+++ b/gen/com/intel/meson.build
@@ -1,2 +1,3 @@
 # Generated file; do not modify.
+subdir('Control')
 subdir('Protocol')
diff --git a/yaml/com/intel/Control/NMISource.interface.yaml b/yaml/com/intel/Control/NMISource.interface.yaml
new file mode 100644
index 0000000..a172159
--- /dev/null
+++ b/yaml/com/intel/Control/NMISource.interface.yaml
@@ -0,0 +1,46 @@
+description: >
+    An interface for NMI signal source.
+properties:
+    - name: BMCSource
+      type: enum[self.BMCSourceSignal]
+      description: >
+          Keeps track of NMI signal source in BMC.
+      default: 'None'
+    - name: Enabled
+      type: boolean
+      description: >
+          whether the BMC enables NMI event.
+      default: true
+
+enumerations:
+   - name: BMCSourceSignal
+     description: >
+       The type of NMI source.
+     values:
+       - name: None
+         description: >
+           NONE NMI signal.
+       - name: FpBtn
+         description: >
+           Via Front Panel NMI button.
+       - name: WdPreTimeout
+         description: >
+           Via watchdog pre-timeout.
+       - name: PefMatch
+         description: >
+           Via PEF match.
+       - name: ChassisCmd
+         description: >
+           Via Chassis command.
+       - name: MemoryError
+         description: >
+           Via memory error.
+       - name: PciSerrPerr
+         description: >
+           Via PCI SERR PERR.
+       - name: SouthbridgeNmi
+         description: >
+           Via southbridge NMI.
+       - name: ChipsetNmi
+         description: >
+           Via chipset NMI.
diff --git a/yaml/com/intel/Control/OCOTShutdownPolicy.interface.yaml b/yaml/com/intel/Control/OCOTShutdownPolicy.interface.yaml
new file mode 100644
index 0000000..ccbb6e2
--- /dev/null
+++ b/yaml/com/intel/Control/OCOTShutdownPolicy.interface.yaml
@@ -0,0 +1,24 @@
+description: >
+    An interface for node shutdown policy on multi-node products.
+    It is used by Intel OEM IPMI command.
+properties:
+    - name: OCOTPolicy
+      type: enum[self.Policy]
+      description: >
+          Node shutdown policy on a power supply over current(OC)
+          or over temperature(OT) event,
+          Only available on multi-node products.
+
+      default: 'NoShutdownOnOCOT'
+
+enumerations:
+   - name: Policy
+     description: >
+       The type of shutdown policy.
+     values:
+       - name: 'NoShutdownOnOCOT'
+         description: >
+           Do not shutdown node on an OC/OT event.
+       - name: 'ShutdownOnOCOT'
+         description: >
+           Shutdown node on an OC/OT event.
\ No newline at end of file