libpayload: Get current tick from high register in generic timer
This fixes the generic timer driver to get the current tick from the high register, so that comparison with the high count value (obtained previously from the same register) has a chance to succeed. Change-Id: I5ce02bfa15a91ad34641b8e24813a5b7ca790ec3 Signed-off-by: Paul Kocialkowski <contact@paulk.fr> Reviewed-on: https://review.coreboot.org/17929 Tested-by: build bot (Jenkins) Reviewed-by: Nico Huber <nico.h@gmx.de> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
This commit is contained in:
parent
c9b398191e
commit
35562d8b64
|
@ -53,7 +53,7 @@ uint64_t timer_raw_value(void)
|
|||
do {
|
||||
count_h = readl(phys_to_virt(CONFIG_LP_TIMER_GENERIC_HIGH_REG));
|
||||
count_l = readl(phys_to_virt(CONFIG_LP_TIMER_GENERIC_REG));
|
||||
cur_tick = readl(phys_to_virt(CONFIG_LP_TIMER_GENERIC_REG));
|
||||
cur_tick = readl(phys_to_virt(CONFIG_LP_TIMER_GENERIC_HIGH_REG));
|
||||
} while (cur_tick != count_h);
|
||||
|
||||
return (cur_tick << 32) + count_l;
|
||||
|
|
Loading…
Reference in New Issue