<div dir="ltr">Hi there,<div><br></div><div>Current phosphor-hwmon code is filled with preprocessor macros to branch error condition for sysfs reads, and it seems to me that adding a per-sensor configuration would solve two issues at least:</div><div>1. code can be greatly simplified</div><div>2. we can code more flexible sensor reading behavior</div><div><br></div><div>Why 2) is needed: with many types of sensors that BMC controls, having an one-size-fits-all policy will always have cases that it can't handle. Each flaky sensor is flaky in its own way.</div><div><div><br></div><div>Rough proposal on how this will work:</div><div><br></div><div>add properties to each sensor group's configuration file: </div><div><br></div><div>"error behavior": can be one of </div><div>- always keep</div><div>- remove from D-Bus on error</div><div><br></div><div>"error condition":  can be combination of</div><div>- certain sysfs return codes</div><div>- timeout</div><div>- invalid value</div><div><br></div><div>"error retries": number of retries before declaring the sensor has an error</div><div><br></div><div>Happy to hear any feedback. </div><div><br></div><div dir="ltr" class="m_-126363046774815673gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Regards,<div>Kun</div></div></div></div></div>