README: cleanup and split out oem-ipmi details

Signed-off-by: Patrick Venture <venture@google.com>
Change-Id: I459a910f39695f22732bfdef2d70a9d594af290d
diff --git a/README.md b/README.md
index ac57750..c2e55fc 100644
--- a/README.md
+++ b/README.md
@@ -142,73 +142,13 @@
 Due to data center requirements, the delta between the outgoing air temperature
 and the environmental air temperature must be no greater than 15C.
 
-### IPMI Command Specification
+### IPMI Access to Phosphor-pid-control
 
-Gsys needs the ability to send to the BMC, the margin information on the devices
-that it knows how to read that the BMC cannot. There is no command in IPMI that
-currently supports this use-case, therefore it will be added as an OEM command.
-
-The state of the BMC readable temperature sensors can be read through normal
-IPMI commands and is already supported.
-
-#### OEM Set Control
-
-Gsys needs to be able to set the control of the thermal system to either
-automatic or manual. When manual, the daemon will effectively wait to be told to
-be put back in automatic mode. It is expected in this manual mode that something
-will be controlling the fans via the other commands.
-
-Manual mode is controlled by zone through the following OEM command:
-
-##### Request
-
-Byte | Purpose      | Value
----- | ------------ | -----------------------------------------------------
-`00` | `netfn`      | `0x2e`
-`01` | `command`    | `0x04 (also using manual command)`
-`02` | `oem1`       | `0xcf`
-`03` | `oem2`       | `0xc2`
-`04` | `padding`    | `0x00`
-`05` | `SubCommand` | `Get or Set. Get == 0, Set == 1`
-`06` | `ZoneId`     |
-`07` | `Mode`       | `If Set, Value 1 == Manual Mode, 0 == Automatic Mode`
-
-##### Response
-
-Byte | Purpose   | Value
----- | --------- | -----------------------------------------------------
-`02` | `oem1`    | `0xcf`
-`03` | `oem2`    | `0xc2`
-`04` | `padding` | `0x00`
-`07` | `Mode`    | `If Set, Value 1 == Manual Mode, 0 == Automatic Mode`
-
-#### OEM Get Failsafe Mode
-
-Gbmctool needs to be able to read back whether a zone is in failsafe mode. This
-setting is read-only because it's dynamically determined within Swampd per zone.
-
-Byte | Purpose      | Value
----- | ------------ | ----------------------------------
-`00` | `netfn`      | `0x2e`
-`01` | `command`    | `0x04 (also using manual command)`
-`02` | `oem1`       | `0xcf`
-`03` | `oem2`       | `0xc2`
-`04` | `padding`    | `0x00`
-`05` | `SubCommand` | `Get == 2`
-`06` | `ZoneId`     |
-
-##### Response
-
-Byte | Purpose    | Value
----- | ---------- | -----------------------------------------------
-`02` | `oem1`     | `0xcf`
-`03` | `oem2`     | `0xc2`
-`04` | `padding`  | `0x00`
-`07` | `failsafe` | `1 == in Failsafe Mode, 0 not in failsafe mode`
+[OEM-IPMI Definitions](ipmid.md)
 
 #### Set Sensor Value
 
-Gsys needs to update the thermal controller with information not necessarily
+Tools needs to update the thermal controller with information not necessarily
 available to the BMC. This will comprise of a list of temperature (or margin?)
 sensors that are updated by the set sensor command. Because they don't represent
 real sensors in the system, the set sensor handler can simply broadcast the
@@ -216,13 +156,13 @@
 
 #### Set Fan PWM
 
-Gsys can override a specific fan's PWM when we implement the set sensor IPMI
+A tool can override a specific fan's PWM when we implement the set sensor IPMI
 command pathway.
 
 #### Get Fan Tach
 
-Gsys can read fan_tach through the normal IPMI interface presently exported for
-sensors.
+A tool can read fan_tach through the normal IPMI interface presently exported
+for sensors.
 
 ### Sensor Update Loop
 
