History log of /openbmc/phosphor-fan-presence/control/templates/ (Results 1 – 18 of 18)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
44872b0719-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 ...


/openbmc/phosphor-fan-presence/.clang-format
/openbmc/phosphor-fan-presence/.gitignore
/openbmc/phosphor-fan-presence/OWNERS
/openbmc/phosphor-fan-presence/README.md
/openbmc/phosphor-fan-presence/argument.hpp
/openbmc/phosphor-fan-presence/control/actions.cpp
/openbmc/phosphor-fan-presence/control/actions.hpp
/openbmc/phosphor-fan-presence/control/argument.cpp
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,everest/events.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,everest/fans.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,everest/groups.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,everest/pcie_cards.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,everest/zones.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-1s4u/events.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-1s4u/fans.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-1s4u/groups.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-1s4u/pcie_cards.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-1s4u/zones.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-2u/events.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-2u/groups.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-2u/pcie_cards.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-2u/zones.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-4u/events.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-4u/groups.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-4u/pcie_cards.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier-4u/zones.json
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,rainier/fans.json
/openbmc/phosphor-fan-presence/control/example/events.yaml
/openbmc/phosphor-fan-presence/control/example/fans.yaml
/openbmc/phosphor-fan-presence/control/fan.cpp
/openbmc/phosphor-fan-presence/control/fan.hpp
/openbmc/phosphor-fan-presence/control/fanctl.cpp
/openbmc/phosphor-fan-presence/control/functor.hpp
/openbmc/phosphor-fan-presence/control/gen-fan-zone-defs.py
/openbmc/phosphor-fan-presence/control/handlers.hpp
/openbmc/phosphor-fan-presence/control/json/actions/action.hpp
/openbmc/phosphor-fan-presence/control/json/actions/count_state_floor.cpp
/openbmc/phosphor-fan-presence/control/json/actions/count_state_floor.hpp
/openbmc/phosphor-fan-presence/control/json/actions/count_state_target.cpp
/openbmc/phosphor-fan-presence/control/json/actions/count_state_target.hpp
/openbmc/phosphor-fan-presence/control/json/actions/default_floor.cpp
/openbmc/phosphor-fan-presence/control/json/actions/default_floor.hpp
/openbmc/phosphor-fan-presence/control/json/actions/get_managed_objects.cpp
/openbmc/phosphor-fan-presence/control/json/actions/get_managed_objects.hpp
/openbmc/phosphor-fan-presence/control/json/actions/mapped_floor.cpp
/openbmc/phosphor-fan-presence/control/json/actions/mapped_floor.hpp
/openbmc/phosphor-fan-presence/control/json/actions/missing_owner_target.cpp
/openbmc/phosphor-fan-presence/control/json/actions/missing_owner_target.hpp
/openbmc/phosphor-fan-presence/control/json/actions/net_target_decrease.cpp
/openbmc/phosphor-fan-presence/control/json/actions/net_target_decrease.hpp
/openbmc/phosphor-fan-presence/control/json/actions/net_target_increase.cpp
/openbmc/phosphor-fan-presence/control/json/actions/net_target_increase.hpp
/openbmc/phosphor-fan-presence/control/json/actions/override_fan_target.cpp
/openbmc/phosphor-fan-presence/control/json/actions/override_fan_target.hpp
/openbmc/phosphor-fan-presence/control/json/actions/pcie_card_floors.cpp
/openbmc/phosphor-fan-presence/control/json/actions/pcie_card_floors.hpp
/openbmc/phosphor-fan-presence/control/json/actions/request_target_base.cpp
/openbmc/phosphor-fan-presence/control/json/actions/request_target_base.hpp
/openbmc/phosphor-fan-presence/control/json/actions/set_parameter_from_group_max.cpp
/openbmc/phosphor-fan-presence/control/json/actions/set_parameter_from_group_max.hpp
/openbmc/phosphor-fan-presence/control/json/actions/target_from_group_max.cpp
/openbmc/phosphor-fan-presence/control/json/actions/target_from_group_max.hpp
/openbmc/phosphor-fan-presence/control/json/actions/timer_based_actions.cpp
/openbmc/phosphor-fan-presence/control/json/actions/timer_based_actions.hpp
/openbmc/phosphor-fan-presence/control/json/config_base.hpp
/openbmc/phosphor-fan-presence/control/json/dbus_zone.cpp
/openbmc/phosphor-fan-presence/control/json/dbus_zone.hpp
/openbmc/phosphor-fan-presence/control/json/event.cpp
/openbmc/phosphor-fan-presence/control/json/event.hpp
/openbmc/phosphor-fan-presence/control/json/fan.cpp
/openbmc/phosphor-fan-presence/control/json/fan.hpp
/openbmc/phosphor-fan-presence/control/json/group.cpp
/openbmc/phosphor-fan-presence/control/json/group.hpp
/openbmc/phosphor-fan-presence/control/json/manager.cpp
/openbmc/phosphor-fan-presence/control/json/manager.hpp
/openbmc/phosphor-fan-presence/control/json/profile.cpp
/openbmc/phosphor-fan-presence/control/json/profile.hpp
/openbmc/phosphor-fan-presence/control/json/triggers/handlers.hpp
/openbmc/phosphor-fan-presence/control/json/triggers/init.cpp
/openbmc/phosphor-fan-presence/control/json/triggers/init.hpp
/openbmc/phosphor-fan-presence/control/json/triggers/parameter.cpp
/openbmc/phosphor-fan-presence/control/json/triggers/parameter.hpp
/openbmc/phosphor-fan-presence/control/json/triggers/signal.cpp
/openbmc/phosphor-fan-presence/control/json/triggers/signal.hpp
/openbmc/phosphor-fan-presence/control/json/triggers/timer.cpp
/openbmc/phosphor-fan-presence/control/json/triggers/timer.hpp
/openbmc/phosphor-fan-presence/control/json/triggers/trigger.hpp
/openbmc/phosphor-fan-presence/control/json/triggers/trigger_aliases.hpp
/openbmc/phosphor-fan-presence/control/json/utils/flight_recorder.cpp
/openbmc/phosphor-fan-presence/control/json/utils/flight_recorder.hpp
/openbmc/phosphor-fan-presence/control/json/utils/modifier.cpp
/openbmc/phosphor-fan-presence/control/json/utils/modifier.hpp
/openbmc/phosphor-fan-presence/control/json/utils/pcie_card_metadata.cpp
/openbmc/phosphor-fan-presence/control/json/utils/pcie_card_metadata.hpp
/openbmc/phosphor-fan-presence/control/json/zone.cpp
/openbmc/phosphor-fan-presence/control/json/zone.hpp
/openbmc/phosphor-fan-presence/control/main.cpp
/openbmc/phosphor-fan-presence/control/manager.cpp
/openbmc/phosphor-fan-presence/control/manager.hpp
/openbmc/phosphor-fan-presence/control/matches.hpp
/openbmc/phosphor-fan-presence/control/meson.build
/openbmc/phosphor-fan-presence/control/preconditions.cpp
/openbmc/phosphor-fan-presence/control/preconditions.hpp
/openbmc/phosphor-fan-presence/control/service_files/json/phosphor-fan-control@.service
/openbmc/phosphor-fan-presence/control/service_files/yaml/phosphor-fan-control-init@.service
/openbmc/phosphor-fan-presence/control/service_files/yaml/phosphor-fan-control@.service
fan_zone_defs.mako.cpp
/openbmc/phosphor-fan-presence/control/triggers.cpp
/openbmc/phosphor-fan-presence/control/types.hpp
/openbmc/phosphor-fan-presence/control/utility.cpp
/openbmc/phosphor-fan-presence/control/utility.hpp
/openbmc/phosphor-fan-presence/control/zone.cpp
/openbmc/phosphor-fan-presence/control/zone.hpp
/openbmc/phosphor-fan-presence/cooling-type/argument.cpp
/openbmc/phosphor-fan-presence/cooling-type/cooling_type.cpp
/openbmc/phosphor-fan-presence/cooling-type/cooling_type.hpp
/openbmc/phosphor-fan-presence/cooling-type/main.cpp
/openbmc/phosphor-fan-presence/cooling-type/meson.build
/openbmc/phosphor-fan-presence/dbus_paths.hpp
/openbmc/phosphor-fan-presence/docs/control/README.md
/openbmc/phosphor-fan-presence/docs/control/debug.md
/openbmc/phosphor-fan-presence/docs/control/events.md
/openbmc/phosphor-fan-presence/docs/control/fanctl/README.md
/openbmc/phosphor-fan-presence/docs/control/fans.md
/openbmc/phosphor-fan-presence/docs/control/groups.md
/openbmc/phosphor-fan-presence/docs/control/zones.md
/openbmc/phosphor-fan-presence/docs/monitor/README.md
/openbmc/phosphor-fan-presence/docs/monitor/class.md
/openbmc/phosphor-fan-presence/docs/monitor/deviation.md
/openbmc/phosphor-fan-presence/docs/monitor/fan_missing_error_delay.md
/openbmc/phosphor-fan-presence/docs/monitor/group.md
/openbmc/phosphor-fan-presence/docs/monitor/inventory.md
/openbmc/phosphor-fan-presence/docs/monitor/method.md
/openbmc/phosphor-fan-presence/docs/monitor/monitor_start_delay.md
/openbmc/phosphor-fan-presence/docs/monitor/nonfunc_rotor_error_delay.md
/openbmc/phosphor-fan-presence/docs/monitor/num_nonfunc_rotors_before_error.md
/openbmc/phosphor-fan-presence/docs/monitor/num_sensors_nonfunc_for_fan_nonfunc.md
/openbmc/phosphor-fan-presence/docs/monitor/power_off_config.md
/openbmc/phosphor-fan-presence/docs/monitor/sensors.md
/openbmc/phosphor-fan-presence/docs/monitor/set_func_on_present.md
/openbmc/phosphor-fan-presence/docs/presence/README.md
/openbmc/phosphor-fan-presence/docs/presence/methods.md
/openbmc/phosphor-fan-presence/docs/presence/name.md
/openbmc/phosphor-fan-presence/docs/presence/path.md
/openbmc/phosphor-fan-presence/docs/presence/rpolicy.md
/openbmc/phosphor-fan-presence/docs/sensor-monitor/README.md
/openbmc/phosphor-fan-presence/evdevpp/evdev.hpp
/openbmc/phosphor-fan-presence/evdevpp/test/evmon.cpp
/openbmc/phosphor-fan-presence/hwmon_ffdc.cpp
/openbmc/phosphor-fan-presence/hwmon_ffdc.hpp
/openbmc/phosphor-fan-presence/json_config.hpp
/openbmc/phosphor-fan-presence/logger.hpp
/openbmc/phosphor-fan-presence/meson.build
/openbmc/phosphor-fan-presence/meson_options.txt
/openbmc/phosphor-fan-presence/monitor/argument.cpp
/openbmc/phosphor-fan-presence/monitor/conditions.cpp
/openbmc/phosphor-fan-presence/monitor/conditions.hpp
/openbmc/phosphor-fan-presence/monitor/config_files/p10bmc/ibm,everest/config.json
/openbmc/phosphor-fan-presence/monitor/config_files/p10bmc/ibm,rainier-1s4u/config.json
/openbmc/phosphor-fan-presence/monitor/config_files/p10bmc/ibm,rainier-2u/config.json
/openbmc/phosphor-fan-presence/monitor/config_files/p10bmc/ibm,rainier-4u/config.json
/openbmc/phosphor-fan-presence/monitor/config_files/witherspoon/config.json
/openbmc/phosphor-fan-presence/monitor/example/config.json
/openbmc/phosphor-fan-presence/monitor/example/monitor.yaml
/openbmc/phosphor-fan-presence/monitor/fan.cpp
/openbmc/phosphor-fan-presence/monitor/fan.hpp
/openbmc/phosphor-fan-presence/monitor/fan_defs.hpp
/openbmc/phosphor-fan-presence/monitor/fan_error.cpp
/openbmc/phosphor-fan-presence/monitor/fan_error.hpp
/openbmc/phosphor-fan-presence/monitor/gen-fan-monitor-defs.py
/openbmc/phosphor-fan-presence/monitor/json_parser.cpp
/openbmc/phosphor-fan-presence/monitor/json_parser.hpp
/openbmc/phosphor-fan-presence/monitor/logging.cpp
/openbmc/phosphor-fan-presence/monitor/logging.hpp
/openbmc/phosphor-fan-presence/monitor/main.cpp
/openbmc/phosphor-fan-presence/monitor/meson.build
/openbmc/phosphor-fan-presence/monitor/nonzero_speed_trust.hpp
/openbmc/phosphor-fan-presence/monitor/power_interface.cpp
/openbmc/phosphor-fan-presence/monitor/power_interface.hpp
/openbmc/phosphor-fan-presence/monitor/power_off_action.hpp
/openbmc/phosphor-fan-presence/monitor/power_off_cause.hpp
/openbmc/phosphor-fan-presence/monitor/power_off_rule.hpp
/openbmc/phosphor-fan-presence/monitor/service_files/json/phosphor-fan-monitor@.service
/openbmc/phosphor-fan-presence/monitor/service_files/yaml/phosphor-fan-monitor-init@.service
/openbmc/phosphor-fan-presence/monitor/service_files/yaml/phosphor-fan-monitor@.service
/openbmc/phosphor-fan-presence/monitor/system.cpp
/openbmc/phosphor-fan-presence/monitor/system.hpp
/openbmc/phosphor-fan-presence/monitor/tach_sensor.cpp
/openbmc/phosphor-fan-presence/monitor/tach_sensor.hpp
/openbmc/phosphor-fan-presence/monitor/test/meson.build
/openbmc/phosphor-fan-presence/monitor/test/mock_power_interface.hpp
/openbmc/phosphor-fan-presence/monitor/test/power_off_cause_test.cpp
/openbmc/phosphor-fan-presence/monitor/test/power_off_rule_test.cpp
/openbmc/phosphor-fan-presence/monitor/trust_group.hpp
/openbmc/phosphor-fan-presence/monitor/trust_manager.hpp
/openbmc/phosphor-fan-presence/monitor/types.hpp
/openbmc/phosphor-fan-presence/power_state.hpp
/openbmc/phosphor-fan-presence/presence/anyof.cpp
/openbmc/phosphor-fan-presence/presence/anyof.hpp
/openbmc/phosphor-fan-presence/presence/config_files/p10bmc/ibm,everest/config.json
/openbmc/phosphor-fan-presence/presence/config_files/p10bmc/ibm,rainier-1s4u/config.json
/openbmc/phosphor-fan-presence/presence/config_files/p10bmc/ibm,rainier-2u/config.json
/openbmc/phosphor-fan-presence/presence/config_files/p10bmc/ibm,rainier-4u/config.json
/openbmc/phosphor-fan-presence/presence/config_files/witherspoon/config.json
/openbmc/phosphor-fan-presence/presence/error_reporter.cpp
/openbmc/phosphor-fan-presence/presence/error_reporter.hpp
/openbmc/phosphor-fan-presence/presence/example/config.json
/openbmc/phosphor-fan-presence/presence/example/example.yaml
/openbmc/phosphor-fan-presence/presence/fallback.cpp
/openbmc/phosphor-fan-presence/presence/fallback.hpp
/openbmc/phosphor-fan-presence/presence/fan.cpp
/openbmc/phosphor-fan-presence/presence/fan.hpp
/openbmc/phosphor-fan-presence/presence/get_power_state.cpp
/openbmc/phosphor-fan-presence/presence/get_power_state.hpp
/openbmc/phosphor-fan-presence/presence/gpio.cpp
/openbmc/phosphor-fan-presence/presence/gpio.hpp
/openbmc/phosphor-fan-presence/presence/json_parser.cpp
/openbmc/phosphor-fan-presence/presence/json_parser.hpp
/openbmc/phosphor-fan-presence/presence/logging.cpp
/openbmc/phosphor-fan-presence/presence/logging.hpp
/openbmc/phosphor-fan-presence/presence/meson.build
/openbmc/phosphor-fan-presence/presence/pfpgen.py
/openbmc/phosphor-fan-presence/presence/psensor.hpp
/openbmc/phosphor-fan-presence/presence/rpolicy.hpp
/openbmc/phosphor-fan-presence/presence/service_files/json/phosphor-fan-presence-tach@.service
/openbmc/phosphor-fan-presence/presence/service_files/yaml/phosphor-fan-presence-tach@.service
/openbmc/phosphor-fan-presence/presence/tach.cpp
/openbmc/phosphor-fan-presence/presence/tach.hpp
/openbmc/phosphor-fan-presence/presence/tach_detect.cpp
/openbmc/phosphor-fan-presence/presence/templates/generated.mako.hpp
/openbmc/phosphor-fan-presence/presence/test/fallbacktest.cpp
/openbmc/phosphor-fan-presence/presence/test/meson.build
/openbmc/phosphor-fan-presence/sdbusplus.hpp
/openbmc/phosphor-fan-presence/sdeventplus.hpp
/openbmc/phosphor-fan-presence/sensor-monitor/alarm_timestamps.hpp
/openbmc/phosphor-fan-presence/sensor-monitor/main.cpp
/openbmc/phosphor-fan-presence/sensor-monitor/meson.build
/openbmc/phosphor-fan-presence/sensor-monitor/service_files/sensor-monitor.service
/openbmc/phosphor-fan-presence/sensor-monitor/shutdown_alarm_monitor.cpp
/openbmc/phosphor-fan-presence/sensor-monitor/shutdown_alarm_monitor.hpp
/openbmc/phosphor-fan-presence/sensor-monitor/threshold_alarm_logger.cpp
/openbmc/phosphor-fan-presence/sensor-monitor/threshold_alarm_logger.hpp
/openbmc/phosphor-fan-presence/sensor-monitor/types.hpp
/openbmc/phosphor-fan-presence/subprojects/cli11.wrap
/openbmc/phosphor-fan-presence/subprojects/evdev.wrap
/openbmc/phosphor-fan-presence/subprojects/fmt.wrap
/openbmc/phosphor-fan-presence/subprojects/nlohmann_json.wrap
/openbmc/phosphor-fan-presence/subprojects/phosphor-dbus-interfaces.wrap
/openbmc/phosphor-fan-presence/subprojects/phosphor-logging.wrap
/openbmc/phosphor-fan-presence/subprojects/sdbusplus.wrap
/openbmc/phosphor-fan-presence/subprojects/sdeventplus.wrap
/openbmc/phosphor-fan-presence/test/logger_test.cpp
/openbmc/phosphor-fan-presence/test/meson.build
/openbmc/phosphor-fan-presence/utility.hpp
8a697b6814-Dec-2018 Matthew Barth <msbarth@us.ibm.com>

