summaryrefslogtreecommitdiffstats
path: root/src/keyboard.c
diff options
context:
space:
mode:
authorroot <root@lab2.panaceas.james.local>2014-11-02 18:17:44 +0000
committerroot <root@lab2.panaceas.james.local>2014-11-02 18:17:44 +0000
commit12287ff0a55f929bf840dcb4780d3f77b862c434 (patch)
tree46632674f393249e7cd74eacd7a4da00ccec540f /src/keyboard.c
parent479e719a64d75374f00438498cf91ba2601a63f1 (diff)
downloadstm32_usb_kvm-12287ff0a55f929bf840dcb4780d3f77b862c434.tar.gz
stm32_usb_kvm-12287ff0a55f929bf840dcb4780d3f77b862c434.tar.bz2
stm32_usb_kvm-12287ff0a55f929bf840dcb4780d3f77b862c434.zip
fish
Diffstat (limited to 'src/keyboard.c')
-rw-r--r--src/keyboard.c140
1 files changed, 0 insertions, 140 deletions
diff --git a/src/keyboard.c b/src/keyboard.c
deleted file mode 100644
index e9046a3..0000000
--- a/src/keyboard.c
+++ /dev/null
@@ -1,140 +0,0 @@
-#include "project.h"
-
-#if 0
-static const uint8_t keyboard_report_descriptor[] = {
- 0x05, 0x01, /* USAGE_PAGE (Generic Desktop) */
- 0x09, 0x01, /* USAGE (Keyboard */
- 0xa1, 0x01, /* COLLECTION (Application) */
- 0x05, 0x07, /* USAGE_PAGE (Key Codes) */
- 0x19, 0xe0, /* USAGE_MINIMUM (Control Left) */
- 0x29, 0xe7, /* USAGE_MAXIMUM (GUI Right) */
- 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
- 0x25, 0x01, /* LOGICAL_MAXIMUM (1) */
- 0x75, 0x01, /* REPORT_SIZE (1) */
- 0x95, 0x08, /* REPORT_COUNT (8) */
- 0x81, 0x02, /* INPUT (Data,Var,Abs) */
- 0x95, 0x01, /* REPORT_COUNT (1) */
- 0x75, 0x08, /* REPORT_SIZE (8) */
- 0x81, 0x01, /* INPUT (Cnst,Ary,Abs) */
- 0x95, 0x05, /* REPORT_COUNT (5) */
- 0x75, 0x01, /* REPORT_SIZE (1) */
-#if 0
- 0x05, 0x08, /* USAGE_PAGE (LEDs) */
- 0x19, 0x01, /* USAGE_MINIMUM (NumLock) */
- 0x29, 0x05, /* USAGE_MAXIMUM (Kana) */
- 0x ? ?, 0x02, /* OUTPUT (Data,Var,Abs) */
- 0x95, 0x01, /* REPORT_COUNT (1) */
- 0x75, 0x03, /* REPORT_SIZE (3) */
- 0x ? ?, 0x01, /* OUTPUT (Cnst,Ary,Abs) */
- 0x95, 0x06, /* REPORT_COUNT (6) */
- 0x75, 0x03, /* REPORT_SIZE (8) */
- 0x15, 0x00, /* LOGICAL_MINIMUM (0) */
- 0x25, 0xff, 0x00, /*LOGICAL_MAXIMUM (255) */
-#endif
- 0x05, 0x07, /* USAGE_PAGE (Key Codes) */
- 0x19, 0x00, /* USAGE_MINIMUM (?) */
- 0x29, 0x98, /* USAGE_MAXIMUM (LANG 9) */
- 0xc0 /* END_COLLECTION */
-};
-#endif
-
-static const uint8_t keyboard_report_descriptor[] = {
- 0x05, 0x01, /* Usage Page (Generic Desktop) */
- 0x09, 0x06, /* Usage (Keyboard) */
- 0xA1, 0x01, /* Collection (Application) */
- 0x05, 0x07, /* Usage page (Key Codes) */
- 0x19, 0xE0, /* Usage minimum (224) */
- 0x29, 0xE7, /* Usage maximum (231) */
- 0x15, 0x00, /* Logical minimum (0) */
- 0x25, 0x01, /* Logical maximum (1) */
- 0x75, 0x01, /* Report size (1) */
- 0x95, 0x08, /* Report count (8) */
- 0x81, 0x02, /* Input (data, variable, absolute) */
- 0x95, 0x01, /* Report count (1) */
- 0x75, 0x08, /* Report size (8) */
- 0x81, 0x01, /* Input (constant) */
- 0x95, 0x06, /* Report count (6) */
- 0x75, 0x08, /* Report size (8) */
- 0x15, 0x00, /* Logical minimum (0) */
- 0x25, 0x65, /* Logical maximum (101) */
- 0x05, 0x07, /* Usage page (key codes) */
- 0x19, 0x00, /* Usage minimum (0) */
- 0x2A, 0xff, 0x00, /* Usage maximum (255) */
-// 0x29, 0x65, /* Usage maximum (101) */
-// 0x2A, 0xff, 0x03, /* Usage maximum (1023) */
- 0x81, 0x00, /* Input (data, array) */
- 0xC0 /* End Collection */
-};
-
-
-static const struct
-{
- struct usb_hid_descriptor hid_descriptor;
- struct
- {
- uint8_t bReportDescriptorType;
- uint16_t wDescriptorLength;
- } __attribute__ ((packed)) hid_report;
-} __attribute__ ((packed)) keyboard_function =
-{
- .hid_descriptor =
- {
- .bLength = sizeof (keyboard_function),.bDescriptorType =
- USB_DT_HID,.bcdHID = 0x0100,.bCountryCode = 0,.bNumDescriptors = 1,}
- ,.hid_report =
- {
- .bReportDescriptorType = USB_DT_REPORT,.wDescriptorLength =
- sizeof (keyboard_report_descriptor),}
-,};
-
-const struct usb_endpoint_descriptor keyboard_endpoint = {
- .bLength = USB_DT_ENDPOINT_SIZE,
- .bDescriptorType = USB_DT_ENDPOINT,
- .bEndpointAddress = 0x81,
- .bmAttributes = USB_ENDPOINT_ATTR_INTERRUPT,
- .wMaxPacketSize = 8,
- .bInterval = 0x20,
-};
-
-const struct usb_interface_descriptor keyboard_iface = {
- .bLength = USB_DT_INTERFACE_SIZE,
- .bDescriptorType = USB_DT_INTERFACE,
- .bInterfaceNumber = 0,
- .bAlternateSetting = 0,
- .bNumEndpoints = 1,
- .bInterfaceClass = USB_CLASS_HID,
- .bInterfaceSubClass = 1, /* boot */
- .bInterfaceProtocol = 1, /* keyboard */
- .iInterface = 0,
-
- .endpoint = &keyboard_endpoint,
-
- .extra = &keyboard_function,
- .extralen = sizeof (keyboard_function),
-};
-
-
-void
-keyboard_get_descriptor (uint8_t ** buf, uint16_t * len)
-{
-
- /* Handle the HID report descriptor. */
- *buf = (uint8_t *) keyboard_report_descriptor;
- *len = sizeof (keyboard_report_descriptor);
-}
-
-void
-keyboard_test (void)
-{
- static int c = 0;
- uint8_t buf[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };
-
-
- buf[0] = (c >> 1) & 7;
-
- buf[2] = (c & 1) ? 12 : 0;
-
- c++;
-
- usbd_ep_write_packet (usbd_dev, 0x81, buf, 8);
-}