History log of /openbmc/phosphor-pid-control/pid/ (Results 76 – 100 of 108)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
572c43da31-Jan-2019 James Feist <james.feist@linux.intel.com>

Add Hysteresis to pid controllers

Add hysteresis to pid controllers to lower pwm changes.
It is defaulted to 0 so it should be transparent
to any controller that choses not to implement it.
This is

Add Hysteresis to pid controllers

Add hysteresis to pid controllers to lower pwm changes.
It is defaulted to 0 so it should be transparent
to any controller that choses not to implement it.
This is the same pattern used by the stepwise controller.

Tested-by: Unit tests passed

Change-Id: Ib47114285b0017258b7f77eaf067d310f95a0c60
Signed-off-by: James Feist <james.feist@linux.intel.com>

show more ...

c8bd1d1e04-Feb-2019 James Feist <james.feist@linux.intel.com>

[dbus-configuration] Back out divide by 100

In the entity-manager configuration files having a
outlimitmax of 10000 is confusing as this looks like
a tach reading, but is actually 100 percent * 100.

[dbus-configuration] Back out divide by 100

In the entity-manager configuration files having a
outlimitmax of 10000 is confusing as this looks like
a tach reading, but is actually 100 percent * 100.
Back this out when dealing with dbusconfiguration.

Change-Id: I13609573fcf1c9da50afd270ea9aad0411b5768b
Signed-off-by: James Feist <james.feist@linux.intel.com>

show more ...

e94bdc4115-Nov-2018 Patrick Venture <venture@google.com>

pid: add helper methods for thermal controller types

Add helper methods for thermal controller types, such as checking if a
string is a supported thermal type and which type that string
corresponds

pid: add helper methods for thermal controller types

Add helper methods for thermal controller types, such as checking if a
string is a supported thermal type and which type that string
corresponds to.

Change-Id: I3c782f5825e7726f264dd186df583bde0a0dc861
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

734f953515-Nov-2018 James Feist <james.feist@linux.intel.com>

Allow multiple inputs to thermal and stepwise controllers

Use std::max to determine which input value to apply.
Also start throwing when inputs are empty as otherwise
there will be a nullptr derefer

Allow multiple inputs to thermal and stepwise controllers

Use std::max to determine which input value to apply.
Also start throwing when inputs are empty as otherwise
there will be a nullptr dereference.

Tested-by: Added multiple inputs and application no longer
segfaults and verifed max was being used. Also added unit
tests.

Change-Id: I7c8eda45b99247b8e92e629f036c9a46c98d9fe2
Signed-off-by: James Feist <james.feist@linux.intel.com>

show more ...

5f59c0fd11-Nov-2018 Patrick Venture <venture@google.com>

Move all floats to doubles

The code was developed initially around a pid loop implemented using
floats. Therefore, the code was converting back and forth between
double for sensor values as inputs

Move all floats to doubles

The code was developed initially around a pid loop implemented using
floats. Therefore, the code was converting back and forth between
double for sensor values as inputs and outputs from this PID loop.

Change-Id: I2d2919e1165103040729c9f16bb84fde3dd6b81b
Signed-off-by: Patrick Venture <venture@google.com>

show more ...