Correct precondition generation

Currently, preconditions must include the set speed event as a
parameter, so the ability to generate a precondition with no parameters
is removed. Related to this, ac

Correct precondition generation

Currently, preconditions must include the set speed event as a
parameter, so the ability to generate a precondition with no parameters
is removed. Related to this, actions without parameters are supported
and was corrected to allow this.

Change-Id: Icf5898e1845cca80bd6bb0332363a0fec2b84a73
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

06fa781720-Nov-2018 Matthew Barth <msbarth@us.ibm.com>

Generate groups defined on actions

Change-Id: Iac5b31f01cb402d45abef1bf14df1405cafd3dbc
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

75d9735001-Nov-2018 Matthew Barth <msbarth@us.ibm.com>

Create empty action groups

This introduces the framework for set speed events to have the groups
within an event assign directly on the event action. When a group is
defined directly to an action, i

Create empty action groups

This introduces the framework for set speed events to have the groups
within an event assign directly on the event action. When a group is
defined directly to an action, it will be used in place of the group(s)
on the event. This allows a single event, driven by trigger(s), to call
multiple actions on different groups with differing parameters to those
actions.

Change-Id: I5c648d912641b3006a77eab27457e3ddb220c2ad
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

621a577814-Nov-2018 Matthew Barth <msbarth@us.ibm.com>

