• Deepa Dinamani's avatar
    usb: misc: usbtest: Remove timeval usage · 75f5c434
    Deepa Dinamani authored
    timeval is deprecated and not y2038 safe.  Its size also changes according
    to 32 bit/ 64 bit compilation.  Replace it with 32 and 64 bit versions of
    its individual fields, giving two ioctls with different code values.
    The two ioctls are necessary to maintain the 32 bit and 64 bit userspace
    compatibility with a 64/32 bit kernel.
    
    Change unsigned to __u32 types for a definitive userspace interface.
    This is in accordance with the psABI that the unsigned type is always
    32 bits.
    
    Also use motonic timer instead of real time to ensure positive delta
    values.
    
    Refactor usbtest_ioctl for readability to isolate the handling of the
    testing timing measurement.
    
    The official testusb userspace tool can be changed in a separate patch
    to reflect the __u32 changes as well. It can use the usbtest_param_32
    struct, since 32 bit seconds is long enough for test durations.
    Reviewed-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarDeepa Dinamani <deepa.kernel@gmail.com>
    Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
    75f5c434
usbtest.c 75.5 KB