@@ -267,14 +207,14 @@
 This project is designed to be a daemon running within the OpenBMC environment.
 It will use a well-defined configuration file to control the temperature of the
 tray components to keep them within operating conditions. It will require
-coordinate with gsys and OpenBMC. Providing a host-side service upstream to talk
-to the BMC is beyond the scope of this project.
+coordinate with host-side tooling and OpenBMC. Providing a host-side service
+upstream to talk to the BMC is beyond the scope of this project.
 
 ## Security Considerations
 
 A rogue client on the host could send invalid thermal information causing
 physical damage to the system. There will be an effort to sanity check all input
-from gsys to alleviate this concern.
+from a host-tool to alleviate this concern.
 
 ## Privacy Considerations
 
@@ -290,11 +230,11 @@
 
 Testing the system on real hardware will be performed to verify:
 
-1.  The fallback values are used when gsys isn't reporting.
+1.  The fallback values are used when the host isn't reporting.
 1.  The system behaves as expected given the information it reads.
 
-Unit-tests will provide that we know it validates information from gsys properly
-as well as handles difficult to reproduce edge cases.
+Unit-tests will provide that we know it validates information from the host
+properly as well as handles difficult to reproduce edge cases.
 
 The testing of this project on real hardware can likely fold into the general
 gBMC testing planned.
diff --git a/ipmi.md b/ipmi.md
new file mode 100644
index 0000000..2a377a3
--- /dev/null
+++ b/ipmi.md
@@ -0,0 +1,67 @@
+# OEM-IPMI Commands to talk to Phosphor-pid-control
+
+## IPMI Command Specification
+
+The host needs the ability to send to the BMC, the margin information on the
+devices that it knows how to read that the BMC cannot. There is no command in
+IPMI that currently supports this use-case, therefore it will be added as an OEM
+command.
+
+The state of the BMC readable temperature sensors can be read through normal
+IPMI commands and is already supported.
+
+### OEM Set Control
+
+A host tool needs to be able to set the control of the thermal system to either
+automatic or manual. When manual, the daemon will effectively wait to be told to
+be put back in automatic mode. It is expected in this manual mode that something
+will be controlling the fans via the other commands.
+
+Manual mode is controlled by zone through the following OEM command:
+
+#### Request
+
+Byte | Purpose      | Value
+---- | ------------ | -----------------------------------------------------
+`00` | `netfn`      | `0x2e`
+`01` | `command`    | `0x04 (also using manual command)`
+`02` | `oem1`       | `0xcf`
+`03` | `oem2`       | `0xc2`
+`04` | `padding`    | `0x00`
+`05` | `SubCommand` | `Get or Set. Get == 0, Set == 1`
+`06` | `ZoneId`     |
+`07` | `Mode`       | `If Set, Value 1 == Manual Mode, 0 == Automatic Mode`
+
+#### Response
+
+Byte | Purpose   | Value
+---- | --------- | -----------------------------------------------------
+`02` | `oem1`    | `0xcf`
+`03` | `oem2`    | `0xc2`
+`04` | `padding` | `0x00`
+`07` | `Mode`    | `If Set, Value 1 == Manual Mode, 0 == Automatic Mode`
+
+### OEM Get Failsafe Mode
+
+A host tool needs to be able to read back whether a zone is in failsafe mode.
+This setting is read-only because it's dynamically determined within Swampd per
+zone.
+
+Byte | Purpose      | Value
+---- | ------------ | ----------------------------------
+`00` | `netfn`      | `0x2e`
+`01` | `command`    | `0x04 (also using manual command)`
+`02` | `oem1`       | `0xcf`
+`03` | `oem2`       | `0xc2`
+`04` | `padding`    | `0x00`
+`05` | `SubCommand` | `Get == 2`
+`06` | `ZoneId`     |
+
+#### Response
+
+Byte | Purpose    | Value
+---- | ---------- | -----------------------------------------------
+`02` | `oem1`     | `0xcf`
+`03` | `oem2`     | `0xc2`
+`04` | `padding`  | `0x00`
+`07` | `failsafe` | `1 == in Failsafe Mode, 0 not in failsafe mode`