Add event name to SetSpeedEvent data

Change-Id: Ida95790d78d016952da7d2a2afa0940edbe0aa7b
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

926df66309-Oct-2018 Matthew Barth <msbarth@us.ibm.com>

Separate handlers for signals and method calls

Signals and method calls have different parameter structures. When the
associated event trigger is chosen, what's generated to retrieve the
dbus data i

Separate handlers for signals and method calls

Signals and method calls have different parameter structures. When the
associated event trigger is chosen, what's generated to retrieve the
dbus data is specific to that trigger event. For signals, the data is
read from the given signal message. A method call is method specific and
is called to be done against all of the members within the event group.

Change-Id: I92cbdbf05852fbaa7f1b56ed518e30278cdf840b
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

cd3bfbc107-Mar-2018 Matthew Barth <msbarth@us.ibm.com>

Add event init trigger

An event defined with an init trigger will run the event's actions
upon the event initializing. An event initializes when the fan control
application starts or at anytime an e

Add event init trigger

An event defined with an init trigger will run the event's actions
upon the event initializing. An event initializes when the fan control
application starts or at anytime an event's precondition is valid.

Tested:
Used missing fan action to set a speed at application start
Used missing fan action to set a speed upon valid precondition

Change-Id: I96a36425a2ca345371c27d7b580070bec28acaa1
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

