vboot: Implement VbExGetTimer using monotonic timers
On x86 VbExGetTimer() uses rdtsc. However, on all other platforms, let's just use coreboot's monotonic timers. Change-Id: I0cd359f298be33776740305b111624147e2c850d Signed-off-by: Stefan Reinauer <reinauer@google.com> Reviewed-on: https://chromium-review.googlesource.com/169620 (cherry picked from commit e910bb17522d5de42c0fc3cc945278e733fa2553) Signed-off-by: Isaac Christensen <isaac.christensen@se-eng.com> Reviewed-on: http://review.coreboot.org/6534 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
parent
7cb01e0bcf
commit
141512161b
|
@ -17,7 +17,11 @@
|
||||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
#include <console/vtxprintf.h>
|
#include <console/vtxprintf.h>
|
||||||
|
#if CONFIG_ARCH_X86
|
||||||
#include <cpu/x86/tsc.h>
|
#include <cpu/x86/tsc.h>
|
||||||
|
#else
|
||||||
|
#include <timer.h>
|
||||||
|
#endif
|
||||||
#include <rmodule.h>
|
#include <rmodule.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
@ -123,7 +127,13 @@ void VbExDebug(const char *format, ...)
|
||||||
|
|
||||||
uint64_t VbExGetTimer(void)
|
uint64_t VbExGetTimer(void)
|
||||||
{
|
{
|
||||||
|
#if CONFIG_ARCH_X86
|
||||||
return rdtscll();
|
return rdtscll();
|
||||||
|
#else
|
||||||
|
struct mono_time mt;
|
||||||
|
timer_monotonic_get(&mt);
|
||||||
|
return mt.microseconds;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
VbError_t VbExNvStorageRead(uint8_t *buf)
|
VbError_t VbExNvStorageRead(uint8_t *buf)
|
||||||
|
|
Loading…
Reference in New Issue