summaryrefslogtreecommitdiff
path: root/tmk_core/protocol/pjrc/usb.h
diff options
context:
space:
mode:
Diffstat (limited to 'tmk_core/protocol/pjrc/usb.h')
-rw-r--r--tmk_core/protocol/pjrc/usb.h144
1 files changed, 69 insertions, 75 deletions
diff --git a/tmk_core/protocol/pjrc/usb.h b/tmk_core/protocol/pjrc/usb.h
index a195b671d0..50654dccf7 100644
--- a/tmk_core/protocol/pjrc/usb.h
+++ b/tmk_core/protocol/pjrc/usb.h
@@ -22,116 +22,110 @@
*/
#ifndef USB_H
-#define USB_H 1
+#define USB_H 1
#include <stdint.h>
#include <stdbool.h>
#include <avr/io.h>
-
extern bool remote_wakeup;
extern bool suspend;
-void usb_init(void); // initialize everything
-uint8_t usb_configured(void); // is the USB port configured
-void usb_remote_wakeup(void);
-
+void usb_init(void); // initialize everything
+uint8_t usb_configured(void); // is the USB port configured
+void usb_remote_wakeup(void);
-#define EP_TYPE_CONTROL 0x00
-#define EP_TYPE_BULK_IN 0x81
-#define EP_TYPE_BULK_OUT 0x80
-#define EP_TYPE_INTERRUPT_IN 0xC1
-#define EP_TYPE_INTERRUPT_OUT 0xC0
-#define EP_TYPE_ISOCHRONOUS_IN 0x41
-#define EP_TYPE_ISOCHRONOUS_OUT 0x40
+#define EP_TYPE_CONTROL 0x00
+#define EP_TYPE_BULK_IN 0x81
+#define EP_TYPE_BULK_OUT 0x80
+#define EP_TYPE_INTERRUPT_IN 0xC1
+#define EP_TYPE_INTERRUPT_OUT 0xC0
+#define EP_TYPE_ISOCHRONOUS_IN 0x41
+#define EP_TYPE_ISOCHRONOUS_OUT 0x40
-#define EP_SINGLE_BUFFER 0x02
-#define EP_DOUBLE_BUFFER 0x06
+#define EP_SINGLE_BUFFER 0x02
+#define EP_DOUBLE_BUFFER 0x06
-#define EP_SIZE(s) ((s) == 64 ? 0x30 : \
- ((s) == 32 ? 0x20 : \
- ((s) == 16 ? 0x10 : \
- 0x00)))
+#define EP_SIZE(s) ((s) == 64 ? 0x30 : ((s) == 32 ? 0x20 : ((s) == 16 ? 0x10 : 0x00)))
-#if defined (__AVR_AT90USB162__) || defined (__AVR_AT90USB82__)
-# define MAX_ENDPOINT 4
-# define UERST_MASK 0x1E
+#if defined(__AVR_AT90USB162__) || defined(__AVR_AT90USB82__)
+# define MAX_ENDPOINT 4
+# define UERST_MASK 0x1E
#else
-# define MAX_ENDPOINT 6
-# define UERST_MASK 0x7E
+# define MAX_ENDPOINT 6
+# define UERST_MASK 0x7E
#endif
#define LSB(n) (n & 255)
#define MSB(n) ((n >> 8) & 255)
#if defined(__AVR_AT90USB162__)
-#define HW_CONFIG()
-#define PLL_CONFIG() (PLLCSR = ((1<<PLLE)|(1<<PLLP0)))
-#define USB_CONFIG() (USBCON = (1<<USBE))
-#define USB_FREEZE() (USBCON = ((1<<USBE)|(1<<FRZCLK)))
+# define HW_CONFIG()
+# define PLL_CONFIG() (PLLCSR = ((1 << PLLE) | (1 << PLLP0)))
+# define USB_CONFIG() (USBCON = (1 << USBE))
+# define USB_FREEZE() (USBCON = ((1 << USBE) | (1 << FRZCLK)))
#elif defined(__AVR_ATmega32U4__)
-#define HW_CONFIG() (UHWCON = 0x01)
-#define PLL_CONFIG() (PLLCSR = 0x12)
-#define USB_CONFIG() (USBCON = ((1<<USBE)|(1<<OTGPADE)))
-#define USB_FREEZE() (USBCON = ((1<<USBE)|(1<<FRZCLK)))
+# define HW_CONFIG() (UHWCON = 0x01)
+# define PLL_CONFIG() (PLLCSR = 0x12)
+# define USB_CONFIG() (USBCON = ((1 << USBE) | (1 << OTGPADE)))
+# define USB_FREEZE() (USBCON = ((1 << USBE) | (1 << FRZCLK)))
#elif defined(__AVR_AT90USB646__)
-#define HW_CONFIG() (UHWCON = 0x81)
-#define PLL_CONFIG() (PLLCSR = 0x1A)
-#define USB_CONFIG() (USBCON = ((1<<USBE)|(1<<OTGPADE)))
-#define USB_FREEZE() (USBCON = ((1<<USBE)|(1<<FRZCLK)))
+# define HW_CONFIG() (UHWCON = 0x81)
+# define PLL_CONFIG() (PLLCSR = 0x1A)
+# define USB_CONFIG() (USBCON = ((1 << USBE) | (1 << OTGPADE)))
+# define USB_FREEZE() (USBCON = ((1 << USBE) | (1 << FRZCLK)))
#elif defined(__AVR_AT90USB1286__)
-#define HW_CONFIG() (UHWCON = 0x81)
-#define PLL_CONFIG() (PLLCSR = 0x16)
-#define USB_CONFIG() (USBCON = ((1<<USBE)|(1<<OTGPADE)))
-#define USB_FREEZE() (USBCON = ((1<<USBE)|(1<<FRZCLK)))
+# define HW_CONFIG() (UHWCON = 0x81)
+# define PLL_CONFIG() (PLLCSR = 0x16)
+# define USB_CONFIG() (USBCON = ((1 << USBE) | (1 << OTGPADE)))
+# define USB_FREEZE() (USBCON = ((1 << USBE) | (1 << FRZCLK)))
#endif
// standard control endpoint request types
-#define GET_STATUS 0
-#define CLEAR_FEATURE 1
-#define SET_FEATURE 3
-#define SET_ADDRESS 5
-#define GET_DESCRIPTOR 6
-#define GET_CONFIGURATION 8
-#define SET_CONFIGURATION 9
-#define GET_INTERFACE 10
-#define SET_INTERFACE 11
+#define GET_STATUS 0
+#define CLEAR_FEATURE 1
+#define SET_FEATURE 3
+#define SET_ADDRESS 5
+#define GET_DESCRIPTOR 6
+#define GET_CONFIGURATION 8
+#define SET_CONFIGURATION 9
+#define GET_INTERFACE 10
+#define SET_INTERFACE 11
// HID (human interface device)
-#define HID_GET_REPORT 1
-#define HID_GET_IDLE 2
-#define HID_GET_PROTOCOL 3
-#define HID_SET_REPORT 9
-#define HID_SET_IDLE 10
-#define HID_SET_PROTOCOL 11
-#define HID_REPORT_INPUT 1
-#define HID_REPORT_OUTPUT 2
-#define HID_REPORT_FEATURE 3
+#define HID_GET_REPORT 1
+#define HID_GET_IDLE 2
+#define HID_GET_PROTOCOL 3
+#define HID_SET_REPORT 9
+#define HID_SET_IDLE 10
+#define HID_SET_PROTOCOL 11
+#define HID_REPORT_INPUT 1
+#define HID_REPORT_OUTPUT 2
+#define HID_REPORT_FEATURE 3
// CDC (communication class device)
-#define CDC_SET_LINE_CODING 0x20
-#define CDC_GET_LINE_CODING 0x21
-#define CDC_SET_CONTROL_LINE_STATE 0x22
+#define CDC_SET_LINE_CODING 0x20
+#define CDC_GET_LINE_CODING 0x21
+#define CDC_SET_CONTROL_LINE_STATE 0x22
// HID feature selectors
-#define DEVICE_REMOTE_WAKEUP 1
-#define ENDPOINT_HALT 0
-#define TEST_MODE 2
-
+#define DEVICE_REMOTE_WAKEUP 1
+#define ENDPOINT_HALT 0
+#define TEST_MODE 2
/*------------------------------------------------------------------*
* Keyboard descriptor setting
*------------------------------------------------------------------*/
-#define KBD_INTERFACE 0
-#define KBD_ENDPOINT 1
-#define KBD_SIZE 8
-#define KBD_BUFFER EP_SINGLE_BUFFER
-#define KBD_REPORT_KEYS (KBD_SIZE - 2)
+#define KBD_INTERFACE 0
+#define KBD_ENDPOINT 1
+#define KBD_SIZE 8
+#define KBD_BUFFER EP_SINGLE_BUFFER
+#define KBD_REPORT_KEYS (KBD_SIZE - 2)
// secondary keyboard
#ifdef NKRO_ENABLE
-#define KBD2_INTERFACE 4
-#define KBD2_ENDPOINT 5
-#define KBD2_SIZE 16
-#define KBD2_BUFFER EP_DOUBLE_BUFFER
-#define KBD2_REPORT_KEYS (KBD2_SIZE - 1)
+# define KBD2_INTERFACE 4
+# define KBD2_ENDPOINT 5
+# define KBD2_SIZE 16
+# define KBD2_BUFFER EP_DOUBLE_BUFFER
+# define KBD2_REPORT_KEYS (KBD2_SIZE - 1)
#endif
#endif