d7cd9f1e | 05-Aug-2024 |
George Liu <liuxiwei@ieisystem.com> |
README.md: Fix MD037 warnings
The following warnings are generated by using markdownlint analysis: ``` docs/monitor/sensors.md:11:23 MD037/no-space-in-emphasis Spaces inside emphasis markers [Contex
README.md: Fix MD037 warnings
The following warnings are generated by using markdownlint analysis: ``` docs/monitor/sensors.md:11:23 MD037/no-space-in-emphasis Spaces inside emphasis markers [Context: "_ ("] docs/monitor/sensors.md:11:66 MD037/no-space-in-emphasis Spaces inside emphasis markers [Context: ") _"] docs/monitor/sensors.md:13:23 MD037/no-space-in-emphasis Spaces inside emphasis markers [Context: "_ ("] docs/monitor/sensors.md:13:66 MD037/no-space-in-emphasis Spaces inside emphasis markers [Context: ") _"] ``` Refer to markdown-lint [1] to fix MD037 [1]: https://github.com/updownpress/markdown-lint/blob/master/rules/037-no-space-in-emphasis.md
Signed-off-by: George Liu <liuxiwei@ieisystem.com> Change-Id: Ifff2a9c647b284b49423ed3d04c79af8d5576b16
show more ...
|
64fb88c1 | 05-Aug-2024 |
George Liu <liuxiwei@ieisystem.com> |
Fix MD040 warnings
The following warnings are generated by using markdownlint analysis: ``` MD040/fenced-code-language Fenced code blocks should have a language specified [Context: "```"] ``` Refer
Fix MD040 warnings
The following warnings are generated by using markdownlint analysis: ``` MD040/fenced-code-language Fenced code blocks should have a language specified [Context: "```"] ``` Refer to markdown-lint [1] to fix MD040 [1]: https://github.com/updownpress/markdown-lint/blob/master/rules/040-fenced-code-language.md
Signed-off-by: George Liu <liuxiwei@ieisystem.com> Change-Id: Ie866ac8c3d8e33d2c8811f7c6a5965d6dad1f88a
show more ...
|
6d3e18c0 | 05-Aug-2024 |
George Liu <liuxiwei@ieisystem.com> |
Fix MD033 warnings
The following warnings are generated by using markdownlint analysis: ``` MD033/no-inline-html Inline HTML [Element: code] MD033/no-inline-html Inline HTML [Element: pre] MD033/no-
Fix MD033 warnings
The following warnings are generated by using markdownlint analysis: ``` MD033/no-inline-html Inline HTML [Element: code] MD033/no-inline-html Inline HTML [Element: pre] MD033/no-inline-html Inline HTML [Element: b] MD033/no-inline-html Inline HTML [Element: i] ``` Refer to markdown-lint [1] to fix MD033 [1]: https://github.com/updownpress/markdown-lint/blob/master/rules/033-no-inline-html.md
Signed-off-by: George Liu <liuxiwei@ieisystem.com> Change-Id: I7dfb63e9f3a663cfea60b5d0a0a4ae8540ddd1d6
show more ...
|
4c62fc77 | 14-Feb-2024 |
Matt Spinler <spinler@us.ibm.com> |
monitor: Add fan_frus_with_nonfunc_rotors cause
Create a new power off rule to power off when a specific number of fan FRUs have nonfunctional rotors. With this rule failing rotors can be treated d
monitor: Add fan_frus_with_nonfunc_rotors cause
Create a new power off rule to power off when a specific number of fan FRUs have nonfunctional rotors. With this rule failing rotors can be treated differently when they are spread across fans FRUS than when they are within the same fan FRU.
For example, if both rotors of a 2 rotor fan fail the system can stay up, but if 2 rotors in separate fans fail then the system could be made to power off.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ia1d13596a9e8a6e3a361e5b631699a3c80e36fb8
show more ...
|
b99ce0ed | 30-Nov-2023 |
Chau Ly <chaul@amperecomputing.com> |
Use generic interface to look for configs
IBM has specific interface IBMCompatibleSystem to look for the compatible system location under which the configs are placed. The Entity Manager schema for
Use generic interface to look for configs
IBM has specific interface IBMCompatibleSystem to look for the compatible system location under which the configs are placed. The Entity Manager schema for the property under this interface and the interface name itself can't be generic for other meta systems. To find a more common interface, this should be the one that is probed together with chassis and has its property value corresponding to system's name.
This commit proposes the use of the property Names under the interface xyz.openbmc_project.Inventory.Decorator.Compatible [1]. The property can be configured in chassis's Entity Manager json configuration with a list of one or more compatible system strings. The usage of this interface was mentioned in document [2].
[1] https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/\ yaml/xyz/openbmc_project/Inventory/Decorator/Compatible.interface.yaml [2] https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/\ yaml/xyz/openbmc_project/Software/README.md#compatibility
Tested in Ampere's Mt.Mitchell platform.
1. Configure the interface in Motherboard's Entity Manager config: "xyz.openbmc_project.Inventory.Decorator.Compatible": { "Names": ["com.ampere.Hardware.Chassis.Model.MtMitchell"] } 2. Configs are already placed under /usr/share/phosphor-fan-presence/<daemon>/\ com.ampere.Hardware.Chassis.Model.MtMitchell/ 3. When Entity Manager config is probed: $ busctl call -j xyz.openbmc_project.ObjectMapper \ /xyz/openbmc_project/object_mapper xyz.openbmc_project.ObjectMapper \ GetSubTreePaths sias / 0 1 xyz.openbmc_project.Inventory.Decorator.Compatible { "type": "a{sa{sas}}", "data": [ [ "/xyz/openbmc_project/inventory/system/board/\ Mt_Mitchell_Motherboard" : { "xyz.openbmc_project.EntityManager" : [ ... "xyz.openbmc_project.Inventory.Decorator.Compatible ] } ] ] }
$ busctl get-property xyz.openbmc_project.EntityManager \ /xyz/openbmc_project/inventory/system/board/Mt_Mitchell_Motherboard \ xyz.openbmc_project.Inventory.Decorator.Compatible Names as 1 "com.ampere.Hardware.Chassis.Model.MtMitchell" 4. When phosphor-fan's daemon starts, it can successfully find configs under the folder "com.ampere.Hardware.Chassis.Model.MtMitchell"
Signed-off-by: Chau Ly <chaul@amperecomputing.com> Change-Id: I55107f1c2a78e78ba7cea650b8eaeaf4fd615d2b
show more ...
/openbmc/phosphor-fan-presence/.clang-format/openbmc/phosphor-fan-presence/control/actions.cpp/openbmc/phosphor-fan-presence/control/actions.hpp/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,bonnell/events.json/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,bonnell/groups.json/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,bonnell/pcie_cards.json/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,bonnell/zones.json/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,everest/events.json/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,everest/groups.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/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-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-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/fanctl.cpp/openbmc/phosphor-fan-presence/control/functor.hpp/openbmc/phosphor-fan-presence/control/json/actions/action.hpp/openbmc/phosphor-fan-presence/control/json/actions/count_state_target.cpp/openbmc/phosphor-fan-presence/control/json/actions/default_floor.cpp/openbmc/phosphor-fan-presence/control/json/actions/mapped_floor.cpp/openbmc/phosphor-fan-presence/control/json/actions/missing_owner_target.cpp/openbmc/phosphor-fan-presence/control/json/actions/net_target_decrease.cpp/openbmc/phosphor-fan-presence/control/json/actions/net_target_increase.cpp/openbmc/phosphor-fan-presence/control/json/actions/override_fan_target.cpp/openbmc/phosphor-fan-presence/control/json/actions/pcie_card_floors.cpp/openbmc/phosphor-fan-presence/control/json/actions/request_target_base.cpp/openbmc/phosphor-fan-presence/control/json/actions/set_parameter_from_group_max.cpp/openbmc/phosphor-fan-presence/control/json/actions/target_from_group_max.cpp/openbmc/phosphor-fan-presence/control/json/actions/timer_based_actions.cpp/openbmc/phosphor-fan-presence/control/json/dbus_zone.cpp/openbmc/phosphor-fan-presence/control/json/event.cpp/openbmc/phosphor-fan-presence/control/json/fan.cpp/openbmc/phosphor-fan-presence/control/json/manager.cpp/openbmc/phosphor-fan-presence/control/json/manager.hpp/openbmc/phosphor-fan-presence/control/json/triggers/init.cpp/openbmc/phosphor-fan-presence/control/json/triggers/parameter.cpp/openbmc/phosphor-fan-presence/control/json/triggers/signal.cpp/openbmc/phosphor-fan-presence/control/json/triggers/timer.cpp/openbmc/phosphor-fan-presence/control/json/utils/flight_recorder.cpp/openbmc/phosphor-fan-presence/control/json/utils/modifier.cpp/openbmc/phosphor-fan-presence/control/json/utils/pcie_card_metadata.cpp/openbmc/phosphor-fan-presence/control/json/zone.cpp/openbmc/phosphor-fan-presence/control/main.cpp/openbmc/phosphor-fan-presence/control/manager.cpp/openbmc/phosphor-fan-presence/control/meson.build/openbmc/phosphor-fan-presence/control/preconditions.cpp/openbmc/phosphor-fan-presence/control/triggers.cpp/openbmc/phosphor-fan-presence/control/zone.cpp/openbmc/phosphor-fan-presence/control/zone.hpp/openbmc/phosphor-fan-presence/cooling-type/cooling_type.cpp/openbmc/phosphor-fan-presence/cooling-type/main.cpp/openbmc/phosphor-fan-presence/cooling-type/meson.build/openbmc/phosphor-fan-presence/docs/control/README.mdREADME.md/openbmc/phosphor-fan-presence/docs/presence/README.md/openbmc/phosphor-fan-presence/evdevpp/test/evmon.cpp/openbmc/phosphor-fan-presence/hwmon_ffdc.cpp/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/openbmc/phosphor-fan-presence/monitor/config_files/p10bmc/ibm,bonnell/config.json/openbmc/phosphor-fan-presence/monitor/fan.cpp/openbmc/phosphor-fan-presence/monitor/fan_error.cpp/openbmc/phosphor-fan-presence/monitor/json_parser.cpp/openbmc/phosphor-fan-presence/monitor/main.cpp/openbmc/phosphor-fan-presence/monitor/meson.build/openbmc/phosphor-fan-presence/monitor/power_interface.cpp/openbmc/phosphor-fan-presence/monitor/power_off_action.hpp/openbmc/phosphor-fan-presence/monitor/power_off_rule.hpp/openbmc/phosphor-fan-presence/monitor/system.cpp/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/trust_group.hpp/openbmc/phosphor-fan-presence/power_state.hpp/openbmc/phosphor-fan-presence/presence/error_reporter.cpp/openbmc/phosphor-fan-presence/presence/fallback.cpp/openbmc/phosphor-fan-presence/presence/gpio.cpp/openbmc/phosphor-fan-presence/presence/json_parser.cpp/openbmc/phosphor-fan-presence/presence/meson.build/openbmc/phosphor-fan-presence/presence/tach.cpp/openbmc/phosphor-fan-presence/sdbusplus.hpp/openbmc/phosphor-fan-presence/sensor-monitor/alarm_timestamps.hpp/openbmc/phosphor-fan-presence/sensor-monitor/meson.build/openbmc/phosphor-fan-presence/sensor-monitor/shutdown_alarm_monitor.cpp/openbmc/phosphor-fan-presence/sensor-monitor/threshold_alarm_logger.cpp/openbmc/phosphor-fan-presence/subprojects/cereal.wrap/openbmc/phosphor-fan-presence/subprojects/evdev.wrap/openbmc/phosphor-fan-presence/subprojects/nlohmann_json.wrap/openbmc/phosphor-fan-presence/test/meson.build/openbmc/phosphor-fan-presence/utility.hpp |
f724c16b | 10-May-2023 |
Matt Spinler <spinler@us.ibm.com> |
monitor: Support a separate upper deviation
Add an optional 'upper_deviation' field to the fan monitor config and if supplied it will be used for the allowed deviation when the fan value is over the
monitor: Support a separate upper deviation
Add an optional 'upper_deviation' field to the fan monitor config and if supplied it will be used for the allowed deviation when the fan value is over the target. If not supplied it will work as today and the single deviation value will be used for both the upper and lower bounds.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I085dc1996832e79b94bd1df3a05681d107f466eb
show more ...
|
bea1151e | 12-Dec-2022 |
Patrick Williams <patrick@stwcx.xyz> |
prettier: re-format
Prettier is enabled in openbmc-build-scripts on Markdown, JSON, and YAML files to have consistent formatting for these file types. Re-run the formatter on the whole repository.
prettier: re-format
Prettier is enabled in openbmc-build-scripts on Markdown, JSON, and YAML files to have consistent formatting for these file types. Re-run the formatter on the whole repository.
Change-Id: Ia2f5cffe35ac3175d6663d9b4e173d16e985bf4c Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
a49e3f19 | 08-Dec-2022 |
Patrick Williams <patrick@stwcx.xyz> |
prettier: re-format
Prettier is enabled in openbmc-build-scripts on Markdown, JSON, and YAML files to have consistent formatting for these file types. Re-run the formatter on the whole repository.
prettier: re-format
Prettier is enabled in openbmc-build-scripts on Markdown, JSON, and YAML files to have consistent formatting for these file types. Re-run the formatter on the whole repository.
Change-Id: I961ec77b2617da3e097e64e0d8e8980bb7e5b426 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
/openbmc/phosphor-fan-presence/OWNERS/openbmc/phosphor-fan-presence/README.md/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,bonnell/events.json/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,bonnell/fans.json/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,bonnell/groups.json/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,bonnell/zones.json/openbmc/phosphor-fan-presence/control/config_files/p10bmc/ibm,everest/events.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,rainier-1s4u/events.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-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-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/gen-fan-zone-defs.py/openbmc/phosphor-fan-presence/control/json/actions/target_from_group_max.cpp/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.mdREADME.mdclass.mddeviation.mdfan_missing_error_delay.mdgroup.mdinventory.mdmethod.mdmonitor_start_delay.mdnonfunc_rotor_error_delay.mdnum_nonfunc_rotors_before_error.mdnum_sensors_nonfunc_for_fan_nonfunc.mdpower_off_config.mdsensors.mdset_func_on_present.md/openbmc/phosphor-fan-presence/docs/presence/README.md/openbmc/phosphor-fan-presence/docs/presence/eeprom.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/monitor/config_files/p10bmc/ibm,bonnell/config.json/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/gen-fan-monitor-defs.py/openbmc/phosphor-fan-presence/presence/anyof.cpp/openbmc/phosphor-fan-presence/presence/anyof.hpp/openbmc/phosphor-fan-presence/presence/config_files/p10bmc/ibm,bonnell/config.json/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/eeprom_device.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/json_parser.cpp/openbmc/phosphor-fan-presence/presence/json_parser.hpp/openbmc/phosphor-fan-presence/presence/pfpgen.py/openbmc/phosphor-fan-presence/presence/rpolicy.hpp/openbmc/phosphor-fan-presence/sensor-monitor/threshold_alarm_logger.cpp/openbmc/phosphor-fan-presence/sensor-monitor/threshold_alarm_logger.hpp |
27cc39f1 | 20-Sep-2022 |
Chau Ly <chaul@amperecomputing.com> |
monitor: 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
monitor: 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" as a full object path. By default, it is the same as the fan tach object path.
Signed-off-by: Chau Ly <chaul@amperecomputing.com> Change-Id: I2658a462dd49a98ad77d684f2927e6ccae21cd15
show more ...
/openbmc/phosphor-fan-presence/.gitignore/openbmc/phosphor-fan-presence/OWNERS/openbmc/phosphor-fan-presence/README.md/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/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/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/meson.build/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/openbmc/phosphor-fan-presence/control/templates/fan_zone_defs.mako.cpp/openbmc/phosphor-fan-presence/control/triggers.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/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.mdsensors.md/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/meson.build/openbmc/phosphor-fan-presence/meson_options.txt/openbmc/phosphor-fan-presence/monitor/conditions.cpp/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/monitor.yaml/openbmc/phosphor-fan-presence/monitor/fan.cpp/openbmc/phosphor-fan-presence/monitor/fan.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/main.cpp/openbmc/phosphor-fan-presence/monitor/meson.build/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/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/types.hpp/openbmc/phosphor-fan-presence/power_state.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/fallback.cpp/openbmc/phosphor-fan-presence/presence/fallback.hpp/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/meson.build/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/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/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/meson.build/openbmc/phosphor-fan-presence/utility.hpp |
cceffdd9 | 20-May-2021 |
Matthew Barth <msbarth@us.ibm.com> |
monitor: Tie fan FRU functional state with `set_func_on_present`
Only update the fan FRU to functional when the fan FRU has been replaced or a poweroff->poweron has occured while `set_func_on_presen
monitor: Tie fan FRU functional state with `set_func_on_present`
Only update the fan FRU to functional when the fan FRU has been replaced or a poweroff->poweron has occured while `set_func_on_present` configuration is set.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: I814b29c7d773a403ccf25b8edb9a196528bfb139
show more ...
|
a3584bd2 | 29-Mar-2021 |
Matt Spinler <spinler@us.ibm.com> |
monitor: Support set_func_on_present
The set_func_on_present JSON field determines if the fan FRU and rotors should be set to functional immediately when a fan plug is detected. It is optional in t
monitor: Support set_func_on_present
The set_func_on_present JSON field determines if the fan FRU and rotors should be set to functional immediately when a fan plug is detected. It is optional in the JSON file, and defaults to false if not present.
When this is false, a fan will have to spin back up again before it is set back to functional, meaning that if the new fan is faulty and never spins up there may not be another error created. If a faulty fan is plugged when this setting is true, then an error will be created as soon as the configuration allows.
In some system configurations, the functional status on the fan FRU may also control LED status, so setting the FRU to functional on the plug would also turn off a fault LED, which is a desired behavior in the systems that do this.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: If1a8e62a7b390e8137353a7ecc423a60df138315
show more ...
|
623635c6 | 29-Mar-2021 |
Matt Spinler <spinler@us.ibm.com> |
monitor: Create count timer
When the method for monitoring fan speeds is set to 'count', which is when an up/down counter is used determine when a fan should be considered faulted/nonfunctional, the
monitor: Create count timer
When the method for monitoring fan speeds is set to 'count', which is when an up/down counter is used determine when a fan should be considered faulted/nonfunctional, there needs to be some interval at which the speeds are checked and the count is changed if necessary. Otherwise, if the checks just happened in the tach changed callback as they do today, then a fan with a non-changing rotor speed would never trigger a check.
This commit creates a new timer in the Fan class that is constantly running when the monitor is active if any of the fan's sensors use this mode. In the expiration function, the sensors' tach targets will be compared to their input values and the error count will be incremented/decremented as was previously happening in the tach changed callback.
The interval to use is read from a new 'count_interval' property in the JSON, which defaults to 1 if not present and the count method is enabled.
The timer is started in the startMonitor function, and stopped when a power off is detected.
This commit also added some DEBUG journal traces when the counter on a sensor changes values to help with debugging the new code, and so it can be enabled on a system if desired by enabling debug level tracing.
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I238606e95bb91df93afd6ec7c00bd0577bc603f2
show more ...
|
3755524d | 23-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Fill in the power_off_config attribute details
The `power_off_config` attribute contains a list of power off rules based on the monitoring state of the fans configured. These power off
docs:monitor: Fill in the power_off_config attribute details
The `power_off_config` attribute contains a list of power off rules based on the monitoring state of the fans configured. These power off rules can perform different system power off types to protect a system that is not able to provide enough cooling due to missing or nonfunctional fans.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: Idabaa3a2bb626d3b9048506ed23cd50fb9377f00
show more ...
|
d7f64c6c | 23-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Fill in num_nonfunc_rotors_before_error details
The `num_nonfunc_rotors_before_error` attribute contains the number of fan rotors (sensors) that must be nonfunctional before an error e
docs:monitor: Fill in num_nonfunc_rotors_before_error details
The `num_nonfunc_rotors_before_error` attribute contains the number of fan rotors (sensors) that must be nonfunctional before an error event log is created. This defaults to 1, meaning that an error event is logged when any one of the fan rotors (sensors) being monitored is nonfunctional.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: I3294e817c14f1086657861c27c71eb6ad0546f48
show more ...
|
25b15a99 | 22-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Fill in trust group `group` attribute details
The `group` attribute within 'sensor_trust_groups' contains a list of fan tach sensors to cancel/resume monitoring based on the trust dete
docs:monitor: Fill in trust group `group` attribute details
The `group` attribute within 'sensor_trust_groups' contains a list of fan tach sensors to cancel/resume monitoring based on the trust determination across all members of the group.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: Ifab450c05b7b8cde234d60b58eff1029ce66f5bb
show more ...
|
02e78360 | 22-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Fill in trust group class attribute details
The `class` attribute within 'sensor_trust_groups' contains the trust group determination class implementation to use in determining trust o
docs:monitor: Fill in trust group class attribute details
The `class` attribute within 'sensor_trust_groups' contains the trust group determination class implementation to use in determining trust of the fan sensors within the trust group.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: I52721974a8af61f2bb912751a016dfcd28d824e6
show more ...
|
3b4d973b | 19-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Fill in sensors attribute details
The `sensors` attribute contains a list of sensor objects that make up the fan enclosure object. The sensors are what's monitored to determine the fun
docs:monitor: Fill in sensors attribute details
The `sensors` attribute contains a list of sensor objects that make up the fan enclosure object. The sensors are what's monitored to determine the functional state of the fan.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: I9d673efc9ff95d638b9edf68fa0cb45b529657a9
show more ...
|
a604d323 | 19-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Fill in nonfunc_rotor_error_delay details
The `nonfunc_rotor_error_delay` attribute contains the amount of time(in seconds) to delay logging an error against the fan when any of its se
docs:monitor: Fill in nonfunc_rotor_error_delay details
The `nonfunc_rotor_error_delay` attribute contains the amount of time(in seconds) to delay logging an error against the fan when any of its sensors are deemed nonfunctional. When this attribute is not given, and the `fault_handling` configuration section does not exist, the default is to not log an error for any nonfunctional fan sensors. If the `fault_handling` section exists but this attribute is not given, then it defaults to immediately log an error for any nonfunctional fan sensors.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: Ia39f4ad0b987b2752d2b7820aab5025c1181ab7d
show more ...
|
fd6346ab | 18-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Fill in fan_missing_error_delay details
The `fan_missing_error_delay` attribute contains the amount of time(in seconds) to delay logging an error against the fan when its not present.
docs:monitor: Fill in fan_missing_error_delay details
The `fan_missing_error_delay` attribute contains the amount of time(in seconds) to delay logging an error against the fan when its not present. When this attribute is not given, the default is no error being logged when the fan is marked as not present.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: I52a462e5f339e4404d3523c06695c010cb0de264
show more ...
|
3f7f1ebe | 18-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Fill in monitor_start_delay attribute details
The `monitor_start_delay` attribute contains the amount of time(in seconds) to delay from monitoring the fan at the start of powering on t
docs:monitor: Fill in monitor_start_delay attribute details
The `monitor_start_delay` attribute contains the amount of time(in seconds) to delay from monitoring the fan at the start of powering on the system. This defaults to 0, meaning the fan will immediately be monitored according to its configuration at the start of power on.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: Id190723589ee7ffe8bdcc591306c36e3d4554128
show more ...
|
f9e3163f | 18-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Fill in num_sensors_nonfunc_for_fan_nonfunc details
The `num_sensors_nonfunc_for_fan_nonfunc` attribute contains the number of sensors that must be nonfunctional before the fan contain
docs:monitor: Fill in num_sensors_nonfunc_for_fan_nonfunc details
The `num_sensors_nonfunc_for_fan_nonfunc` attribute contains the number of sensors that must be nonfunctional before the fan containing those sensors are nonfunctional. This defaults to 0, meaning that the fan enclosure's functional state will not be updated based on the functional state of its sensors.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: I0fc646a2819a40115e9d519cc00ecf2bc8aab3a1
show more ...
|
0d29fb79 | 18-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Fill in method attribute details
The `method` attribute contains the method to use in monitoring a fan's functional functional state of its sensors.
Signed-off-by: Matthew Barth <msba
docs:monitor: Fill in method attribute details
The `method` attribute contains the method to use in monitoring a fan's functional functional state of its sensors.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: I1e92b2d927ceee2ae7e5c3ca000b698228d1f814
show more ...
|
4c4de263 | 17-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
monitor: Deviation attribute details(docs) & enforce range
The `deviation` attribute contains the +/- percentage allowed for the sensors to deviate from any requested target.
Also enforcing the `de
monitor: Deviation attribute details(docs) & enforce range
The `deviation` attribute contains the +/- percentage allowed for the sensors to deviate from any requested target.
Also enforcing the `deviation` value provided in the JSON configuration is between 0 and 100.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: I3064e9b407c2edec7fb0fd36a2d1cd3f53d3e397
show more ...
|
42ea86f3 | 17-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Fill in inventory attribute details
The `inventory` attribute contains a string of the relative path under `/xyz/openbmc_project/inventory` where the fan's OperationalStatus interface
docs:monitor: Fill in inventory attribute details
The `inventory` attribute contains a string of the relative path under `/xyz/openbmc_project/inventory` where the fan's OperationalStatus interface exists.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: I6be09429c940fadb28d194c2519cf5afb3d502d9
show more ...
|
57caa923 | 16-Feb-2021 |
Matthew Barth <msbarth@us.ibm.com> |
docs:monitor: Configuration content outline
Fill in the fan monitor JSON configuration content and add syntax detail markdown files for each attribute available. Each attribute's syntax markdown fil
docs:monitor: Configuration content outline
Fill in the fan monitor JSON configuration content and add syntax detail markdown files for each attribute available. Each attribute's syntax markdown file will be completed in follow-up commits to provide further details on the attribute within the configuration.
Signed-off-by: Matthew Barth <msbarth@us.ibm.com> Change-Id: Ibe97080c8b993c67c54af9989e775191607314b7
show more ...
|