Fix html manuals for targets with remote keymaps. For some reason using an \opt...
[kugel-rb/myfork.git] / firmware / usbstack / usb_charging_only.c
blob8dd9fdf7422255a7ff9f6855696b396421e785c4
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id: $
10 * Copyright (C) 2008 by Frank Gevaerts
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 #include "string.h"
22 #include "system.h"
23 #include "usb_core.h"
24 #include "usb_drv.h"
25 #include "kernel.h"
26 #include "usb_charging_only.h"
27 #include "usb_class_driver.h"
29 //#define LOGF_ENABLE
30 #include "logf.h"
32 /* charging_only interface */
33 static struct usb_interface_descriptor __attribute__((aligned(2)))
34 interface_descriptor =
36 .bLength = sizeof(struct usb_interface_descriptor),
37 .bDescriptorType = USB_DT_INTERFACE,
38 .bInterfaceNumber = 0,
39 .bAlternateSetting = 0,
40 .bNumEndpoints = 0,
41 .bInterfaceClass = USB_CLASS_VENDOR_SPEC,
42 .bInterfaceSubClass = 0,
43 .bInterfaceProtocol = 0,
44 .iInterface = 0
47 static int usb_interface;
49 int usb_charging_only_request_endpoints(struct usb_class_driver *drv)
51 (void) drv;
52 return 0;
55 int usb_charging_only_set_first_interface(int interface)
57 usb_interface = interface;
58 return interface + 1;
61 int usb_charging_only_get_config_descriptor(unsigned char *dest,int max_packet_size)
63 (void)max_packet_size;
64 unsigned char *orig_dest = dest;
66 interface_descriptor.bInterfaceNumber=usb_interface;
67 PACK_DATA(dest, interface_descriptor);
69 return (dest-orig_dest);