#
4fa67aa1 |
| 03-Feb-2025 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: update latest spec and reformat
Copy the latest format file from the docs repository and apply.
Change-Id: If152304b21dd2daaa2f79255a4f98218615efb05 Signed-off-by: Patrick Williams <p
clang-format: update latest spec and reformat
Copy the latest format file from the docs repository and apply.
Change-Id: If152304b21dd2daaa2f79255a4f98218615efb05 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
dfddd648 |
| 16-Aug-2024 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: re-format for clang-18
clang-format-18 isn't compatible with the clang-format-17 output, so we need to reformat the code with the latest version. The way clang-18 handles lambda forma
clang-format: re-format for clang-18
clang-format-18 isn't compatible with the clang-format-17 output, so we need to reformat the code with the latest version. The way clang-18 handles lambda formatting also changed, so we have made changes to the organization default style format to better handle lambda formatting.
See I5e08687e696dd240402a2780158664b7113def0e for updated style. See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.
Change-Id: Ica590f8613f1fb89ab1ca676ac51c1cc7e38d67f Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
5e15c3ba |
| 20-Oct-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-17 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-17 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I3e9e6350864ac267819a4b8d670bef7d3746976e Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
fbf4703f |
| 17-Jul-2023 |
Patrick Williams <patrick@stwcx.xyz> |
use std::format instead of fmt::format
The std::format is sufficient for the uses in this repository except for in one file (override_fan_target.cpp, since P2286 isn't supported by GCC yet). Switch
use std::format instead of fmt::format
The std::format is sufficient for the uses in this repository except for in one file (override_fan_target.cpp, since P2286 isn't supported by GCC yet). Switch to std::format whenever possible.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ib2576fb530a4d7ce238e1b0bd95b40b476ec2107
show more ...
|
#
61b73296 |
| 10-May-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I152f141a5e8343b92b5ce81d3ca16eec77b5606b Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
2541f99c |
| 16-Aug-2022 |
Matt Spinler <spinler@us.ibm.com> |
control: Display locked targets in debug dump
The override_fan_target action can lock individual fan targets to a value that is different than the zone target that the rest of the fans are set to.
control: Display locked targets in debug dump
The override_fan_target action can lock individual fan targets to a value that is different than the zone target that the rest of the fans are set to.
This change adds those locked target values to the 'zones' section of the debug dump:
"target_locks": { "fan0": [ 11300 ], "fan3": [ 11300 ] }
And when there are no locks:
"target_locks": {}
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I2c4cfa317028db8843d361e79b270d612aacdd87
show more ...
|
#
a917e69a |
| 13-Apr-2022 |
Matt Spinler <spinler@us.ibm.com> |
control: Log target changes in flight recorder
With this there will be a history of how the fans were changing over time. There's a 20 entry limit in the flight recorder so it will always just show
control: Log target changes in flight recorder
With this there will be a history of how the fans were changing over time. There's a 20 entry limit in the flight recorder so it will always just show the 20 latest target changes.
Example: zone-set-target0: Set target 10500 (from 11300)"
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I93b55eea5ef288bc069eb6c29a15770165067848
show more ...
|
#
dc3152d3 |
| 16-Mar-2022 |
Matthew Barth <msbarth@us.ibm.com> |
control:zone: Override floor to current ceiling
When a requested floor is above the currently set ceiling, override the requested floor value with the current ceiling value. This ensures that a floo
control:zone: Override floor to current ceiling
When a requested floor is above the currently set ceiling, override the requested floor value with the current ceiling value. This ensures that a floor is never above a set ceiling. If a floor is intended to be higher than a current ceiling, then fan control must be configured to change the ceiling value prior to the requested floor change being made.
Change-Id: I59daf32140d94a05a32652c4502b4a4ed5cb3fca Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
762e858b |
| 07-Oct-2021 |
Mike Capps <mikepcapps@gmail.com> |
control: action to override a single fan in a zone - Lock fan in Zone
The override Action can only reference fans by name. Thus, Zone is modified to apply a target lock to a specific fan given by na
control: action to override a single fan in a zone - Lock fan in Zone
The override Action can only reference fans by name. Thus, Zone is modified to apply a target lock to a specific fan given by name. Additionally, the unlock method must pass the target value to allow support for concurrent locks.
Signed-off-by: Mike Capps <mikepcapps@gmail.com> Change-Id: Ic2ea81f318fb2c866198a4b24e38cc679147afc5
show more ...
|
#
98671610 |
| 09-Dec-2021 |
Matt Spinler <spinler@us.ibm.com> |
control: Log target holds in flight recorder
Log when the holds are added and removed, and when it forces fan changes.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Id370f977e1b587bf2
control: Log target holds in flight recorder
Log when the holds are added and removed, and when it forces fan changes.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Id370f977e1b587bf23fc22b946ad8d9004dd1474
show more ...
|
#
077448a9 |
| 02-Dec-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Add zone ceiling to debug dump
Change-Id: I5e6e4b3de97a32aae0a21b7a201ec67f7b99239e Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
|
#
40554d8c |
| 26-Oct-2021 |
Matt Spinler <spinler@us.ibm.com> |
control: Add setFloorHold to Zone
Similar to the existing Zone::setTargetHold function, setFloorHold allows an action to set a floor and hold it, meaning the fans are not allowed to decrease to a va
control: Add setFloorHold to Zone
Similar to the existing Zone::setTargetHold function, setFloorHold allows an action to set a floor and hold it, meaning the fans are not allowed to decrease to a value below that floor until the hold is released. Adding this allows multiple actions to set the floor, without worrying if one is overwriting another.
It also adds some flight recorder entries with the ID zone-floorX when floor holds are added and removed. An example of that output is:
zone-floor0: count_state_floor-1 is setting floor hold to 7777 zone-floor0: Setting new floor to 7777 zone-floor0: mapped_floor-0 is setting floor hold to 10700 zone-floor0: Setting new floor to 10700 zone-floor0: count_state_floor-1 is removing floor hold
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I1756494e61ada60d44e58704431fb882ef7646a4
show more ...
|
#
9db6dd1d |
| 29-Oct-2021 |
Matt Spinler <spinler@us.ibm.com> |
control: Store zone data in the dump
Store the Zone class's attributes in the debug dump.
"zones": { "0": { "active": true, "decrease_allowed": {}, "
control: Store zone data in the dump
Store the Zone class's attributes in the debug dump.
"zones": { "0": { "active": true, "decrease_allowed": {}, "decrease_delta": 0, "decrease_interval": 30, "default_ceiling": 11200, "default_floor": 8000, "floor": 8000, "floor_change": {}, "holds": {}, "increase_delay": 5, "increase_delta": 0, "persisted_props": {}, "power_on_target": 11200, "requested_target_base": 0, "target": 11200 } }
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I9e84f95f892b1cb549b0c988e0f79e8bb5d659c2
show more ...
|
#
5894cd1e |
| 23-Sep-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Remove deprecated `setActiveAllow` method
With the enhanced `setTargetHold` method addition, `setActiveAllow` should no longer be used in favor of utilizing the `setTargetHold` method for h
control: Remove deprecated `setActiveAllow` method
With the enhanced `setTargetHold` method addition, `setActiveAllow` should no longer be used in favor of utilizing the `setTargetHold` method for holding a zone at a given target.
Change-Id: I52c95c018e3a08e73ef294cf625940db1fcef6d8 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
5368011e |
| 23-Sep-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Associate identifier with target holds
Create a zone method that associates a unique identifier to a target hold so that if more than one hold exists, the highest target is always used betw
control: Associate identifier with target holds
Create a zone method that associates a unique identifier to a target hold so that if more than one hold exists, the highest target is always used between all actions that could have set a target hold on the zone.
Change-Id: I7699769a2e271c8a63a0a0a05aef6b0888ce180a Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
65d07507 |
| 30-Aug-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Remove setting target = poweron target at startup
After constructing the zone objects, the fan objects are created with their current target set to what's on dbus. This is then read and set
control: Remove setting target = poweron target at startup
After constructing the zone objects, the fan objects are created with their current target set to what's on dbus. This is then read and set on the zone as the fan(s) are added to their configured zone. Setting the target to the configured poweron target of the zone should not be done by default to ensure the zone is set to whatever the target is of its contained fan(s).
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: I13bb83e6c06c4220e56c5574ee26c607074c261a
show more ...
|
#
12e888fb |
| 20-Aug-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Use `poweron_target` in place of `full_speed`
The use of `full_speed` as a zone configuration attribute is removed in favor of `poweron_target`.
Change-Id: I1edb03f2c738105479d1ddf1236880a
control: Use `poweron_target` in place of `full_speed`
The use of `full_speed` as a zone configuration attribute is removed in favor of `poweron_target`.
Change-Id: I1edb03f2c738105479d1ddf1236880aa28e667f3 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
5a2b5017 |
| 22-Jul-2021 |
Matt Spinler <spinler@us.ibm.com> |
control: Remove target check in Zone::setTarget
In Zone::setTarget that sets fan targets, remove the check that exits out if the new target value equals the previous target (_target) value.
Do this
control: Remove target check in Zone::setTarget
In Zone::setTarget that sets fan targets, remove the check that exits out if the new target value equals the previous target (_target) value.
Do this because:
1) _target gets set to the power on speed in the constructor but doesn't set fan speeds then. When the power turns on is when the code acutally sets the fans to that value, which was then not doing anything because the target was already the _target value.
2) The fan objects also check if the new requested speed matched their previous one, so that check would also catch a duplicate speed change.
Tested: Verify the fan speeds were being written on a power on.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I1db60d9ea3a2e3ba04fc32e024da6c21e722b828
show more ...
|
#
2504c77c |
| 27-May-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Make decrease interval optional
The `decrease_interval` configuration attribute should be optional where it defaults to 0 when not given. A decrease interval of 0 disables the decrease time
control: Make decrease interval optional
The `decrease_interval` configuration attribute should be optional where it defaults to 0 when not given. A decrease interval of 0 disables the decrease timer.
Change-Id: Ie88d94edb286870c7b8965a4ee778c89c08cc00e Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
ab8e4b82 |
| 27-May-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Introduce `poweron_target` configuration attribute
Use a required `poweron_target` attribute to eventually replace `full_speed` instead of using `default_ceiling`. This allows a different t
control: Introduce `poweron_target` configuration attribute
Use a required `poweron_target` attribute to eventually replace `full_speed` instead of using `default_ceiling`. This allows a different target other than the default ceiling to be used at poweron. In addition, the `default_ceiling` and `default_floor` attributes can be made optional. A user that just wants to set fans to a speed and not change them does not need to provide a default ceiling or floor. The default ceiling will now default to the poweron target value, if not given, and the default floor will now default to 0 when not given.
Change-Id: I232935c00c34086ebb286adc4f9b91f5e302e64f Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
bc89a8a0 |
| 25-May-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Manage zones' dbus interfaces with a DBusZone object
Switch to using a DBusZone object to manage the dbus interfaces configured on a zone. This allows the Zone objects' JSON configuration t
control: Manage zones' dbus interfaces with a DBusZone object
Switch to using a DBusZone object to manage the dbus interfaces configured on a zone. This allows the Zone objects' JSON configuration to be reloaded using SIGHUP by separating the Zone object from its associated dbus object.
Change-Id: I89e35282f96bfecffca8066682fb9f3506bfffa0 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
279183fe |
| 25-May-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: DBusZone object for dbus objects
Create a DBusZone object to handle zones configured to provide the ThermalMode dbus interface on dbus. Each zone will have an instance of this object when c
control: DBusZone object for dbus objects
Create a DBusZone object to handle zones configured to provide the ThermalMode dbus interface on dbus. Each zone will have an instance of this object when configured to provide the ThermalMode interface instead of the zone object doing this directly. This was done to handle SIGHUP signals that would reload the zone configuration which may or may not affect what interfaces are put on dbus for each zone object.
Change-Id: I3e78c6d53a9690b9297c71ea3e0852d7d7b01746 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
14303a45 |
| 21-May-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Separate zone creation from enabling
Separate a zone object being created from its JSON configuration and when the zone is enabled and active. This will allow support of the use of SIGHUP t
control: Separate zone creation from enabling
Separate a zone object being created from its JSON configuration and when the zone is enabled and active. This will allow support of the use of SIGHUP to reload the zone configuration since the zones JSON configuration must successfully be loaded before the newly created zones can be enabled in place of the currently enabled zones.
Change-Id: Iea6fd632898d94f3702d2b00e2ddb7f771af9168 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
50219f50 |
| 18-May-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Handle `Current` property changing
It appears there's no longer a need to handle objects owned by fan control that it may also be subscribed to for propertiesChanged signals. This may be du
control: Handle `Current` property changing
It appears there's no longer a need to handle objects owned by fan control that it may also be subscribed to for propertiesChanged signals. This may be due to updates in sdbusplus's async capabilities, but in case these signals begin to get dropped to the fan control service, an issue was created to re-test the handling of the `Current` thermal mode property changing (https://github.com/ibm-openbmc/dev/issues/3195)
This commit adds a `TODO` note along with some minor changes to updating the value of the `Current` property.
Change-Id: Id26d80566318327982ac8c72406803e55059d9b8 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
5606ec86 |
| 17-May-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Support switch to 'default_ceiling'
To remove the term `speed`, the 'full_speed' zone configuration attribute will be replaced with the use of 'default_ceiling'. Currently need to support b
control: Support switch to 'default_ceiling'
To remove the term `speed`, the 'full_speed' zone configuration attribute will be replaced with the use of 'default_ceiling'. Currently need to support both until the upstream configs are updated to 'default_ceiling' and merged.
Change-Id: I2aaee1183e25b4b57969762bb978a1b127a732c0 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|