194309ef | 26-Oct-2022 |
Matt Spinler <spinler@us.ibm.com> |
control:cnfgs:p10bmc: Add svc names to some groups
The group configuration files provide the ability to add the D-Bus service owner of the group, if it's known and if there is only one service provi
control:cnfgs:p10bmc: Add svc names to some groups
The group configuration files provide the ability to add the D-Bus service owner of the group, if it's known and if there is only one service providing everything in the group. If that is provided, then fan control can register for a NameOwnerChanged signal if that service starts after fan control.
For that reason, add service names to some of the groups that were missing one. It is most important for the virtual ambient group, where it was seen that it could start after fan control so fan control was setting the fan targets to a higher value than necessary.
Note that the service name isn't needed for any of the inventory related groups because they aren't used in the 'services missing' event.
There is a TODO in the code to figure out how to handle this case when the service name can't be hardcoded, maybe by adding a timer to do some retries. That may be done in the future.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I1b42e67b6824e7c31a5eef3ecaddfd8ec2487224
show more ...
|
1fe3941e | 06-Oct-2022 |
Matt Spinler <spinler@us.ibm.com> |
control:ibm,bonnell: Add minimal config files
The Bonnell platform has two dual rotor fans. Add the minimum config files so that fan control will set a power on target of 14100 RPM and do nothing e
control:ibm,bonnell: Add minimal config files
The Bonnell platform has two dual rotor fans. Add the minimum config files so that fan control will set a power on target of 14100 RPM and do nothing else.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ic4b02d2ec8e9a91559873835ae8aedd968e9fb18
show more ...
|
0ee0504f | 20-Sep-2022 |
Chau Ly <chaul@amperecomputing.com> |
control: Modify target_from_group_max increasing case
In the action target_from_group_max, when the sensor's value is increasing, it updates the previous sensor value (_prevGroupValue = groupValue)
control: Modify target_from_group_max increasing case
In the action target_from_group_max, when the sensor's value is increasing, it updates the previous sensor value (_prevGroupValue = groupValue) without checking the hysteresis. This causes the previous sensor value to "tightly" follow the current sensor value. As a result, in case of a large negative hysteresis (_negHysteresis >= 2), the sensor will never be able to pass the hysteresis check which needs a large gap between the previous and the current value.
This patch changes to update _prevGroupValue = groupValue only when it passes the hysteresis check in the increasing case. This also comments out the logging of group processing failure to avoid massive logging (~ every 1s).
Signed-off-by: Chau Ly <chaul@amperecomputing.com> Change-Id: Ic805ecac60359b6df695864823bc36c027d14805
show more ...
|
44872b07 | 19-Sep-2022 |
Chau Ly <chaul@amperecomputing.com> |
control: Support target_path option in configuration file
The target path containing the interface xyz.openbmc_project.control.FanPwm or xyz.openbmc_project.control.FanSpeed can be different between
control: Support target_path option in configuration file
The target path containing the interface xyz.openbmc_project.control.FanPwm or xyz.openbmc_project.control.FanSpeed can be different between phosphor-hwmon and dbus-sensor.
In phosphor-hwmon, it is "/xyz/openbmc_project/sensors/fan_tach/". In dbus-sensor, it is "/xyz/openbmc_project/control/fanpwm/"
This commit supports making this path configurable via "target_path". By default, it is "/xyz/openbmc_project/sensors/fan_tach/".
Signed-off-by: Chau Ly <chaul@amperecomputing.com> Change-Id: Id799986ff69455b7c7054070ed2ab3b2e2500a6c
show more ...
|
27f5f4e9 | 01-Sep-2022 |
Matt Spinler <spinler@us.ibm.com> |
control: Remove the sdevent defer redirect on USR1
The signal handler provided by sdeventplus already calls the provided callback function from the event loop, there is no need to use a 'defer' even
control: Remove the sdevent defer redirect on USR1
The signal handler provided by sdeventplus already calls the provided callback function from the event loop, there is no need to use a 'defer' event source that also just calls a function from the event loop.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ie51c6abc9260a8fc43b13844356c62080835ea38
show more ...
|
df76952b | 26-Aug-2022 |
Matt Spinler <spinler@us.ibm.com> |
fanctl: Add timeout to dump
Fix an old TODO and only wait for a fan control dump to complete for 30s. This is over the 25s default D-Bus timeout in case fan control is hung up on some D-Bus call.
fanctl: Add timeout to dump
Fix an old TODO and only wait for a fan control dump to complete for 30s. This is over the 25s default D-Bus timeout in case fan control is hung up on some D-Bus call.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I30c90ce0ada99d2abe304c66db9ee8de433bc7b6
show more ...
|
a787af09 | 20-Jun-2022 |
Mike Capps <mikepcapps@gmail.com> |
meson support: remove autoconf
This commit removes the deprecated autoconf makefiles, artifacts, and service files which have autoconf-style naming (*.in).
Signed-off-by: Mike Capps <mikepcapps@gma
meson support: remove autoconf
This commit removes the deprecated autoconf makefiles, artifacts, and service files which have autoconf-style naming (*.in).
Signed-off-by: Mike Capps <mikepcapps@gmail.com> Change-Id: I9c0e6162798c235f899aeb5cd9ecea1a0eee29a5
show more ...
|
bb29bb7c | 11-Aug-2022 |
chaul.ampere <chaul@amperecomputing.com> |
control: Json action to set zone's target from group
This commit adds an action to fan control json format, supporting setting target of Zone to a value corresponding to the maximum value from group
control: Json action to set zone's target from group
This commit adds an action to fan control json format, supporting setting target of Zone to a value corresponding to the maximum value from group member properties. The mapping is according to the map. If there are more than one group using this action, the maximum speed derived from the mapping of all groups will be set to target.
For example: { "name": "target_from_group_max", "groups": [ { "name": "zone0_ambient", "interface": "xyz.openbmc_project.Sensor.Value", "property": { "name": "Value" } } ], "neg_hysteresis": 1, "pos_hysteresis": 0, "map": [ { "value": 10.0, "target": 38.0 }, ... ] }
The above JSON will cause the action to read the property specified in the group "zone0_ambient" from all members of the group. The change in the group's members value will be checked against "neg_hysteresis" and "pos_hysteresis" to decide if it is worth taking action. "neg_hysteresis" is for the increasing case and "pos_hysteresis" is for the decreasing case. The maximum property value of the group will be mapped to the "map" to get the output "target". The updated "target" value of each group will be stored in a static map with a key. The maximum value from the static map will be used to set to the Zone's target.
Signed-off-by: Chau Ly <chaul@amperecomputing.com> Change-Id: I7b99a6e82ab2faaf40d290ab6f9cb27781e12952
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 ...
|
bf8e56f6 | 29-Jun-2022 |
Mike Capps <mikepcapps@gmail.com> |
meson support: configuration option removal
D-Bus names and paths that were previously configurable at build-time are now hard-coded and moved to dbus_paths.hpp to reduce the number of configure-tim
meson support: configuration option removal
D-Bus names and paths that were previously configurable at build-time are now hard-coded and moved to dbus_paths.hpp to reduce the number of configure-time options and simplify maintenance.
Signed-off-by: Mike Capps <mikepcapps@gmail.com> Change-Id: I16d88daad90e747cc40d87c853874b1a5fedf5fa
show more ...
|
a081956f | 13-Jun-2022 |
Mike Capps <mikepcapps@gmail.com> |
meson support: create meson.build files
This commit contains the meson.build files necessary to build the project and unit tests. The normal procedure is to run the command 'meson build' followed by
meson support: create meson.build files
This commit contains the meson.build files necessary to build the project and unit tests. The normal procedure is to run the command 'meson build' followed by ninja -C build. Additionally, service files are copied to remove autoconf-style naming convention (they cannot be removed before autoconf files are removed).
Signed-off-by: Mike Capps <mikepcapps@gmail.com> Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I6cf8f5c1c923a198ad2fb4638843645479fd0498
show more ...
|
22c748ce | 23-Mar-2022 |
Mike Capps <mikepcapps@gmail.com> |
control:action: fan override actions for locked rotor
For dual-rotor fans, when one rotor fails the other rotor should be locked at the system's full-speed value. Here this rule is simplified so tha
control:action: fan override actions for locked rotor
For dual-rotor fans, when one rotor fails the other rotor should be locked at the system's full-speed value. Here this rule is simplified so that both rotors of the pair are locked at the same speed.
Signed-off-by: Mike Capps <mikepcapps@gmail.com> Change-Id: Idca46bd71885f0a8b8277469b9ba730ffa86366e
show more ...
|
cb356d48 | 22-Jul-2022 |
Patrick Williams <patrick@stwcx.xyz> |
sdbusplus: use shorter type aliases
The sdbusplus headers provide shortened aliases for many types. Switch to using them to provide better code clarity and shorter lines. Possible replacements are
sdbusplus: use shorter type aliases
The sdbusplus headers provide shortened aliases for many types. Switch to using them to provide better code clarity and shorter lines. Possible replacements are for: * bus_t * exception_t * manager_t * match_t * message_t * object_t * slot_t
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I9029cc722e7712633c15436bd3868d8c3209f567
show more ...
|
78a48a55 | 14-Jul-2022 |
Matt Spinler <spinler@us.ibm.com> |
control: Fix InterfacesRemoved match string
The interfaces_removed trigger was using the wrong match for the InterfacesRemoved signal. It was trying look for the object path in question to be the '
control: Fix InterfacesRemoved match string
The interfaces_removed trigger was using the wrong match for the InterfacesRemoved signal. It was trying look for the object path in question to be the 'path' field, but 'path' is just the path of the object manager sending the signal. It should be looking at argument 0 instead. This was previously fixed for InterfacesAdded but somehow missed for this one.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: If818b228472606dd204d507cfe04c7bacdc5fc03
show more ...
|
4ddd6df1 | 09-Jun-2022 |
Andrew Jeffery <andrew@aj.id.au> |
p10bmc: Remove reference to Samsung PM1735s
Switch to the D-Bus object paths using generic drive types.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Ie340fb56194e710995ed715972c60e4d2
p10bmc: Remove reference to Samsung PM1735s
Switch to the D-Bus object paths using generic drive types.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Ie340fb56194e710995ed715972c60e4d2c3a18ff
show more ...
|
077f8c05 | 13-Jun-2022 |
Andrew Jeffery <andrew@aj.id.au> |
p10bmc: Allow generic NVMe drive name (#11)
Not all drives are Samsung PM1735s, and for lab systems we can't learn the drive model in order to state accurately what has been plugged. Instead, defer
p10bmc: Allow generic NVMe drive name (#11)
Not all drives are Samsung PM1735s, and for lab systems we can't learn the drive model in order to state accurately what has been plugged. Instead, defer to what we do know, which is that it's an NVMe drive.
This is a transition change. It needs to be followed by integration of an entity-manager change to switch the drive names, then finally by a change to drop the old drive names from the fan configuration.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I334cf2b518257ed445f4df9bfbed6968d33f1341
show more ...
|
b2e9a4fc | 13-Jun-2022 |
Mike Capps <mikepcapps@gmail.com> |
meson support: remove code warnings 2
This commit contains code changes necessary to support the increased warning level from Meson builds. Most changes are for unused variables. to keep the review
meson support: remove code warnings 2
This commit contains code changes necessary to support the increased warning level from Meson builds. Most changes are for unused variables. to keep the review size manageable, this commit contains only control changes (plus one in sensor-monitor).
Change-Id: Ie20f1d9028add4b605e4cc9fb230940710365706 Signed-off-by: Mike Capps <mikepcapps@gmail.com>
show more ...
|
808d7fe8 | 13-Jun-2022 |
Mike Capps <mikepcapps@gmail.com> |
meson support: remove code warnings 1
This commit contains code changes necessary to support the increased warning level from Meson builds. Most changes are for unused variables.
To keep the review
meson support: remove code warnings 1
This commit contains code changes necessary to support the increased warning level from Meson builds. Most changes are for unused variables.
To keep the review size manageable, this commit contains only monitor and presence changes (and top-level json_config.hpp).
Signed-off-by: Mike Capps <mikepcapps@gmail.com> Change-Id: I7280b512c54e8d5aeba3300764a239f3dcbab14d
show more ...
|
a9a0394b | 30-Jun-2022 |
Matt Spinler <spinler@us.ibm.com> |
control:rainier-4u: Remove power mode floors
The power mode entries in the mapped_floor action were just place holders that used the same values as the default_floor field until better values were n
control:rainier-4u: Remove power mode floors
The power mode entries in the mapped_floor action were just place holders that used the same values as the default_floor field until better values were needed. It turns out the floors won't need to be based on power mode so remove these entries.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I3e25065bf6ccc56c99931ee431ce97abf9e29560
show more ...
|
7d29944b | 17-Jun-2022 |
Matt Spinler <spinler@us.ibm.com> |
control:p10bmc:rainier-1s4u: 4000 -> 3700 floor
Lower the floor from 4000 to 3700 in the lowest ambient table. This is for acoustic reasons.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change
control:p10bmc:rainier-1s4u: 4000 -> 3700 floor
Lower the floor from 4000 to 3700 in the lowest ambient table. This is for acoustic reasons.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I082c7e75a65662f0cf1b328d5da9d0006c2da57e
show more ...
|
2affad9f | 14-Jun-2022 |
Matt Spinler <spinler@us.ibm.com> |
Revert "control:configs:ibm,everest: Change 11300 -> 11000"
This reverts commit cd6c66882613ed248e048a338d775653da881f34.
Turns out the fans need to be allowed to go to 11300 to help with high alti
Revert "control:configs:ibm,everest: Change 11300 -> 11000"
This reverts commit cd6c66882613ed248e048a338d775653da881f34.
Turns out the fans need to be allowed to go to 11300 to help with high altitude systems.
Change-Id: I29ed5dc2b9d31de893acd18051e7b28addc17fee
show more ...
|
cd6c6688 | 03-Jun-2022 |
Matt Spinler <spinler@us.ibm.com> |
control:configs:ibm,everest: Change 11300 -> 11000
Change all occurrences of the 11300 fan ceiling value to 11000.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I0ed283ae0fdf3f1029099
control:configs:ibm,everest: Change 11300 -> 11000
Change all occurrences of the 11300 fan ceiling value to 11000.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I0ed283ae0fdf3f10290990c94b3c6086a2a5e407
show more ...
|
f32c6439 | 31-May-2022 |
Matt Spinler <spinler@us.ibm.com> |
control:ibm,everest: Cutoff temp updates
Updates to the increase and decrease temps for 3 of the memory related sensor groups.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ic9deccf1f
control:ibm,everest: Cutoff temp updates
Updates to the increase and decrease temps for 3 of the memory related sensor groups.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ic9deccf1f7a83c6ea6796b2e2babf813280c58e6
show more ...
|
a75f61e5 | 11-May-2022 |
Matt Spinler <spinler@us.ibm.com> |
control:ibm,everest: Fix events.json line endings
Change them to unix line endings.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I5a2fae2fd83b1becfabd1cc8427e4b91e42c2ee5 |
fce05682 | 11-May-2022 |
Matt Spinler <spinler@us.ibm.com> |
control:ibm,everest: Update events.json
Several updates to the control config in events.json from thermal testing.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I6da31c45b9472fcc63dff
control:ibm,everest: Update events.json
Several updates to the control config in events.json from thermal testing.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I6da31c45b9472fcc63dff5677d807d73266a22ca
show more ...
|