146b739008-Mar-2018 Matthew Barth <msbarth@us.ibm.com>

Convert event group to a vector of tuples

In preparation for storing each event group member's property state used
within the event's actions, the group type should be converted to a
vector of tuple

Convert event group to a vector of tuples

In preparation for storing each event group member's property state used
within the event's actions, the group type should be converted to a
vector of tuples. This vector will allow, if user defines, easier use of
different interfaces and properties on the same path to be used within
the same event group.

Tested:
Generated code for groups reflects vector instead of map
Actions against groups remain unchanged

Change-Id: I9f4bb609de424d9004d43524fd04737a50fb2c6f
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

016bd24c07-Mar-2018 Matthew Barth <msbarth@us.ibm.com>

Move signals to event triggers

Move the generation and initialization of signals to be included in the
available event triggers. The signal trigger consists of subscribing to
a given signal match wh

Move signals to event triggers

Move the generation and initialization of signals to be included in the
available event triggers. The signal trigger consists of subscribing to
a given signal match where when the signal is received and handled, it
causes the event actions to be called.

Tested:
All current event signals are still registered and received
Speed changes occur based on temperature sensor change signals

Change-Id: Iab4ccabb50ad910d5d566bd8c1922109638bd760
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

1b4de26a06-Mar-2018 Matthew Barth <msbarth@us.ibm.com>

