always call the class driver init function. This is needed because they are called...
[kugel-rb.git] / firmware / usbstack / usb_hid.h
blobbce6943a4d7026db5203e2956f6e825a07cc12a5
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
10 * Copyright (C) 2009 by Tomer Shalev
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
20 ****************************************************************************/
21 #ifndef USB_HID_H
22 #define USB_HID_H
24 #include "usb_ch9.h"
25 #include "usb_hid_usage_tables.h"
27 int usb_hid_request_endpoints(struct usb_class_driver *drv);
28 int usb_hid_set_first_interface(int interface);
29 int usb_hid_get_config_descriptor(unsigned char *dest, int max_packet_size);
30 void usb_hid_init_connection(void);
31 void usb_hid_init(void);
32 void usb_hid_disconnect(void);
33 void usb_hid_transfer_complete(int ep, int dir, int status, int length);
34 bool usb_hid_control_request(struct usb_ctrlrequest* req, unsigned char* dest);
36 void usb_hid_send_consumer_usage(consumer_usage_page_t id);
38 #endif