Changeset d3a1ad58 in mainline


Ignore:
Timestamp:
2013-01-27T19:14:19Z (11 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
11e9e613
Parents:
d2cfe72
Message:

usbmid: Add endpoint management forwarding.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/bus/usb/usbmid/usbmid.c

    rd2cfe72 rd3a1ad58  
    8989}
    9090
     91static int usb_iface_register_endpoint(ddf_fun_t *fun, usb_endpoint_t ep,
     92    usb_transfer_type_t type, usb_direction_t dir, size_t mps, unsigned inter)
     93{
     94        usb_device_t *usb_dev = usb_device_get(ddf_fun_get_dev(fun));
     95        assert(usb_dev);
     96        async_exch_t *exch = usb_device_bus_exchange_begin(usb_dev);
     97        if (!exch)
     98                return ENOMEM;
     99        const int ret = usb_register_endpoint(exch, ep, type, dir, mps, inter);
     100        usb_device_bus_exchange_end(exch);
     101        return ret;
     102}
     103
     104static int usb_iface_unregister_endpoint(ddf_fun_t *fun, usb_endpoint_t ep,
     105    usb_direction_t dir)
     106{
     107        usb_device_t *usb_dev = usb_device_get(ddf_fun_get_dev(fun));
     108        assert(usb_dev);
     109        async_exch_t *exch = usb_device_bus_exchange_begin(usb_dev);
     110        if (!exch)
     111                return ENOMEM;
     112        const int ret = usb_unregister_endpoint(exch, ep, dir);
     113        usb_device_bus_exchange_end(exch);
     114        return ret;
     115}
     116
    91117/** DDF interface of the child - interface function. */
    92118static usb_iface_t child_usb_iface = {
     
    94120        .get_my_address = usb_iface_device_address,
    95121        .get_my_interface = usb_iface_iface,
     122        .register_endpoint = usb_iface_register_endpoint,
     123        .unregister_endpoint = usb_iface_unregister_endpoint,
    96124};
    97125
Note: See TracChangeset for help on using the changeset viewer.