Call event triggers on initialization

Move timers to be an event trigger function that is called upon event
initialization. Previously, event timers were created and started
directly within the init

Call event triggers on initialization

Move timers to be an event trigger function that is called upon event
initialization. Previously, event timers were created and started
directly within the initialization of the event, this moves the creation
and starting of a defined event timer to within a selectable event
trigger function.

With the creation of event triggers, an event can be defined with a list
of supported triggers used to execute the actions, if defined, of the
event. In the case no actions are given, the trigger is still used.

Tested:
Timer triggers are created/started correctly for an event
Events with no actions have timers created/started as defined

Change-Id: I9ab13a4269b2035095cadbbe2c613a16df469589
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

d0b90fc605-Mar-2018 Matthew Barth <msbarth@us.ibm.com>

Have timers be a trigger type in microseconds

Extract and generate timers in microseconds for all event triggers and
actions that take a timer as a parameter.

Tested:
Timers are created on even

Have timers be a trigger type in microseconds

Extract and generate timers in microseconds for all event triggers and
actions that take a timer as a parameter.

Tested:
Timers are created on events with timer triggers defined
Inspect that generated timers are created in microseconds
No timer is created for events without a timer trigger

Change-Id: I345f247782779ef142fe0d569632be2b6c11f0c3
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

