Changeset c7b5826 in mainline for uspace/drv/usbhid/usbhid.c


Ignore:
Timestamp:
2011-05-18T09:34:56Z (13 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
33d19a7
Parents:
d736fe38 (diff), b2995c3 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Development branch changes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/usbhid/usbhid.c

    rd736fe38 rc7b5826  
    3737#include <usb/debug.h>
    3838#include <usb/classes/classes.h>
    39 #include <usb/classes/hid.h>
    40 #include <usb/classes/hidparser.h>
    41 #include <usb/classes/hidreport.h>
    42 #include <usb/classes/hidreq.h>
     39#include <usb/hid/hid.h>
     40#include <usb/hid/hidparser.h>
     41#include <usb/hid/hidreport.h>
     42#include <usb/hid/request.h>
    4343#include <errno.h>
    4444#include <str_error.h>
     
    203203       
    204204        usb_log_debug("Compare flags: %d\n", mapping->compare);
    205         size_t size = usb_hid_report_input_length(hid_dev->report, usage_path,
    206             mapping->compare);
     205//      size_t size = usb_hid_report_size(hid_dev->report, 0,
     206//          USB_HID_REPORT_TYPE_INPUT);
     207        size_t size = 0;
     208        usb_hid_report_field_t *field = usb_hid_report_get_sibling (hid_dev->report,
     209                NULL, usage_path, mapping->compare, USB_HID_REPORT_TYPE_INPUT);
     210        while(field != NULL) {
     211                size++;
     212                field = usb_hid_report_get_sibling (hid_dev->report,
     213                                        field, usage_path, mapping->compare,
     214                            USB_HID_REPORT_TYPE_INPUT);
     215        }
     216       
    207217        usb_log_debug("Size of the input report: %zuB\n", size);
    208        
    209218        usb_hid_report_path_free(usage_path);
    210219       
     
    457466                        if (hid_dev->subdrivers[i].init != NULL) {
    458467                                usb_log_debug("Initializing subdriver %d.\n",i);
    459                                 rc = hid_dev->subdrivers[i].init(hid_dev);
     468                                rc = hid_dev->subdrivers[i].init(hid_dev,
     469                                    &hid_dev->subdrivers[i].data);
    460470                                if (rc != EOK) {
    461471                                        usb_log_warning("Failed to initialize"
     
    522532        for (i = 0; i < hid_dev->subdriver_count; ++i) {
    523533                if (hid_dev->subdrivers[i].poll != NULL
    524                     && hid_dev->subdrivers[i].poll(hid_dev, buffer,
    525                     buffer_size)) {
     534                    && hid_dev->subdrivers[i].poll(hid_dev,
     535                        hid_dev->subdrivers[i].data, buffer, buffer_size)) {
    526536                        cont = true;
    527537                }
     
    546556        for (i = 0; i < hid_dev->subdriver_count; ++i) {
    547557                if (hid_dev->subdrivers[i].poll_end != NULL) {
    548                         hid_dev->subdrivers[i].poll_end(hid_dev, reason);
     558                        hid_dev->subdrivers[i].poll_end(hid_dev,
     559                            hid_dev->subdrivers[i].data, reason);
    549560                }
    550561        }
     
    627638        for (i = 0; i < (*hid_dev)->subdriver_count; ++i) {
    628639                if ((*hid_dev)->subdrivers[i].deinit != NULL) {
    629                         (*hid_dev)->subdrivers[i].deinit(*hid_dev);
     640                        (*hid_dev)->subdrivers[i].deinit(*hid_dev,
     641                            (*hid_dev)->subdrivers[i].data);
    630642                }
    631643        }
Note: See TracChangeset for help on using the changeset viewer.