| /openbmc/phosphor-fan-presence/presence/ |
| H A D | tach.hpp | 21 * @class Tach 22 * @brief Fan tach sensor presence implementation. 24 * The Tach class uses one or more tach speed indicators 27 class Tach : public PresenceSensor class 36 Tach() = delete; 37 Tach(const Tach&) = delete; 38 Tach& operator=(const Tach&) = delete; 39 Tach(Tach&&) = delete; 40 Tach& operator=(Tach&&) = delete; 41 ~Tach() = default; [all …]
|
| H A D | tach.cpp | 16 #include "tach.hpp" 41 Tach::Tach(const std::vector<std::string>& sensors) : currentState(false) in Tach() function in phosphor::fan::presence::Tach 50 bool Tach::start() in start() 64 // Get an initial tach speed. in start() 75 lg2::info("Unable to read fan tach sensor {TACPATH}", "TACPATH", in start() 88 void Tach::stop() in stop() 97 bool Tach::present() in present() 99 // Live query the tach readings. in present() 111 void Tach::propertiesChanged(size_t sensor, sdbusplus::message_t& msg) in propertiesChanged() 120 void Tach::propertiesChanged(size_t sensor, in propertiesChanged() [all …]
|
| /openbmc/phosphor-mrw-tools/ |
| H A D | gen_presence_yaml.pl | 41 #Finds FRUs and their Presence detects where a tach reading 43 #tach reading can be used to tell that a particular fan is present. 51 my $connections = $targets->findConnections($target, "TACH"); 54 for my $tach (sort @{$connections->{CONN}}) 58 next if (exists $tachs{$tach->{SOURCE}}{$tach->{DEST}}); 59 $tachs{$tach->{SOURCE}}{$tach->{DEST}} = 1; 61 my $fru = Util::getEnclosingFru($targets, $tach->{SOURCE}); 68 my $sensor = getSensor($tach->{DEST}); 71 $$presence{Tach}{$name}{type} = 'Fan'; 74 push @{$$presence{Tach}{$name}{sensors}}, $sensor;
|
| H A D | gen_fan_zone_yaml.pl | 52 #Find fans by looking at the TACH connections. We could also find 53 #parts of type FAN, but we need the tach connection anyway to 57 my $connections = $targets->findConnections($target, "TACH"); 60 for my $tach (sort @{$connections->{CONN}}) 64 next if (exists $tachs{$tach->{SOURCE}}{$tach->{DEST}}); 65 $tachs{$tach->{SOURCE}}{$tach->{DEST}} = 1; 67 #Note: SOURCE = tach unit on fan, DEST = tach unit on fan ctlr 69 my $fru = Util::getEnclosingFru($targets, $tach->{SOURCE}); 72 my $sensor = getSensor($tach->{DEST}); 76 my $part = $targets->getTargetParent($tach->{SOURCE});
|
| /openbmc/phosphor-fan-presence/docs/presence/ |
| H A D | methods.md | 12 - ["tach"](#tach) 15 ### "tach" 17 Requires an array of `sensors` of each fan tach D-Bus sensor name to be used to 18 determine fan presence. This is the name of the fan tach sensor located under 22 "type": "tach", 51 "type": "tach",
|
| H A D | README.md | 16 The `phosphor-fan-presence-tach` application is controlled by a configuration 66 The `phosphor-fan-presence-tach` application then traverses the supported 78 and `phosphor-fan-presence-tach` application terminates preventing the machine 97 The `phosphor-fan-presence-tach` application will search for the config file at 177 "comments": "Also use the tach for presence detection", 178 "type": "tach", 210 The config file is loaded when the `phosphor-fan-presence-tach` application 216 `systemctl kill -s HUP phosphor-fan-presence-tach@0.service` 220 `journalctl -u phosphor-fan-presence-tach@0.service | grep Loading`
|
| /openbmc/openbmc/meta-ampere/meta-mitchell/recipes-phosphor/fans/phosphor-fan/ |
| H A D | presence.json | 7 "type": "tach", 23 "type": "tach", 39 "type": "tach", 55 "type": "tach", 71 "type": "tach", 87 "type": "tach",
|
| /openbmc/openbmc/meta-ampere/meta-jade/recipes-phosphor/fans/phosphor-fan/ |
| H A D | presence.json | 7 "type": "tach", 23 "type": "tach", 39 "type": "tach", 55 "type": "tach", 71 "type": "tach", 87 "type": "tach",
|
| /openbmc/openbmc/meta-ampere/meta-jefferson/recipes-phosphor/fans/phosphor-fan/ |
| H A D | presence.json | 7 "type": "tach", 20 "type": "tach", 33 "type": "tach", 46 "type": "tach",
|
| /openbmc/phosphor-fan-presence/presence/config_files/p10bmc/com.ibm.Hardware.Chassis.Model.Rainier2U/ |
| H A D | config.json | 13 "type": "tach", 32 "type": "tach", 51 "type": "tach", 70 "type": "tach", 89 "type": "tach", 108 "type": "tach",
|
| /openbmc/phosphor-fan-presence/presence/config_files/p10bmc/com.ibm.Hardware.Chassis.Model.Rainier4U/ |
| H A D | config.json | 13 "type": "tach", 32 "type": "tach", 51 "type": "tach", 70 "type": "tach", 89 "type": "tach", 108 "type": "tach",
|
| /openbmc/openbmc/meta-ibm/meta-romulus/recipes-phosphor/fans/phosphor-fan-presence-config/ |
| H A D | config.yaml | 4 - type: tach 11 - type: tach 18 - type: tach
|
| /openbmc/phosphor-fan-presence/presence/service_files/yaml/ |
| H A D | phosphor-fan-presence-tach@.service | 2 Description=Phosphor Fan Presence Tach Daemon 9 ExecStart=/usr/bin/phosphor-fan-presence-tach 10 SyslogIdentifier=phosphor-fan-presence-tach
|
| /openbmc/phosphor-fan-presence/presence/example/ |
| H A D | example.yaml | 13 'Example fan with tach feedback detection method. 16 tach speed sensor feedbacks as an indicator of presence. Listed sensors 23 - type: tach 60 - type: tach 78 - type: tach
|
| H A D | config.json | 4 "Example fan with tach feedback detection method. Fans without any", 5 "special presence detection hardware can use one or more tach speed", 18 "type": "tach", 62 "type": "tach", 86 "type": "tach",
|
| /openbmc/phosphor-fan-presence/presence/config_files/p10bmc/com.ibm.Hardware.Chassis.Model.Rainier1S4U/ |
| H A D | config.json | 13 "type": "tach", 32 "type": "tach", 51 "type": "tach", 70 "type": "tach",
|
| /openbmc/phosphor-fan-presence/presence/config_files/witherspoon/ |
| H A D | config.json | 13 "type": "tach", 32 "type": "tach", 51 "type": "tach", 70 "type": "tach",
|
| /openbmc/phosphor-fan-presence/presence/config_files/p10bmc/com.ibm.Hardware.Chassis.Model.Everest/ |
| H A D | config.json | 13 "type": "tach", 37 "type": "tach", 61 "type": "tach", 85 "type": "tach",
|
| /openbmc/phosphor-fan-presence/presence/config_files/p10bmc/com.ibm.Hardware.Chassis.Model.Fuji/ |
| H A D | config.json | 13 "type": "tach", 37 "type": "tach", 61 "type": "tach", 85 "type": "tach",
|
| /openbmc/openbmc/meta-ibm/recipes-phosphor/fans/phosphor-fan-presence-config/swift/ |
| H A D | config.yaml | 8 - type: tach 21 - type: tach 34 - type: tach 47 - type: tach
|
| /openbmc/openbmc/meta-phosphor/recipes-phosphor/fans/ |
| H A D | phosphor-fan_git.bb | 19 # ${PN}-presence-tach specific configuration 71 SYSTEMD_SERVICE:${PN}-presence-tach += "${TMPL_TACH}" 72 SYSTEMD_LINK:${PN}-presence-tach += "${@compose_list(d, 'FMT_TACH', 'OBMC_CHASSIS_ZERO_ONLY')}" 74 SYSTEMD_LINK:${PN}-presence-tach += "${@bb.utils.contains('PACKAGECONFIG', 'json', \ 107 FILES:${PN}-presence-tach = "${bindir}/phosphor-fan-presence-tach" 109 FILES:${PN}-presence-tach += "${@bb.utils.contains('PACKAGECONFIG', 'json', \ 133 ${PN}-presence-tach \ 140 TMPL_TACH = "phosphor-fan-presence-tach@.service" 141 INSTFMT_TACH = "phosphor-fan-presence-tach@{0}.service"
|
| /openbmc/phosphor-fan-presence/presence/service_files/json/ |
| H A D | phosphor-fan-presence-tach@.service | 2 Description=Phosphor Fan Presence Tach Daemon 7 ExecStart=/usr/bin/phosphor-fan-presence-tach
|
| /openbmc/openbmc/meta-ampere/meta-common/recipes-phosphor/fans/phosphor-fan/ |
| H A D | phosphor-fan-presence-tach@.service | |
| /openbmc/openbmc/meta-facebook/meta-santabarbara/recipes-santabarbara/plat-svc/files/ |
| H A D | santabarbara-early-sys-init | 15 # Set fan tach sample count for each tach channel to highest value to avoid 16 # wrong fan tach reading. 23 # | tach sample count| 1 | 2 | 4 | 8 | 16 | 32 | 86 # Set MAX31790 fan tach sample count
|
| /openbmc/phosphor-fan-presence/control/ |
| H A D | fanctl.cpp | 150 {"tach", "/xyz/openbmc_project/sensors/fan_tach"}}; in loadDBusData() 153 for (auto& path : SDBusPlus::getSubTreePathsRaw(bus, paths["tach"], in loadDBusData() 168 bus, paths["tach"], interfaces["FanPwm"], 0)) in loadDBusData() 177 // load tach sensor paths for each fan in loadDBusData() 178 pathMap["tach"] = in loadDBusData() 179 getPathsFromIface(paths["tach"], interfaces["SensorValue"], fanNames); in loadDBusData() 304 pathMap["tach"][fan][0], in status() 312 int numRotors = pathMap["tach"][fan].size(); in status() 313 // print tach readings for each rotor in status() 314 for (auto& path : pathMap["tach"][fan]) in status() [all …]
|