Changeset 3cdaa7f in mainline for uspace/lib/drv/include/usbhc_iface.h


Ignore:
Timestamp:
2018-01-20T02:02:37Z (8 years ago)
Author:
Ondřej Hlavatý <aearsis@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c280d7e
Parents:
5ff5dc5
Message:

libdrv: usb structures shall be part of the usbhc iface

File:
1 edited

Legend:

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

    r5ff5dc5 r3cdaa7f  
    4141
    4242#include "ddf/driver.h"
    43 #include "usb_iface.h"
    4443#include <async.h>
     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        /** USB 3.0 super speed (5Gbits/s). */
     54        USB_SPEED_SUPER,
     55        /** Psuedo-speed serving as a boundary. */
     56        USB_SPEED_MAX
     57} usb_speed_t;
     58
     59/** USB endpoint number type.
     60 * Negative values could be used to indicate error.
     61 */
     62typedef int16_t usb_endpoint_t;
     63
     64/** USB address type.
     65 * Negative values could be used to indicate error.
     66 */
     67typedef int16_t usb_address_t;
     68
     69/** USB transfer type. */
     70typedef enum {
     71        USB_TRANSFER_CONTROL = 0,
     72        USB_TRANSFER_ISOCHRONOUS = 1,
     73        USB_TRANSFER_BULK = 2,
     74        USB_TRANSFER_INTERRUPT = 3
     75} usb_transfer_type_t;
     76
     77/** USB data transfer direction. */
     78typedef enum {
     79        USB_DIRECTION_IN,
     80        USB_DIRECTION_OUT,
     81        USB_DIRECTION_BOTH
     82} usb_direction_t;
     83
     84/** USB complete address type.
     85 * Pair address + endpoint is identification of transaction recipient.
     86 */
     87typedef union {
     88        struct {
     89                usb_address_t address;
     90                usb_endpoint_t endpoint;
     91                uint32_t stream;
     92        } __attribute__((packed));
     93        uint64_t packed;
     94} usb_target_t;
    4595
    4696typedef struct usb_pipe_desc {
Note: See TracChangeset for help on using the changeset viewer.