Changeset 4c25c2fb in mainline for uspace/lib/usbhost/src/bus.c


Ignore:
Timestamp:
2018-01-15T15:02:57Z (7 years ago)
Author:
Ondřej Hlavatý <aearsis@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
745a3f1
Parents:
01d9707
Message:

usbhost: move managing TT to the library

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/usbhost/src/bus.c

    r01d9707 r4c25c2fb  
    9797
    9898/**
     99 * Setup devices Transaction Translation.
     100 *
     101 * This applies for Low/Full speed devices under High speed hub only. Other
     102 * devices just inherit TT from the hub.
     103 *
     104 * Roothub must be handled specially.
     105 */
     106static void device_setup_tt(device_t *dev)
     107{
     108        if (!dev->hub)
     109                return;
     110
     111        if (dev->hub->speed == USB_SPEED_HIGH && usb_speed_is_11(dev->speed)) {
     112                /* For LS devices under HS hub */
     113                dev->tt.dev = dev->hub;
     114                dev->tt.port = dev->port;
     115        }
     116        else {
     117                /* Inherit hub's TT */
     118                dev->tt = dev->hub->tt;
     119        }
     120}
     121
     122/**
    99123 * Invoke the device_enumerate bus operation.
    100124 *
     
    111135        if (dev->online)
    112136                return EINVAL;
     137
     138        device_setup_tt(dev);
    113139
    114140        const int r = ops->device_enumerate(dev);
Note: See TracChangeset for help on using the changeset viewer.