Messages in this thread | | | Date | Mon, 8 Apr 2019 19:04:05 -0700 | From | Ricardo Neri <> | Subject | Re: [RFC PATCH v2 03/14] x86/hpet: Calculate ticks-per-second in a separate function |
| |
On Tue, Mar 26, 2019 at 10:03:02PM +0100, Thomas Gleixner wrote: > On Wed, 27 Feb 2019, Ricardo Neri wrote: > > int hpet_alloc(struct hpet_data *hdp) > > { > > u64 cap, mcfg; > > @@ -845,7 +868,6 @@ int hpet_alloc(struct hpet_data *hdp) > > size_t siz; > > struct hpet __iomem *hpet; > > static struct hpets *last; > > - unsigned long period; > > unsigned long long temp; > > u32 remainder; > > > > @@ -881,6 +903,8 @@ int hpet_alloc(struct hpet_data *hdp) > > > > cap = readq(&hpet->hpet_cap); > > > > + temp = hpet_get_ticks_per_sec(cap); > > Just putting stuff to random places does not make the code any better.
This seems to not be needed. I'll remove it and directly save the result in hpetp->hp_tick_freq;
> > > ntimer = ((cap & HPET_NUM_TIM_CAP_MASK) >> HPET_NUM_TIM_CAP_SHIFT) + 1; > > > > if (hpetp->hp_ntimer != ntimer) { > > @@ -897,11 +921,6 @@ int hpet_alloc(struct hpet_data *hdp) > > > > last = hpetp; > > > > - period = (cap & HPET_COUNTER_CLK_PERIOD_MASK) >> > > - HPET_COUNTER_CLK_PERIOD_SHIFT; /* fs, 10^-15 */ > > - temp = 1000000000000000uLL; /* 10^15 femtoseconds per second */ > > - temp += period >> 1; /* round */ > > - do_div(temp, period); > > hpetp->hp_tick_freq = temp; /* ticks per second */ > > What's wrong with the obvious: > > hpetp->hp_tick_freq = hpet_get_ticks_per_sec(cap); > > Hmm?
Nothing wrong. I'll implement this change.
Thanks and BR, Ricardo
| |