diff options
| author | Patrick Venture <venture@google.com> | 2019-01-31 07:40:49 -0800 |
|---|---|---|
| committer | Patrick Venture <venture@google.com> | 2019-01-31 07:40:49 -0800 |
| commit | 3652fce5daebc8afbd8755a36d7d4c8bfe92bdad (patch) | |
| tree | 22c68413622504519c68b890238f43f412aafd73 | |
| parent | 98dd4ef592449589c4ff795de29971a4ec80f9da (diff) | |
| download | phosphor-pid-control-3652fce5daebc8afbd8755a36d7d4c8bfe92bdad.tar.gz phosphor-pid-control-3652fce5daebc8afbd8755a36d7d4c8bfe92bdad.zip | |
README: move contents into markdown README
Move the README file into the markdown README file.
Change-Id: I9ddce7584fb1bc6f7cdf37b851441ced467a7dfb
Signed-off-by: Patrick Venture <venture@google.com>
| -rw-r--r-- | README | 47 | ||||
| -rw-r--r-- | README.md | 47 |
2 files changed, 47 insertions, 47 deletions
@@ -1,47 +0,0 @@ -# Introduction - -Swampd's primary function is to drive the fans of a system given various inputs. - -# Layout - -The code is broken out into modules as follows: - -* `dbus` - Any read or write interface that uses dbus primarily. -* `experiments` - Small execution paths that allow for fan examination -including how quickly fans respond to changes. -* `ipmi` - Manual control for any zone is handled by receiving an IPMI message. -This holds the ipmid provider for receiving those messages and sending them -onto swampd. -* `notimpl` - These are read-only and write-only interface implementations that -can be dropped into a pluggable sensor to make it complete. -* `pid` - This contains all the PID associated code, including the zone -definition, controller definition, and the PID computational code. -* `scripts` - This contains the scripts that convert YAML into C++. -* `sensors` - This contains a couple of sensor types including the pluggable -sensor's definition. It also holds the sensor manager. -* `sysfs` - This contains code that reads from or writes to sysfs. -* `threads` - Most of swampd's threads run in this method where there's just a -dbus bus that we manage. - - -# Design - -One defines a series of sensors and a series of PIDs that utilize those sensors -as inputs (and outputs). - - The thermal PID - - set-point -------->|---|---> RPM - current value ---->|___| - - The fan PID - - set-point -------->|---|---> pwm% - current value ---->|___| - - How to get set-point for fan PIDs - - thermal-out ----->|-----| - thermal-out ----->| |-----> RPM - thermal-out ----->| MAX | - thermal-out ----->|_____| @@ -300,6 +300,53 @@ 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. +## Code Notes + +Swampd's primary function is to drive the fans of a system given various inputs. + +### Layout + +The code is broken out into modules as follows: + +* `dbus` - Any read or write interface that uses dbus primarily. +* `experiments` - Small execution paths that allow for fan examination +including how quickly fans respond to changes. +* `ipmi` - Manual control for any zone is handled by receiving an IPMI message. +This holds the ipmid provider for receiving those messages and sending them +onto swampd. +* `notimpl` - These are read-only and write-only interface implementations that +can be dropped into a pluggable sensor to make it complete. +* `pid` - This contains all the PID associated code, including the zone +definition, controller definition, and the PID computational code. +* `scripts` - This contains the scripts that convert YAML into C++. +* `sensors` - This contains a couple of sensor types including the pluggable +sensor's definition. It also holds the sensor manager. +* `sysfs` - This contains code that reads from or writes to sysfs. +* `threads` - Most of swampd's threads run in this method where there's just a +dbus bus that we manage. + +### Design + +One defines a series of sensors and a series of PIDs that utilize those sensors +as inputs (and outputs). + + The thermal PID + + set-point -------->|---|---> RPM + current value ---->|___| + + The fan PID + + set-point -------->|---|---> pwm% + current value ---->|___| + + How to get set-point for fan PIDs (for abs temp where MAX is worst): + + thermal-out ----->|-----| + thermal-out ----->| |-----> RPM + thermal-out ----->| MAX | + thermal-out ----->|_____| + ## Notes [^2]: BMC - Board Management Controller |