/openbmc/phosphor-pid-control/Makefile.am
/openbmc/phosphor-pid-control/conf.hpp
/openbmc/phosphor-pid-control/configure.ac
/openbmc/phosphor-pid-control/dbus/dbusconfiguration.cpp
/openbmc/phosphor-pid-control/dbus/dbuswrite.cpp
/openbmc/phosphor-pid-control/dbus/util.cpp
/openbmc/phosphor-pid-control/dbus/util.hpp
/openbmc/phosphor-pid-control/main.cpp
builderconfig.cpp
controller.hpp
ec/pid.cpp
ec/pid.hpp
ec/stepwise.cpp
ec/stepwise.hpp
fancontroller.cpp
fancontroller.hpp
pidcontroller.cpp
pidcontroller.hpp
stepwisecontroller.cpp
stepwisecontroller.hpp
thermalcontroller.cpp
thermalcontroller.hpp
zone.cpp
zone.hpp
/openbmc/phosphor-pid-control/scripts/pid-example.txt
/openbmc/phosphor-pid-control/scripts/writepid.mako.cpp
/openbmc/phosphor-pid-control/scripts/writesensor.mako.cpp
/openbmc/phosphor-pid-control/scripts/writezone.mako.cpp
/openbmc/phosphor-pid-control/scripts/zone-example.txt
/openbmc/phosphor-pid-control/sensors/builder.cpp
/openbmc/phosphor-pid-control/sensors/manager.cpp
/openbmc/phosphor-pid-control/sensors/manager.hpp
/openbmc/phosphor-pid-control/setsensor.cpp
/openbmc/phosphor-pid-control/sysfs/sysfswrite.cpp
/openbmc/phosphor-pid-control/test/controller_mock.hpp
/openbmc/phosphor-pid-control/test/pid_fancontroller_unittest.cpp
/openbmc/phosphor-pid-control/test/pid_stepwisecontroller_unittest.cpp
/openbmc/phosphor-pid-control/test/pid_thermalcontroller_unittest.cpp
/openbmc/phosphor-pid-control/test/pid_zone_unittest.cpp
/openbmc/phosphor-pid-control/test/zone_mock.hpp
/openbmc/phosphor-pid-control/threads/busthread.cpp
/openbmc/phosphor-pid-control/threads/busthread.hpp
e6a7a2eb30-Oct-2018 Patrick Venture <venture@google.com>

style: s/getMinThermalRpmSetPt/getMinThermalRPMSetpoint/g

Rename method per openbmc style guide.

Change-Id: Ia861028452020ccefd463415093b5fb11f929ea4
Signed-off-by: Patrick Venture <venture@google.

style: s/getMinThermalRpmSetPt/getMinThermalRPMSetpoint/g

Rename method per openbmc style guide.

Change-Id: Ia861028452020ccefd463415093b5fb11f929ea4
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

c399f6fb30-Oct-2018 Patrick Venture <venture@google.com>

zone: use const reference consistently

In this case, the string is copied and placed into the vector's pointer
list, so it's not necessary to be passed by const reference. However,
for consistency

zone: use const reference consistently

In this case, the string is copied and placed into the vector's pointer
list, so it's not necessary to be passed by const reference. However,
for consistency it's a harmless change.

Change-Id: I5c02e98b4789e18bc9a6756bdd8c5184ad12a232
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

2d8e785130-Oct-2018 Patrick Venture <venture@google.com>

performance: fixup missing const reference in zone

Zone::getSensor is passed directly to the Sensor Manager getSensor which
takes the parameter by reference. Make it use an explicit const
reference

performance: fixup missing const reference in zone

Zone::getSensor is passed directly to the Sensor Manager getSensor which
takes the parameter by reference. Make it use an explicit const
reference at both layers.

Change-Id: I4895ea2935d20b73b88d33972e44b9ac557cd988
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

1248b15330-Oct-2018 Patrick Venture <venture@google.com>

style: use system path for dbus headers

Use system path for dbus headers.

Change-Id: I08088eb0932de738fc410104c28847aaf78d95bd
Signed-off-by: Patrick Venture <venture@google.com>

0bbeaf8430-Oct-2018 Patrick Venture <venture@google.com>

style: s/getZoneId/getZoneID/g

Acronyms are meant to be in the same case within their part of the camel
case name.

Change-Id: I9e55d4419617a35b0f3a85f3d55543c8fc9bd76f
Signed-off-by: Patrick Ventur

style: s/getZoneId/getZoneID/g

Acronyms are meant to be in the same case within their part of the camel
case name.

Change-Id: I9e55d4419617a35b0f3a85f3d55543c8fc9bd76f
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

ee30648e30-Oct-2018 Patrick Venture <venture@google.com>

pid: add missing override specifiers

[pid/controller.hpp:18] -> [pid/pidcontroller.hpp:28]: (style) The
function 'inputProc' overrides a function in a base class but is not
marked with a 'override'

pid: add missing override specifiers

