Changeset bd41ac52 in mainline for uspace/drv/bus/usb/xhci/hc.c


Ignore:
Timestamp:
2018-08-25T22:21:25Z (6 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
cca80a2
Parents:
e2625b1a
Message:

Get rid of sys/time.h

This commit moves the POSIX-like time functionality from libc's
sys/time.h to libposix and introduces C11-like or HelenOS-specific
interfaces to libc.

Specifically, use of sys/time.h, struct timeval, suseconds_t and
gettimeofday is replaced by time.h (C11), struct timespec (C11), usec_t
(HelenOS) and getuptime / getrealtime (HelenOS).

Also attempt to fix the implementation of clock() to return microseconds
(clocks) rather than processor cycles and move it to libc.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/bus/usb/xhci/hc.c

    re2625b1a rbd41ac52  
    229229        hc->max_slots = XHCI_REG_RD(hc->cap_regs, XHCI_CAP_MAX_SLOTS);
    230230
    231         struct timeval tv;
    232         getuptime(&tv);
    233         hc->wrap_time = tv.tv_sec * 1000000 + tv.tv_usec;
     231        struct timespec ts;
     232        getuptime(&ts);
     233        hc->wrap_time = SEC2USEC(ts.tv_sec) + NSEC2USEC(ts.tv_nsec);
    234234        hc->wrap_count = 0;
    235235
     
    591591static errno_t xhci_handle_mfindex_wrap_event(xhci_hc_t *hc, xhci_trb_t *trb)
    592592{
    593         struct timeval tv;
    594         getuptime(&tv);
    595         usb_log_debug("Microframe index wrapped (@%lu.%li, %" PRIu64 " total).",
    596             tv.tv_sec, tv.tv_usec, hc->wrap_count);
    597         hc->wrap_time = ((uint64_t) tv.tv_sec) * 1000000 + ((uint64_t) tv.tv_usec);
     593        struct timespec ts;
     594        getuptime(&ts);
     595        usb_log_debug("Microframe index wrapped (@%lld.%lld, %" PRIu64 " total).",
     596            ts.tv_sec, NSEC2USEC(ts.tv_nsec), hc->wrap_count);
     597        hc->wrap_time = SEC2USEC(ts.tv_sec) + NSEC2USEC(ts.tv_nsec);
    598598        ++hc->wrap_count;
    599599        return EOK;
Note: See TracChangeset for help on using the changeset viewer.