Ignore:
File:
1 edited

Legend:

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

    rec59693 rb36e5de2  
    4040#include "driver.h"
    4141#include <usb/usb.h>
     42#include <bool.h>
    4243
    4344
     
    5253 *   - argument #1 is target address
    5354 *   - argument #2 is target endpoint
    54  *   - argument #3 is buffer size
     55 *   - argument #3 is max packet size of the endpoint
    5556 * - this call is immediately followed by IPC data write (from caller)
    5657 * - the initial call (and the whole transaction) is answer after the
     
    6566 *   - argument #1 is target address
    6667 *   - argument #2 is target endpoint
    67  *   - argument #3 is buffer size
     68 *   - argument #3 is max packet size of the endpoint
    6869 * - this call is immediately followed by IPC data read (async version)
    6970 * - the call is not answered until the device returns some data (or until
     
    152153        IPC_M_USBHC_INTERRUPT_IN,
    153154
    154 
    155         /** Start WRITE control transfer.
    156          * See explanation at usb_iface_funcs_t (OUT transaction).
    157          */
    158         IPC_M_USBHC_CONTROL_WRITE_SETUP,
    159 
    160         /** Send control-transfer data to device.
    161          * See explanation at usb_iface_funcs_t (OUT transaction).
    162          */
    163         IPC_M_USBHC_CONTROL_WRITE_DATA,
    164 
    165         /** Terminate WRITE control transfer.
    166          * See explanation at usb_iface_funcs_t (NO-DATA transaction).
    167          */
    168         IPC_M_USBHC_CONTROL_WRITE_STATUS,
    169 
    170 
    171 
    172         /** Start READ control transfer.
    173          * See explanation at usb_iface_funcs_t (OUT transaction).
    174          */
    175         IPC_M_USBHC_CONTROL_READ_SETUP,
    176 
    177         /** Get control-transfer data from device.
    178          * See explanation at usb_iface_funcs_t (IN transaction).
    179          */
    180         IPC_M_USBHC_CONTROL_READ_DATA,
    181 
    182         /** Terminate READ control transfer.
    183          * See explanation at usb_iface_funcs_t (NO-DATA transaction).
    184          */
    185         IPC_M_USBHC_CONTROL_READ_STATUS,
    186 
    187155        /** Issue control WRITE transfer.
    188156         * See explanation at usb_iface_funcs_t (OUT transaction) for
     
    193161        IPC_M_USBHC_CONTROL_WRITE,
    194162
    195         /** Issue control WRITE transfer.
     163        /** Issue control READ transfer.
    196164         * See explanation at usb_iface_funcs_t (IN transaction) for
    197165         * call parameters.
    198          * This call is immediately followed by IPC data read from the caller
    199          * (setup packet).
    200          * Actual data are retrieved through IPC_M_USBHC_GET_BUFFER.
     166         * This call is immediately followed by IPC data write from the caller
     167         * (setup packet) and IPC data read (buffer that was read).
    201168         */
    202169        IPC_M_USBHC_CONTROL_READ,
     
    231198        int (*tell_address)(device_t *, devman_handle_t, usb_address_t *);
    232199
    233         int (*reserve_default_address)(device_t *);
     200        int (*reserve_default_address)(device_t *, usb_speed_t);
    234201        int (*release_default_address)(device_t *);
    235         int (*request_address)(device_t *, usb_address_t *);
     202        int (*request_address)(device_t *, usb_speed_t, usb_address_t *);
    236203        int (*bind_address)(device_t *, usb_address_t, devman_handle_t);
    237204        int (*release_address)(device_t *, usb_address_t);
     
    239206        usbhc_iface_transfer_out_t interrupt_out;
    240207        usbhc_iface_transfer_in_t interrupt_in;
    241 
    242         usbhc_iface_transfer_setup_t control_write_setup;
    243         usbhc_iface_transfer_out_t control_write_data;
    244         int (*control_write_status)(device_t *, usb_target_t,
    245             usbhc_iface_transfer_in_callback_t, void *);
    246 
    247         usbhc_iface_transfer_setup_t control_read_setup;
    248         usbhc_iface_transfer_in_t control_read_data;
    249         int (*control_read_status)(device_t *, usb_target_t,
    250             usbhc_iface_transfer_out_callback_t, void *);
    251208
    252209        int (*control_write)(device_t *, usb_target_t,
Note: See TracChangeset for help on using the changeset viewer.