f20c321d02-Mar-2018 Matthew Barth <msbarth@us.ibm.com>

Preconditions use signal triggers

Merge precondition events to use the same signal trigger generation
function.

Tested:
Generated code remains unchanged

Change-Id: I4c3e9df2567a0f4290ddeba2bf7

Preconditions use signal triggers

Merge precondition events to use the same signal trigger generation
function.

Tested:
Generated code remains unchanged

Change-Id: I4c3e9df2567a0f4290ddeba2bf76aecbfb674dea
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

a69465a102-Mar-2018 Matthew Barth <msbarth@us.ibm.com>

Move signal matches to triggers section

Create a triggers section that will support different types of triggers
for an event. Currently the only supported trigger is signal based where
code is gener

Move signal matches to triggers section

Create a triggers section that will support different types of triggers
for an event. Currently the only supported trigger is signal based where
code is generated to subscribe to the given matches for each member of
all groups in the event.

Tested:
Generated code remains unchanged

Change-Id: I452cb35b12c13c77f3c653866095b09e33fd8692
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

59096e5018-Feb-2019 Matthew Barth <msbarth@us.ibm.com>

Generate zone property persist configs

Each zone object's hosted interfaces' properties can be configured to be
persisted or not at compile time. Those properties configured to be
persisted are set

Generate zone property persist configs

Each zone object's hosted interfaces' properties can be configured to be
persisted or not at compile time. Those properties configured to be
persisted are set to be persisted after the initial value is set. When
this value doesnt change on a system, there's no need to persist it
since the initial value is compiled into the fan control application per
zone. Once this value is changed and therefore persisted, upon a
application restart, initially the value would be what's compiled in
until its configured again to be persisted and then restored.

Tested:
Current property always set to what's persisted between restarts
Nothing persisted when Current property doesnt change from default

Change-Id: I93109730796af2058ecab0e78e612b7919886b33
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

7883f58a14-Feb-2019 Matthew Barth <msbarth@us.ibm.com>

Parse and generate zone interfaces

Interfaces can optionally be defined on each zone to include setting
properties under those interfaces when fan control initializes the zone.
Setting the property

Parse and generate zone interfaces

Interfaces can optionally be defined on each zone to include setting
properties under those interfaces when fan control initializes the zone.
Setting the property values here allows them to be initialized to a
default value or set of values.

Change-Id: I75d51a05caa9e5662a0608d285fd388acc8593e2
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

18c9103029-Jan-2019 Matthew Barth <msbarth@us.ibm.com>

Update parser for properties on zone objects

Create a service attribute that can be optionally defined on a group
denoting what service is hosting the group members. Initially, defining
a service na

Update parser for properties on zone objects

Create a service attribute that can be optionally defined on a group
denoting what service is hosting the group members. Initially, defining
a service name generates the group member(s) to be zone objects only.

This service attribute will be enhanced to specifically note what
service provides the group members and allow for a better trigger for
properties on zone objects instead of generating a blank signal match.

Tested:
Blank signal match generated for group members in events used

Change-Id: I483fcf6a5e210e5d70bc9d5c4c0dee15524b01b9
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...

122b843f30-Oct-2018 William A. Kennington III <wak@google.com>

control: Rename Timer -> TimerConf

It is confusing to read some of the type definitions that deal with
timers when Timer could mean a timer instantiation or a set of timer
configuration parameters.

control: Rename Timer -> TimerConf

It is confusing to read some of the type definitions that deal with
timers when Timer could mean a timer instantiation or a set of timer
configuration parameters. This change disambiguates the two types.

Tested:
Built and run through unit tests.

Change-Id: I9dd6b47886747d56a86b6a50eb9a74a331d0a1fe
Signed-off-by: William A. Kennington III <wak@google.com>

show more ...


