> Slow devices such as flash may not meet the default 1ms timeout value, > so use the ERST max execution time value as the timeout if it is larger > and if the ERST has the "slow" attribute set. > > Example: > A NOR flash spec lists "Page program time (256 bytes)" as 120us typical, > and 1800us max. A 32KB error log would be (32K/256) = 128 nor-flash > pages. Writing those 128 nor-flash pages would then take > 120us * 128 = 15ms typical, or 1800us * 128 = 230.4ms max. > > Without this change, when pstore calls APEI's ERST code to write a 32KB > error log to the NOR flash in the example, the code will flag a timeout > after 1ms and return an error to pstore. With this change, unless the > max time value from the ERST table is exceeded, the code will not flag a > timeout and will return success to pstore after the operation completes. > > Signed-off-by: Jeshua Smith <jeshuas@xxxxxxxxxx> Reviewed-by: Tony Luck <tony.luck@xxxxxxxxx>