Changeset 2a6e2358 in mainline for uspace/lib/usbvirt


Ignore:
Timestamp:
2013-01-05T18:23:25Z (12 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
b997e7b
Parents:
c9399c0
Message:

libusbvirt: Make request creation macros available in header.

Location:
uspace/lib/usbvirt
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/usbvirt/include/usbvirt/device.h

    rc9399c0 r2a6e2358  
    4141#include <async.h>
    4242
     43
    4344/** Maximum number of endpoints supported by virtual USB. */
    4445#define USBVIRT_ENDPOINT_MAX 16
     
    8788    const usb_device_request_setup_packet_t *setup_packet,
    8889    uint8_t *data, size_t *act_data_size);
     90
     91/** Create a class request to get data from device
     92 *
     93 * @param rec Request recipient.
     94 * @param req Request code.
     95 */
     96#define CLASS_REQ_IN(rec, req) \
     97        .request_type = SETUP_REQUEST_TO_HOST(USB_REQUEST_TYPE_CLASS, rec), \
     98        .request = req
     99
     100/** Create a class request to send data to device
     101 *
     102 * @param rec Request recipient.
     103 * @param req Request code.
     104 */
     105#define CLASS_REQ_OUT(rec, req) \
     106        .request_type = SETUP_REQUEST_TO_DEVICE(USB_REQUEST_TYPE_CLASS, rec), \
     107        .request = req
     108
     109/** Create a standard request to get data from device
     110 *
     111 * @param rec Request recipient.
     112 * @param req Request code.
     113 */
     114#define STD_REQ_IN(rec, req) \
     115        .request_type = SETUP_REQUEST_TO_HOST(USB_REQUEST_TYPE_STANDARD, rec), \
     116        .request = req
     117
     118/** Create a standard request to send data to device
     119 *
     120 * @param rec Request recipient.
     121 * @param req Request code.
     122 */
     123#define STD_REQ_OUT(rec, req) \
     124        .request_type = SETUP_REQUEST_TO_DEVICE(USB_REQUEST_TYPE_STANDARD, rec), \
     125        .request = req
    89126
    90127/** Callback for control request on a virtual USB device.
  • uspace/lib/usbvirt/src/stdreq.c

    rc9399c0 r2a6e2358  
    192192usbvirt_control_request_handler_t library_handlers[] = {
    193193        {
    194                 .request_type = SETUP_REQUEST_TO_DEVICE(USB_REQUEST_TYPE_STANDARD, USB_REQUEST_RECIPIENT_DEVICE),
    195                 .request = USB_DEVREQ_SET_ADDRESS,
     194                STD_REQ_OUT(USB_REQUEST_RECIPIENT_DEVICE, USB_DEVREQ_SET_ADDRESS),
    196195                .name = "SetAddress",
    197196                .callback = req_set_address
    198197        },
    199198        {
    200                 .request_type = SETUP_REQUEST_TO_HOST(USB_REQUEST_TYPE_STANDARD, USB_REQUEST_RECIPIENT_DEVICE),
    201                 .request = USB_DEVREQ_GET_DESCRIPTOR,
     199                STD_REQ_IN(USB_REQUEST_RECIPIENT_DEVICE, USB_DEVREQ_GET_DESCRIPTOR),
    202200                .name = "GetDescriptor",
    203201                .callback = req_get_descriptor
    204202        },
    205203        {
    206                 .request_type = SETUP_REQUEST_TO_DEVICE(USB_REQUEST_TYPE_STANDARD, USB_REQUEST_RECIPIENT_DEVICE),
    207                 .request = USB_DEVREQ_SET_CONFIGURATION,
     204                STD_REQ_OUT(USB_REQUEST_RECIPIENT_DEVICE, USB_DEVREQ_SET_CONFIGURATION),
    208205                .name = "SetConfiguration",
    209206                .callback = req_set_configuration
Note: See TracChangeset for help on using the changeset viewer.