/openbmc/phosphor-fan-presence/.gitignore
/openbmc/phosphor-fan-presence/MAINTAINERS
/openbmc/phosphor-fan-presence/Makefile.am
/openbmc/phosphor-fan-presence/configure.ac
/openbmc/phosphor-fan-presence/control/Makefile.am
/openbmc/phosphor-fan-presence/control/actions.cpp
/openbmc/phosphor-fan-presence/control/actions.hpp
/openbmc/phosphor-fan-presence/control/argument.cpp
/openbmc/phosphor-fan-presence/control/fan.cpp
/openbmc/phosphor-fan-presence/control/fan.hpp
/openbmc/phosphor-fan-presence/control/functor.hpp
/openbmc/phosphor-fan-presence/control/gen-fan-zone-defs.py
/openbmc/phosphor-fan-presence/control/main.cpp
/openbmc/phosphor-fan-presence/control/manager.cpp
/openbmc/phosphor-fan-presence/control/manager.hpp
/openbmc/phosphor-fan-presence/control/preconditions.hpp
defs.mako
fan_zone_defs.mako.cpp
/openbmc/phosphor-fan-presence/control/types.hpp
/openbmc/phosphor-fan-presence/control/zone.cpp
/openbmc/phosphor-fan-presence/control/zone.hpp
/openbmc/phosphor-fan-presence/cooling-type/Makefile.am
/openbmc/phosphor-fan-presence/cooling-type/argument.cpp
/openbmc/phosphor-fan-presence/cooling-type/cooling_type.cpp
/openbmc/phosphor-fan-presence/cooling-type/cooling_type.hpp
/openbmc/phosphor-fan-presence/cooling-type/main.cpp
/openbmc/phosphor-fan-presence/evdevpp/test/evmon.cpp
/openbmc/phosphor-fan-presence/event.hpp
/openbmc/phosphor-fan-presence/monitor/Makefile.am
/openbmc/phosphor-fan-presence/monitor/argument.cpp
/openbmc/phosphor-fan-presence/monitor/fan.cpp
/openbmc/phosphor-fan-presence/monitor/fan.hpp
/openbmc/phosphor-fan-presence/monitor/gen-fan-monitor-defs.py
/openbmc/phosphor-fan-presence/monitor/main.cpp
/openbmc/phosphor-fan-presence/monitor/tach_sensor.cpp
/openbmc/phosphor-fan-presence/monitor/tach_sensor.hpp
/openbmc/phosphor-fan-presence/presence/Makefile.am
/openbmc/phosphor-fan-presence/presence/fallback.cpp
/openbmc/phosphor-fan-presence/presence/gpio.cpp
/openbmc/phosphor-fan-presence/presence/gpio.hpp
/openbmc/phosphor-fan-presence/presence/tach_detect.cpp
/openbmc/phosphor-fan-presence/sdbusplus.hpp
/openbmc/phosphor-fan-presence/test/Makefile.am
/openbmc/phosphor-fan-presence/test/timertest.cpp
/openbmc/phosphor-fan-presence/timer.cpp
/openbmc/phosphor-fan-presence/timer.hpp
/openbmc/phosphor-fan-presence/utility.cpp
/openbmc/phosphor-fan-presence/utility.hpp
702c4a5528-Feb-2018 Matthew Barth <msbarth@us.ibm.com>

Move generated code template to file

In preparation of enhancing the generated code format, the template used
has been externalized and will continue to be modified in future commits
to parse & gene

Move generated code template to file

In preparation of enhancing the generated code format, the template used
has been externalized and will continue to be modified in future commits
to parse & generate more efficiently.

Tested:
Generated code remains unchanged

Resolves openbmc/phosphor-fan-presence#8

Change-Id: Ifbf718e8a22acb2f2f939bbdcc2e7fe041e9ed58
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>

show more ...


