tree 81d80b657955cfb2d3aa553ec370b515bdb52431
parent 33c948a473bd273fea0cff82d4c99b70b7784be6
author Jonathan Doman <jonathan.doman@intel.com> 1615244052 -0800
committer Jonathan Doman <jonathan.doman@intel.com> 1619477754 +0000

Retry PIROM reads to workaround possible failures

PIROM is supposed to be reliable and available in all power states, but
some CPUs have bugs which can cause reads to return invalid data in some
small time windows. The root causes are complicated, so although the BMC
could technically detect these windows it would take a lot of work.
Instead, this commit just adds logic to read the SSpec from PIROM
multiple times and consider it a success when two reads return the same
data. This relies on the reasonable assumption that the corrupted data
will most likely not look like a valid SSpec, and that it's very
unlikely to hit the invalid window multiple times.

This code still only modifies two D-Bus properties, but now those values
are determined at (potentially) different times, so the property setting
functions are rewritten to work with a global property list. As the
property values are determined, they are added to the list, and are
re-processed as needed (e.g. object/interface gets readded).

Tested: (On 1-CPU platform without working PIROM interface)
- Modified readSSpec to return spoofed value, AC cycled and verified
  it was set on target object/interface. Also warm reset host (which
  reinitializes D-Bus objects due to SMBIOS tables being resent), and
  verified properties are set again.
- Restarted target service (smbios-mdrv2) and verified this service
  restarts and re-sets all target properties.

Signed-off-by: Jonathan Doman <jonathan.doman@intel.com>
Change-Id: I963a2c145f1b97b05046da795af97bd7028bc807
