Deleted Added
full compact
28c28
< __FBSDID("$FreeBSD: head/sys/arm/allwinner/timer.c 245900 2013-01-25 07:21:22Z ganbold $");
---
> __FBSDID("$FreeBSD: head/sys/arm/allwinner/timer.c 247463 2013-02-28 13:46:03Z mav $");
98c98
< struct bintime *, struct bintime *);
---
> sbintime_t first, sbintime_t period);
196,201c196,197
< sc->et.et_min_period.sec = 0;
< sc->et.et_min_period.frac =
< ((0x00000005LLU << 32) / sc->et.et_frequency) << 32;
< sc->et.et_max_period.sec = 0xfffffff0U / sc->et.et_frequency;
< sc->et.et_max_period.frac =
< ((0xfffffffeLLU << 32) / sc->et.et_frequency) << 32;
---
> sc->et.et_min_period = (0x00000005LLU << 32) / sc->et.et_frequency;
> sc->et.et_max_period = (0xfffffffeLLU << 32) / sc->et.et_frequency;
228,229c224,225
< a10_timer_timer_start(struct eventtimer *et, struct bintime *first,
< struct bintime *period)
---
> a10_timer_timer_start(struct eventtimer *et, sbintime_t first,
> sbintime_t period)
237,243c233,239
< sc->sc_period = 0;
<
< if (period != NULL) {
< sc->sc_period = (sc->et.et_frequency * (period->frac >> 32)) >> 32;
< sc->sc_period += sc->et.et_frequency * period->sec;
< }
< if (first == NULL)
---
> if (period != 0)
> sc->sc_period = ((uint32_t)et->et_frequency * period) >> 32;
> else
> sc->sc_period = 0;
> if (first != 0)
> count = ((uint32_t)et->et_frequency * first) >> 32;
> else
245,249d240
< else {
< count = (sc->et.et_frequency * (first->frac >> 32)) >> 32;
< if (first->sec != 0)
< count += sc->et.et_frequency * first->sec;
< }
256c247
< if (first == NULL) {
---
> if (period != 0) {