/openbmc/phosphor-fan-presence/.gitignore
/openbmc/phosphor-fan-presence/LICENSE
/openbmc/phosphor-fan-presence/Makefile.am
/openbmc/phosphor-fan-presence/README.md
/openbmc/phosphor-fan-presence/argument.hpp
/openbmc/phosphor-fan-presence/bootstrap.sh
/openbmc/phosphor-fan-presence/configure.ac
/openbmc/phosphor-fan-presence/control/Makefile.am
/openbmc/phosphor-fan-presence/control/actions.cpp
/openbmc/phosphor-fan-presence/control/actions.hpp
/openbmc/phosphor-fan-presence/control/argument.cpp
/openbmc/phosphor-fan-presence/control/example/events.yaml
/openbmc/phosphor-fan-presence/control/example/fans.yaml
/openbmc/phosphor-fan-presence/control/example/zone_conditions.yaml
/openbmc/phosphor-fan-presence/control/example/zones.yaml
/openbmc/phosphor-fan-presence/control/fan.cpp
/openbmc/phosphor-fan-presence/control/fan.hpp
/openbmc/phosphor-fan-presence/control/functor.hpp
/openbmc/phosphor-fan-presence/control/gen-fan-zone-defs.py
/openbmc/phosphor-fan-presence/control/handlers.hpp
/openbmc/phosphor-fan-presence/control/main.cpp
/openbmc/phosphor-fan-presence/control/manager.cpp
/openbmc/phosphor-fan-presence/control/manager.hpp
/openbmc/phosphor-fan-presence/control/matches.hpp
/openbmc/phosphor-fan-presence/control/preconditions.hpp
defs.mako
fan_zone_defs.mako.cpp
/openbmc/phosphor-fan-presence/control/types.hpp
/openbmc/phosphor-fan-presence/control/zone.cpp
/openbmc/phosphor-fan-presence/control/zone.hpp
/openbmc/phosphor-fan-presence/cooling-type/Makefile.am
/openbmc/phosphor-fan-presence/cooling-type/argument.cpp
/openbmc/phosphor-fan-presence/cooling-type/cooling_type.cpp
/openbmc/phosphor-fan-presence/cooling-type/cooling_type.hpp
/openbmc/phosphor-fan-presence/cooling-type/main.cpp
/openbmc/phosphor-fan-presence/evdevpp/evdev.hpp
/openbmc/phosphor-fan-presence/evdevpp/test/.gitignore
/openbmc/phosphor-fan-presence/evdevpp/test/Makefile.am
/openbmc/phosphor-fan-presence/evdevpp/test/evmon.cpp
/openbmc/phosphor-fan-presence/event.hpp
/openbmc/phosphor-fan-presence/monitor/Makefile.am
/openbmc/phosphor-fan-presence/monitor/argument.cpp
/openbmc/phosphor-fan-presence/monitor/conditions.cpp
/openbmc/phosphor-fan-presence/monitor/conditions.hpp
/openbmc/phosphor-fan-presence/monitor/example/monitor.yaml
/openbmc/phosphor-fan-presence/monitor/fan.cpp
/openbmc/phosphor-fan-presence/monitor/fan.hpp
/openbmc/phosphor-fan-presence/monitor/fan_defs.hpp
/openbmc/phosphor-fan-presence/monitor/gen-fan-monitor-defs.py
/openbmc/phosphor-fan-presence/monitor/groups.hpp
/openbmc/phosphor-fan-presence/monitor/main.cpp
/openbmc/phosphor-fan-presence/monitor/nonzero_speed_trust.hpp
/openbmc/phosphor-fan-presence/monitor/tach_sensor.cpp
/openbmc/phosphor-fan-presence/monitor/tach_sensor.hpp
/openbmc/phosphor-fan-presence/monitor/trust_group.hpp
/openbmc/phosphor-fan-presence/monitor/trust_manager.hpp
/openbmc/phosphor-fan-presence/monitor/types.hpp
/openbmc/phosphor-fan-presence/presence/.gitignore
/openbmc/phosphor-fan-presence/presence/Makefile.am
/openbmc/phosphor-fan-presence/presence/anyof.cpp
/openbmc/phosphor-fan-presence/presence/anyof.hpp
/openbmc/phosphor-fan-presence/presence/example/example.yaml
/openbmc/phosphor-fan-presence/presence/fallback.cpp
/openbmc/phosphor-fan-presence/presence/fallback.hpp
/openbmc/phosphor-fan-presence/presence/fan.cpp
/openbmc/phosphor-fan-presence/presence/fan.hpp
/openbmc/phosphor-fan-presence/presence/gpio.cpp
/openbmc/phosphor-fan-presence/presence/gpio.hpp
/openbmc/phosphor-fan-presence/presence/pfpgen.py
/openbmc/phosphor-fan-presence/presence/psensor.cpp
/openbmc/phosphor-fan-presence/presence/psensor.hpp
/openbmc/phosphor-fan-presence/presence/rpolicy.hpp
/openbmc/phosphor-fan-presence/presence/tach.cpp
/openbmc/phosphor-fan-presence/presence/tach.hpp
/openbmc/phosphor-fan-presence/presence/tach_detect.cpp
/openbmc/phosphor-fan-presence/presence/templates/anyof.mako.hpp
/openbmc/phosphor-fan-presence/presence/templates/fallback.mako.hpp
/openbmc/phosphor-fan-presence/presence/templates/generated.mako.hpp
/openbmc/phosphor-fan-presence/presence/templates/gpio.mako.hpp
/openbmc/phosphor-fan-presence/presence/templates/tach.mako.hpp
/openbmc/phosphor-fan-presence/presence/test/Makefile.am
/openbmc/phosphor-fan-presence/presence/test/fallbacktest.cpp
/openbmc/phosphor-fan-presence/sdbusplus.hpp
/openbmc/phosphor-fan-presence/sdevent.hpp
/openbmc/phosphor-fan-presence/sdevent/event.hpp
/openbmc/phosphor-fan-presence/sdevent/io.hpp
/openbmc/phosphor-fan-presence/sdevent/source.hpp
/openbmc/phosphor-fan-presence/sdevent/test/.gitignore
/openbmc/phosphor-fan-presence/sdevent/test/Makefile.am
/openbmc/phosphor-fan-presence/sdevent/test/iotest.cpp
/openbmc/phosphor-fan-presence/test/.gitignore
/openbmc/phosphor-fan-presence/test/Makefile.am
/openbmc/phosphor-fan-presence/test/timertest.cpp
/openbmc/phosphor-fan-presence/timer.cpp
/openbmc/phosphor-fan-presence/timer.hpp
/openbmc/phosphor-fan-presence/utility.cpp
/openbmc/phosphor-fan-presence/utility.hpp