[pid/controller.hpp:18] -> [pid/pidcontroller.hpp:28]: (style) The
function 'inputProc' overrides a function in a base class but is not
marked with a 'override' specifier.
[pid/controller.hpp:20] -> [pid/pidcontroller.hpp:30]: (style) The
function 'outputProc' overrides a function in a base class but is not
marked with a 'override' specifier.
[pid/controller.hpp:22] -> [pid/pidcontroller.hpp:32]: (style) The
function 'process' overrides a function in a base class but is not
marked with a 'override' specifier.
[pid/controller.hpp:24] -> [pid/pidcontroller.hpp:34]: (style) The
function 'getID' overrides a function in a base class but is not marked
with a 'override' specifier.

Change-Id: I29a6bbe644a5f7aad933eb49e7b6f7fdc6e33f19
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

a57477f130-Oct-2018 Patrick Venture <venture@google.com>

pid: stepwisecontroller: add missing override

[pid/controller.hpp:24] -> [pid/stepwisecontroller.hpp:35]: (style) The
function 'getID' overrides a function in a base class but is not marked
with a '

pid: stepwisecontroller: add missing override

[pid/controller.hpp:24] -> [pid/stepwisecontroller.hpp:35]: (style) The
function 'getID' overrides a function in a base class but is not marked
with a 'override' specifier.

Change-Id: I27f0853e24f6b25aa50f701ce5fad1ea989b618c
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

7af157b130-Oct-2018 Patrick Venture <venture@google.com>

style: function names should be lower camel

Fix function names to be lower camel.

Change-Id: I145e1f4c03d7740bc1525dcffbdce2f78fd61075
Signed-off-by: Patrick Venture <venture@google.com>

563a356f30-Oct-2018 Patrick Venture <venture@google.com>

style: member functions should be lower camel

Rename member functions to be lower camel instead of snake case.

Change-Id: Ib227fd3dadb6d9607290277205223a4324cd4ce5
Signed-off-by: Patrick Venture <v

style: member functions should be lower camel

Rename member functions to be lower camel instead of snake case.

Change-Id: Ib227fd3dadb6d9607290277205223a4324cd4ce5
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

f325231530-Oct-2018 Patrick Venture <venture@google.com>

style: fixup naming of structures

Fixup naming of structures to UpperCamel.

Change-Id: I6a9bf0b954298089c85d3362e86cd95b3fc5b944
Signed-off-by: Patrick Venture <venture@google.com>

f77d5a5723-Oct-2018 Patrick Venture <venture@google.com>

cleanup: move from copy and pointer to just const reference

Originally code passed the object by value, and then later by pointer to
that copy. Convert the code to be more performant by using a con

cleanup: move from copy and pointer to just const reference

Originally code passed the object by value, and then later by pointer to
that copy. Convert the code to be more performant by using a const
reference at all layers of access for this object.

Change-Id: Icdf0dfdb54d8adc29af4d05d841533626a484921
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

adc9e86323-Oct-2018 Patrick Venture <venture@google.com>

cleanup: rename variable per openbmc style

Rename PIDConfig to pidConfig per OpenBMC style guide.

Change-Id: I41c431b7162af6c49f4a43adb548f0b6ed04e3dc
Signed-off-by: Patrick Venture <venture@google

cleanup: rename variable per openbmc style

Rename PIDConfig to pidConfig per OpenBMC style guide.

Change-Id: I41c431b7162af6c49f4a43adb548f0b6ed04e3dc
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

4a2dc4d823-Oct-2018 Patrick Venture <venture@google.com>

cleanup: apply constness to read-only iterators

Apply const to read-only iterators to indicate intent more clearly.

Change-Id: Ic14304c69361da203d3d3a900180bd54346acc87
Signed-off-by: Patrick Ventu

cleanup: apply constness to read-only iterators

Apply const to read-only iterators to indicate intent more clearly.

Change-Id: Ic14304c69361da203d3d3a900180bd54346acc87
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

36b7d8eb05-Oct-2018 James Feist <james.feist@linux.intel.com>

[dbus-passive] Add threshold fan failure

When a threshold is crossed for a monitored sensor,
assert fan failure.

Tested-by: Changed a sensor threshold so that its current
reading made the threshold

[dbus-passive] Add threshold fan failure

When a threshold is crossed for a monitored sensor,
assert fan failure.

