Changeset d4da860 in mainline for uspace/lib/drv/include/usb_iface.h


Ignore:
Timestamp:
2017-10-27T00:20:51Z (6 years ago)
Author:
jzr <zarevucky.jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
0798689, 584121d
Parents:
37e8c4a
Message:

Break circular dependency between libdrv and libusb.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/drv/include/usb_iface.h

    r37e8c4a rd4da860  
    4040#include "ddf/driver.h"
    4141#include <async.h>
    42 #include <usb/usb.h>
    4342
    4443typedef async_sess_t usb_dev_session_t;
     44
     45/** USB speeds. */
     46typedef enum {
     47        /** USB 1.1 low speed (1.5Mbits/s). */
     48        USB_SPEED_LOW,
     49        /** USB 1.1 full speed (12Mbits/s). */
     50        USB_SPEED_FULL,
     51        /** USB 2.0 high speed (480Mbits/s). */
     52        USB_SPEED_HIGH,
     53        /** Psuedo-speed serving as a boundary. */
     54        USB_SPEED_MAX
     55} usb_speed_t;
     56
     57/** USB endpoint number type.
     58 * Negative values could be used to indicate error.
     59 */
     60typedef int16_t usb_endpoint_t;
     61
     62/** USB address type.
     63 * Negative values could be used to indicate error.
     64 */
     65typedef int16_t usb_address_t;
     66
     67/** USB transfer type. */
     68typedef enum {
     69        USB_TRANSFER_CONTROL = 0,
     70        USB_TRANSFER_ISOCHRONOUS = 1,
     71        USB_TRANSFER_BULK = 2,
     72        USB_TRANSFER_INTERRUPT = 3
     73} usb_transfer_type_t;
     74
     75/** USB data transfer direction. */
     76typedef enum {
     77        USB_DIRECTION_IN,
     78        USB_DIRECTION_OUT,
     79        USB_DIRECTION_BOTH
     80} usb_direction_t;
     81
     82/** USB complete address type.
     83 * Pair address + endpoint is identification of transaction recipient.
     84 */
     85typedef union {
     86        struct {
     87                usb_address_t address;
     88                usb_endpoint_t endpoint;
     89        } __attribute__((packed));
     90        uint32_t packed;
     91} usb_target_t;
    4592
    4693extern usb_dev_session_t *usb_dev_connect(devman_handle_t);
Note: See TracChangeset for help on using the changeset viewer.