mirror of
https://github.com/torvalds/linux.git
synced 2026-06-07 22:14:04 +02:00
rtc: rtc-rk-timer: Fix time64 to tick convert
There's an u64 to int convert which may cause overflow. Change-Id: I7feb46e501828666353506c37a1f35db39ff45f7 Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
This commit is contained in:
parent
d96ea9d580
commit
cab1edc0e8
|
|
@ -76,11 +76,6 @@ static inline u64 tick_to_sec(struct rk_timer_rtc *rk_timer_rtc, u64 tick)
|
|||
return tick;
|
||||
}
|
||||
|
||||
static inline u64 sec_to_tick(struct rk_timer_rtc *rk_timer_rtc, int sec)
|
||||
{
|
||||
return sec * rk_timer_rtc->freq;
|
||||
}
|
||||
|
||||
static inline u64 ms_to_tick(struct rk_timer_rtc *rk_timer_rtc, int ms)
|
||||
{
|
||||
return ms * rk_timer_rtc->freq / 1000;
|
||||
|
|
@ -93,7 +88,7 @@ static inline u64 tick_to_time64(struct rk_timer_rtc *rk_timer_rtc, u64 tick)
|
|||
|
||||
static inline u64 time64_to_tick(struct rk_timer_rtc *rk_timer_rtc, u64 time)
|
||||
{
|
||||
return sec_to_tick(rk_timer_rtc, time - rk_timer_rtc->timebase);
|
||||
return (time - rk_timer_rtc->timebase) * rk_timer_rtc->freq;
|
||||
}
|
||||
|
||||
static inline int rk_timer_rtc_write64(struct rk_timer_rtc *rk_timer_rtc,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user