qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v3 3/9] pcnet: remove muldiv64()


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH v3 3/9] pcnet: remove muldiv64()
Date: Fri, 28 Aug 2015 15:12:59 +0100
User-agent: Mutt/1.5.23 (2014-03-12)

On Thu, Aug 27, 2015 at 09:33:01PM +0200, Laurent Vivier wrote:
> Originally, timers were ticks based, and it made sense to
> add ticks to current time to know when to trigger an alarm.
> 
> But since commit:
> 
> 7447545 change all other clock references to use nanosecond resolution 
> accessors
> 
> All timers use nanoseconds and we need to convert ticks to nanoseconds, by
> doing something like:
> 
>     y = muldiv64(x, get_ticks_per_sec(), PCI_FREQUENCY)
> 
> where x is the number of device ticks and y the number of system ticks.
> 
> y is used as nanoseconds in timer functions,
> it works because 1 tick is 1 nanosecond.
> (get_ticks_per_sec() is 10^9)
> 
> But as PCI frequency is 33 MHz, we can also do:
> 
>     y = x * 30; /* 33 MHz PCI period is 30 ns */
> 
> Which is much more simple.
> 
> This implies a 33.333333 MHz PCI frequency,
> but this is correct.
> 
> Signed-off-by: Laurent Vivier <address@hidden>
> ---
> v3: part of "PCI: remove muldiv64()"
>  hw/net/pcnet.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)

Reviewed-by: Stefan Hajnoczi <address@hidden>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]