#
9b06243d |
| 26-Jan-2023 |
Matt Spinler <spinler@us.ibm.com> |
Add explicit keyword to 1 arg constructors
The cppcheck tool complains about it otherwise.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Id977a6c349b0b49354b52ac994ea7742e0a39307
|
#
c2c2db7d |
| 07-Apr-2022 |
Matt Spinler <spinler@us.ibm.com> |
control: Don't cache non-group properties
The code was previously adding every single D-Bus path/interface/property of a service when Manager::addObjects() was being used to cache D-Bus property val
control: Don't cache non-group properties
The code was previously adding every single D-Bus path/interface/property of a service when Manager::addObjects() was being used to cache D-Bus property values. This was resulting in a lot of extra items in the cache that fan control would never use.
To fix this, create a single static set of all of the D-Bus paths from all of the Group objects, which would be the master list of all the D-Bus paths fan control would ever care about. Then, only add a path/interface/property to the cache if that path is in that set.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I787c9c36b88d003fe9fe7ac1d517fbb5aa510e4e
show more ...
|
#
9403a217 |
| 17-May-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Switch to using static instance of bus
Update main to use the static reference of the bus from util::SDBusPlus.getBus() and have each object that needs the bus call that same util::SDBusPlu
control: Switch to using static instance of bus
Update main to use the static reference of the bus from util::SDBusPlus.getBus() and have each object that needs the bus call that same util::SDBusPlus.getBus() function to retrieve the same static reference.
Change-Id: Icd5a0e61819bf1bec8b46daae05443fdcc542b05 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
e6d1f781 |
| 14-May-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Extract bus object from config argument pack
All configured objects require a reference to the sdbusplus bus object except Group objects, so instead of pass the reference twice to the get t
control: Extract bus object from config argument pack
All configured objects require a reference to the sdbusplus bus object except Group objects, so instead of pass the reference twice to the get the configured objects, extract the bus from the argument pack.
Change-Id: I4859f513863bd62999a9db7610d5955fc8116cb3 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
543e89e9 |
| 06-Apr-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Group configuration inputs should be const
Change-Id: I8cb9347b2a1cb968d8175970db5a97eb6395b500 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
|
#
e5578602 |
| 30-Mar-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Use Group objects in events
Use the generated Group objects in configured events. Group objects are temporarily generated from the `groups.json` configuration and passed to each event. When
control: Use Group objects in events
Use the generated Group objects in configured events. Group objects are temporarily generated from the `groups.json` configuration and passed to each event. When the event is generated from its JSON configuration, the group(s) its configured to use in the event are first copied from the list of Group objects and then populated with the remaining details for the group configuration that's provided in the event. Groups to be used in the event must either have no profiles restricting their use or have a profile that matches the event's profile where that profile is also active.
Change-Id: Ifda7493ab256fa2fbf869e984609888c418b1f9b Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
e47c9588 |
| 09-Mar-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Remove references to "speed" in JSON objects
Fan control can be configured to control any type of fan where "speed" implies a fan control by setting RPMs. However, fans that are PWM driven,
control: Remove references to "speed" in JSON objects
Fan control can be configured to control any type of fan where "speed" implies a fan control by setting RPMs. However, fans that are PWM driven, can also be configured to be controlled so the preference would be to not specific refer to setting "speeds".
Change-Id: Ia8920832ea29b519bf408c850febb3fed04ad3f9 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
12cb125a |
| 08-Mar-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Use group objects in actions
Switch to use the group objects created from JSON in the actions which allows the zone and fan YAML objects to be removed from the JSON based binary. In switchi
control: Use group objects in actions
Switch to use the group objects created from JSON in the actions which allows the zone and fan YAML objects to be removed from the JSON based binary. In switching to the JSON based group objects, the `default_floor` action required additional methods to be added to the appropriate objects. These additional methods were copied over from the associated YAML based object classes.
To reduce the amount of changes in this commit, the `requestIncrease` method was not copied over and will be in a following commit. An additional commit will also remove the use of YAML based objects from the JSON based zone object.
Change-Id: I5fea29f099d0176b2ffe486e79f0c585e744d807 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
391ade08 |
| 15-Jan-2021 |
Matthew Barth <msbarth@us.ibm.com> |
control: Add creating config object without a dbus object
For those configuration objects that do not need a dbus object, create them using a similar method without requiring a dbus object to be giv
control: Add creating config object without a dbus object
For those configuration objects that do not need a dbus object, create them using a similar method without requiring a dbus object to be given. Updated each object to correctly reflect their current need of a dbus object which was driven by moving the creation of the available group objects to within the event.
Change-Id: I8ce4ea7baf4cfd1ad86268b760a334fcf0a4f25e Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|
#
dfd4a058 |
| 02-Sep-2020 |
Matthew Barth <msbarth@us.ibm.com> |
control: Group configuration parsing
Groups are a list of dbus object paths that are to be used within one-or-more configured fan control events. For fan control, groups are generally comprised of o
control: Group configuration parsing
Groups are a list of dbus object paths that are to be used within one-or-more configured fan control events. For fan control, groups are generally comprised of one-or-more temperature sensors or inventory objects that exist on the same base object path and implement the same interface and property to be used in a configured fan control event. The interface and property to be used on the members of the group are given within each event.
ex.) > Group made up of 4 fan inventory objects:
"name": "air_cooled_zone0_fans", "description": "Group of fan inventory objects for air cooled zone 0", "type": "/xyz/openbmc_project/inventory", "members": [ "/system/chassis/motherboard/fan0", "/system/chassis/motherboard/fan1", "/system/chassis/motherboard/fan2", "/system/chassis/motherboard/fan3" ]
> Event using this group that sets fans to 10500 RPMS when 1 of the > fans in the group is changes to not present:
"name": "missing_fans_before_high_speed_air", "groups": [ { "name": "air_cooled_zone0_fans", "interface": "xyz.openbmc_project.Inventory.Item", "property": { "name": "Present", "type": "bool" } }], "triggers": [ { "name": "signal", "signal": "propertiesChanged", "handler": "setProperty" }], "actions": [ { "name": "count_state_before_speed", "count": 1, "property": { "value": false, "type": "bool" }, "speed": { "value": 10500, "type": "uint64_t" } }]
Tested: Group objects created for each entry in "groups.json" A "groups.json" configuration is required Members are parsed and stored within the group object Service name is optional and stored in the group object when given
Change-Id: I258c14f4d4d5f6aeb1add3ba880cf403779564d8 Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
show more ...
|