History log of /openbmc/phosphor-fan-presence/presence/anyof.hpp (Results 1 – 5 of 5)
Revision Date Author Comments
# 08bc72f2 12-Oct-2022 Matt Spinler <spinler@us.ibm.com>

presence: Add ctors for AnyOf and Fallback

Add constructors to the AnyOf and Fallback presence detection classes
that don't take an EEPROMDevice pointer. This will fix the YAML based
compilation wh

presence: Add ctors for AnyOf and Fallback

Add constructors to the AnyOf and Fallback presence detection classes
that don't take an EEPROMDevice pointer. This will fix the YAML based
compilation which was failing because the python template wasn't adding
that EEPROMDevice argument.

Alternatively the python mako template could have been modified to pass
in the argument, but there are no plans to add the EEPROM support to the
YAML mode anyway.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I178bf8a8e258de3597f8ced600dc803cab54f227

show more ...


# bc4179e9 04-Oct-2022 Matt Spinler <spinler@us.ibm.com>

pres: Add way to bind fan eeprom driver after plug

Some fans have EEPROMs on them that are read by other BMC code so the
contents can be added to the BMC inventory. Since fans can usually be
hotplu

pres: Add way to bind fan eeprom driver after plug

Some fans have EEPROMs on them that are read by other BMC code so the
contents can be added to the BMC inventory. Since fans can usually be
hotplugged, this means those EEPROMs need to be read after a fan is
plugged, and there was previously no method to trigger that.

This commit adds functionality to phosphor-fan-presence-tach to bind the
EEPROM driver to the new device after a fan with an EEPROM is plugged.
This triggers a udev event which triggers EEPROM reads if the platform
is configured to do so.

This is done with a new optional JSON section in the config.json, which
looks like:
"eeprom": {
"bus_address": "31-0050",
"driver_name": "at24",
"bind_delay_ms": 1000
}

The 'bus_address' field is the device's I2C bus and address string as it
is represented in the I2C subsystem in sysfs. The 'driver_name' field
is the name of the device driver that manages that device. The
'bind_delay_ms' field allows there to be a defined amount of time
between when the device is plugged and when the driver is bound, in case
a certain amount of time is required for the device to come online after
it receives power.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I10d36efab954393239e6face96244ecd34035596

show more ...


# c65d91d6 21-Apr-2021 Matt Spinler <spinler@us.ibm.com>

presence: Sensor conflict checking for AnyOf

There can be more than one way to detect the presence of a fan, such as
by a GPIO and by a nonzero tach reading. The AnyOf redundancy policy

presence: Sensor conflict checking for AnyOf

There can be more than one way to detect the presence of a fan, such as
by a GPIO and by a nonzero tach reading. The AnyOf redundancy policy
only requires one of these to indicate present when determining the
overall fan presence state.

This commit adds the functionality to check for the case when one of the
method reports not present while another reports present. In this case,
the one reporting not present will be considered the wrong one, and
depending on the detection type either an information event log or just
a journal trace will be created.

Only one log per method per power cycle will occur. Since one of the
methods probably looks for nonzero tach readings, there is a 5 second
delay after a power on is detected before a conflict check is done.

If the GPIO method is where the problem is detected, an event log is
created. If it's instead the tach sensor method, then a trace will just
be put in the journal because there is already code watching for and
creating event logs for stopped tachs - the fan monitor code.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I72a764ecff4076d6dc40335b92d177b6b3cfa2d9

show more ...


# 2d2caa34 26-May-2020 Matthew Barth <msbarth@us.ibm.com>

presence: Clang format updates

Used `format-code.sh` build script to make changes to conform to clang
format.

Tested: Compiled

Change-Id: I2fc795938e85a752ee56b54212d38

presence: Clang format updates

Used `format-code.sh` build script to make changes to conform to clang
format.

Tested: Compiled

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

show more ...


# 00b52082 25-Jul-2017 Brad Bishop <bradleyb@fuzziesquirrel.com>

presence: Add any of redundancy policy

Add a bitwise logical or redundancy policy implementation
(fan is present if any sensor indicates as such).

Change-Id: I1d161478a4a6fe9d56

presence: Add any of redundancy policy

Add a bitwise logical or redundancy policy implementation
(fan is present if any sensor indicates as such).

Change-Id: I1d161478a4a6fe9d5690a385703e41c6fff9c81c
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>

show more ...