powerpc: mpc83xx: Fix timer value calculation

TBU and TBL are specified as two 32-bit registers that form a 64-bit
value, but the calculation only shifted TBU by 16 bits.

Fix this by actually shifting 32 bits.

Reviewed-by: Sinan Akman <sinan@writeme.com>
Signed-off-by: J. Neuschäfer <j.ne@posteo.net>
(cherry picked from commit deb26b6c29)
This commit is contained in:
J. Neuschäfer
2024-12-20 11:37:51 +01:00
committed by Simon Glass
parent 5b6c150e8f
commit a2744cca9a

View File

@@ -201,7 +201,7 @@ static u64 mpc83xx_timer_get_count(struct udevice *dev)
tbl = mftb();
} while (tbu != mftbu());
return (tbu * 0x10000ULL) + tbl;
return (uint64_t)tbu << 32 | tbl;
}
static int mpc83xx_timer_probe(struct udevice *dev)