Changeset 0a46c41e in mainline


Ignore:
Timestamp:
2011-02-18T21:09:27Z (13 years ago)
Author:
Vojtech Horky <vojtechhorky@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
745d2ad
Parents:
fbf0589
Message:

Add bulk transfers to libusb

Location:
uspace/lib
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/drv/generic/remote_usbhc.c

    rfbf0589 r0a46c41e  
    4646static void remote_usbhc_interrupt_out(device_t *, void *, ipc_callid_t, ipc_call_t *);
    4747static void remote_usbhc_interrupt_in(device_t *, void *, ipc_callid_t, ipc_call_t *);
     48static void remote_usbhc_bulk_out(device_t *, void *, ipc_callid_t, ipc_call_t *);
     49static void remote_usbhc_bulk_in(device_t *, void *, ipc_callid_t, ipc_call_t *);
    4850static void remote_usbhc_control_write(device_t *, void *, ipc_callid_t, ipc_call_t *);
    4951static void remote_usbhc_control_read(device_t *, void *, ipc_callid_t, ipc_call_t *);
     
    6971        remote_usbhc_interrupt_in,
    7072
     73        remote_usbhc_bulk_out,
     74        remote_usbhc_bulk_in,
     75
    7176        remote_usbhc_control_write,
    7277        remote_usbhc_control_read
     
    389394        return remote_usbhc_in_transfer(device, callid, call,
    390395            usb_iface->interrupt_in);
     396}
     397
     398void remote_usbhc_bulk_out(device_t *device, void *iface,
     399    ipc_callid_t callid, ipc_call_t *call)
     400{
     401        usbhc_iface_t *usb_iface = (usbhc_iface_t *) iface;
     402        assert(usb_iface != NULL);
     403
     404        return remote_usbhc_out_transfer(device, callid, call,
     405            usb_iface->bulk_out);
     406}
     407
     408void remote_usbhc_bulk_in(device_t *device, void *iface,
     409    ipc_callid_t callid, ipc_call_t *call)
     410{
     411        usbhc_iface_t *usb_iface = (usbhc_iface_t *) iface;
     412        assert(usb_iface != NULL);
     413
     414        return remote_usbhc_in_transfer(device, callid, call,
     415            usb_iface->bulk_in);
    391416}
    392417
  • uspace/lib/drv/include/usbhc_iface.h

    rfbf0589 r0a46c41e  
    153153        IPC_M_USBHC_INTERRUPT_IN,
    154154
     155        /** Send bulk data to device.
     156         * See explanation at usb_iface_funcs_t (OUT transaction).
     157         */
     158        IPC_M_USBHC_BULK_OUT,
     159
     160        /** Get bulk data from device.
     161         * See explanation at usb_iface_funcs_t (IN transaction).
     162         */
     163        IPC_M_USBHC_BULK_IN,
     164
    155165        /** Issue control WRITE transfer.
    156166         * See explanation at usb_iface_funcs_t (OUT transaction) for
     
    207217        usbhc_iface_transfer_in_t interrupt_in;
    208218
     219        usbhc_iface_transfer_out_t bulk_out;
     220        usbhc_iface_transfer_in_t bulk_in;
     221
    209222        int (*control_write)(device_t *, usb_target_t,
    210223            size_t,
  • uspace/lib/usb/src/pipesio.c

    rfbf0589 r0a46c41e  
    7171                        ipc_method = IPC_M_USBHC_INTERRUPT_IN;
    7272                        break;
     73                case USB_TRANSFER_BULK:
     74                        ipc_method = IPC_M_USBHC_BULK_IN;
     75                        break;
    7376                default:
    7477                        return ENOTSUP;
     
    194197                case USB_TRANSFER_INTERRUPT:
    195198                        ipc_method = IPC_M_USBHC_INTERRUPT_OUT;
     199                        break;
     200                case USB_TRANSFER_BULK:
     201                        ipc_method = IPC_M_USBHC_BULK_OUT;
    196202                        break;
    197203                default:
Note: See TracChangeset for help on using the changeset viewer.