Changeset 266fcd8 in mainline for uspace/lib


Ignore:
Timestamp:
2011-05-27T09:27:02Z (14 years ago)
Author:
Lubos Slovak <lubos.slovak@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
81d2f6a
Parents:
3c9eb46
Message:

Sending event number in get_event() interface + control in mkbd.

Location:
uspace/lib
Files:
4 edited

Legend:

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

    r3c9eb46 r266fcd8  
    130130
    131131        size_t act_length;
    132         rc = hid_iface->get_event(fun, data, len, &act_length, flags);
     132        int event_nr;
     133        rc = hid_iface->get_event(fun, data, len, &act_length, &event_nr, flags);
    133134        if (rc != EOK) {
    134135                free(data);
     
    147148        free(data);
    148149
    149         async_answer_0(callid, EOK);
     150        async_answer_1(callid, EOK, event_nr);
    150151}
    151152
  • uspace/lib/drv/include/usbhid_iface.h

    r3c9eb46 r266fcd8  
    109109         */
    110110        int (*get_event)(ddf_fun_t *fun, uint8_t *buffer, size_t size,
    111             size_t *act_size, unsigned int flags);
     111            size_t *act_size, int *event_nr, unsigned int flags);
    112112       
    113113        /** Get size of the report descriptor in bytes.
  • uspace/lib/usbhid/include/usb/hid/iface.h

    r3c9eb46 r266fcd8  
    3939
    4040int usbhid_dev_get_event_length(int, size_t *);
    41 int usbhid_dev_get_event(int, uint8_t *, size_t, size_t *,
     41int usbhid_dev_get_event(int, uint8_t *, size_t, size_t *, int *,
    4242    unsigned int);
    4343int usbhid_dev_get_report_descriptor_length(int, size_t *);
  • uspace/lib/usbhid/src/hidiface.c

    r3c9eb46 r266fcd8  
    7777 */
    7878int usbhid_dev_get_event(int dev_phone, uint8_t *buf,
    79     size_t size, size_t *actual_size, unsigned int flags)
     79    size_t size, size_t *actual_size, int *event_nr, unsigned int flags)
    8080{
    8181        if (dev_phone < 0) {
     
    9999        }
    100100
     101        ipc_call_t opening_request_call;
    101102        aid_t opening_request = async_send_2(dev_phone,
    102103            DEV_IFACE_ID(USBHID_DEV_IFACE), IPC_M_USBHID_GET_EVENT,
    103             flags, NULL);
     104            flags, &opening_request_call);
    104105        if (opening_request == 0) {
    105106                free(buffer);
     
    143144                *actual_size = act_size;
    144145        }
     146       
     147        if (event_nr != NULL) {
     148                *event_nr = IPC_GET_ARG1(opening_request_call);
     149        }
    145150
    146151        return EOK;
Note: See TracChangeset for help on using the changeset viewer.