Tested-by: Changed a sensor threshold so that its current
reading made the threshold asserted and noticed via print
messages that the sensor went into failure state. Also
noticed fans ramp. Wrote unit test to verify sensor can
move in and out of error state correctly.

Change-Id: I83182536e4874eaba97f3f1d48d53ac110fba833
Signed-off-by: James Feist <james.feist@linux.intel.com>

show more ...

df766f2513-Oct-2018 Patrick Venture <venture@google.com>

cleanup: reduce scope of variables

Various things caught by cppcheck that are non-critical.

Change-Id: I495453c84bc15788b85036a163ee36b0ac601fa1
Signed-off-by: Patrick Venture <venture@google.com>

3dfaafda20-Sep-2018 James Feist <james.feist@linux.intel.com>

Add hysteresis to stepwise controller

Tested-by: Ran on platform monitoring output and wrote
unit test

Change-Id: I74a1d21544c1a9cb4c1cb26dd4a353cbff0442d0
Signed-off-by: James Feist <james.feist@l

Add hysteresis to stepwise controller

Tested-by: Ran on platform monitoring output and wrote
unit test

Change-Id: I74a1d21544c1a9cb4c1cb26dd4a353cbff0442d0
Signed-off-by: James Feist <james.feist@linux.intel.com>

show more ...

22c257ab31-Aug-2018 James Feist <james.feist@linux.intel.com>

Add stepwise controller

This adds the ability to use stepwise curves alongside
pid control. This creates a base controller class that
pidcontroller and stepwise controller inherit from.

Note: Hyste

Add stepwise controller

This adds the ability to use stepwise curves alongside
pid control. This creates a base controller class that
pidcontroller and stepwise controller inherit from.

Note: Hysteresis to come in follow-on patch

Tested-by:
Created a stepwise controller and noticed that when it
crossed a threshold that it contributed to the pwm setting.

Change-Id: I6cf842f80eaccafc905d620970afe91e2092d568
Signed-off-by: James Feist <james.feist@linux.intel.com>

show more ...

da4a5dd131-Aug-2018 Patrick Venture <venture@google.com>

add .clang-format

Change-Id: I6627b5569c2e0f730be7331403218b823a2c622f
Signed-off-by: Patrick Venture <venture@google.com>


