ipmi: split library constructor

Split out the library constuctor so that the code can be built into
separate library modules.

Signed-off-by: Patrick Venture <venture@google.com>
Change-Id: I70ac51aaea200d4634f9220a642b0e2bef6748bd
diff --git a/ipmi/manual_messages.hpp b/ipmi/manual_messages.hpp
new file mode 100644
index 0000000..5418d60
--- /dev/null
+++ b/ipmi/manual_messages.hpp
@@ -0,0 +1,31 @@
+#pragma once
+
+#include <cstdint>
+
+namespace pid_control
+{
+namespace ipmi
+{
+
+enum ManualSubCmd
+{
+    getControlState = 0,
+    setControlState = 1,
+    getFailsafeState = 2,
+};
+
+struct FanCtrlRequest
+{
+    uint8_t command;
+    uint8_t zone;
+} __attribute__((packed));
+
+struct FanCtrlRequestSet
+{
+    uint8_t command;
+    uint8_t zone;
+    uint8_t value;
+} __attribute__((packed));
+
+} // namespace ipmi
+} // namespace pid_control