/openbmc/phosphor-pid-control/.clang-format
/openbmc/phosphor-pid-control/Makefile.am
/openbmc/phosphor-pid-control/conf.hpp
/openbmc/phosphor-pid-control/configure.ac
/openbmc/phosphor-pid-control/dbus/dbusactiveread.cpp
/openbmc/phosphor-pid-control/dbus/dbusactiveread.hpp
/openbmc/phosphor-pid-control/dbus/dbusconfiguration.cpp
/openbmc/phosphor-pid-control/dbus/dbusconfiguration.hpp
/openbmc/phosphor-pid-control/dbus/dbuspassive.cpp
/openbmc/phosphor-pid-control/dbus/dbuspassive.hpp
/openbmc/phosphor-pid-control/dbus/dbuswrite.cpp
/openbmc/phosphor-pid-control/dbus/dbuswrite.hpp
/openbmc/phosphor-pid-control/dbus/util.cpp
/openbmc/phosphor-pid-control/dbus/util.hpp
/openbmc/phosphor-pid-control/experiments/drive.cpp
/openbmc/phosphor-pid-control/interfaces.hpp
/openbmc/phosphor-pid-control/ipmi/manualcmds.cpp
/openbmc/phosphor-pid-control/ipmi/manualcmds.hpp
/openbmc/phosphor-pid-control/main.cpp
/openbmc/phosphor-pid-control/notimpl/readonly.cpp
/openbmc/phosphor-pid-control/notimpl/readonly.hpp
/openbmc/phosphor-pid-control/notimpl/writeonly.cpp
/openbmc/phosphor-pid-control/notimpl/writeonly.hpp
builder.cpp
builder.hpp
builderconfig.cpp
builderconfig.hpp
controller.cpp
controller.hpp
ec/pid.cpp
ec/pid.hpp
fancontroller.cpp
fancontroller.hpp
pidthread.cpp
thermalcontroller.cpp
thermalcontroller.hpp
util.cpp
util.hpp
zone.cpp
zone.hpp
/openbmc/phosphor-pid-control/sensors/builder.cpp
/openbmc/phosphor-pid-control/sensors/builder.hpp
/openbmc/phosphor-pid-control/sensors/builderconfig.cpp
/openbmc/phosphor-pid-control/sensors/builderconfig.hpp
/openbmc/phosphor-pid-control/sensors/host.cpp
/openbmc/phosphor-pid-control/sensors/host.hpp
/openbmc/phosphor-pid-control/sensors/manager.cpp
/openbmc/phosphor-pid-control/sensors/manager.hpp
/openbmc/phosphor-pid-control/sensors/pluggable.cpp
/openbmc/phosphor-pid-control/sensors/pluggable.hpp
/openbmc/phosphor-pid-control/sensors/sensor.hpp
/openbmc/phosphor-pid-control/setsensor.cpp
/openbmc/phosphor-pid-control/sysfs/sysfsread.cpp
/openbmc/phosphor-pid-control/sysfs/sysfsread.hpp
/openbmc/phosphor-pid-control/sysfs/sysfswrite.cpp
/openbmc/phosphor-pid-control/sysfs/sysfswrite.hpp
/openbmc/phosphor-pid-control/sysfs/util.cpp
/openbmc/phosphor-pid-control/test/Makefile.am
/openbmc/phosphor-pid-control/test/controller_mock.hpp
/openbmc/phosphor-pid-control/test/dbus_active_unittest.cpp
/openbmc/phosphor-pid-control/test/dbus_passive_unittest.cpp
/openbmc/phosphor-pid-control/test/dbushelper_mock.hpp
/openbmc/phosphor-pid-control/test/helpers.hpp
/openbmc/phosphor-pid-control/test/pid_fancontroller_unittest.cpp
/openbmc/phosphor-pid-control/test/pid_thermalcontroller_unittest.cpp
/openbmc/phosphor-pid-control/test/pid_zone_unittest.cpp
/openbmc/phosphor-pid-control/test/readinterface_mock.hpp
/openbmc/phosphor-pid-control/test/sensor_host_unittest.cpp
/openbmc/phosphor-pid-control/test/sensor_manager_unittest.cpp
/openbmc/phosphor-pid-control/test/sensor_mock.hpp
/openbmc/phosphor-pid-control/test/sensor_pluggable_unittest.cpp
/openbmc/phosphor-pid-control/test/util_unittest.cpp
/openbmc/phosphor-pid-control/test/writeinterface_mock.hpp
/openbmc/phosphor-pid-control/test/zone_mock.hpp
/openbmc/phosphor-pid-control/threads/busthread.cpp
/openbmc/phosphor-pid-control/tools/fan_rpm_loop_test.sh
/openbmc/phosphor-pid-control/tools/fan_rpm_loop_unittest.sh
/openbmc/phosphor-pid-control/util.cpp
/openbmc/phosphor-pid-control/util.hpp
566a151812-Jun-2018 Patrick Venture <venture@google.com>

test: pid: fancontroller

Adds unit-tests for the fancontroller.
Bugfix: set point not initialized to 0, although bug has no impact.
Tested: Ran on quanta-q71l board and it behaved as expected.

Chan

test: pid: fancontroller

Adds unit-tests for the fancontroller.
Bugfix: set point not initialized to 0, although bug has no impact.
Tested: Ran on quanta-q71l board and it behaved as expected.

Change-Id: I516833d8c9ed806b765ff9333801f3d57932a17b
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

3349ef2012-Jun-2018 Patrick Venture <venture@google.com>

test: pid: thermalcontroller

Tests for the pid/thermalcontroller module.
Fixes a bug where one could pass an incorrect number of inputs
to the thermalcontroller. This can still be side-stepped by c

test: pid: thermalcontroller

Tests for the pid/thermalcontroller module.
Fixes a bug where one could pass an incorrect number of inputs
to the thermalcontroller. This can still be side-stepped by calling the
constructor directly.

Tested: Ran on quanta-q71l board and it behaved as expected.

Change-Id: I3153ae4d907d9f90787b03e9d013d4349d911948
Signed-off-by: Patrick Venture <venture@google.com>

show more ...

12345