aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorUwe Hermann2010-12-29 17:28:06 +0100
committerUwe Hermann2010-12-29 17:28:06 +0100
commitc39eb69e4d923c9c5fa8be53252ee0ffd15dffb9 (patch)
treee4f194d9c1720c4a1318c4f73e9de7dfa7da5db8 /include
parent6a16711bee34e0445a95a9cbffc17fdd1d580950 (diff)
Replace uint8_t with u8 et al, fix whitespace.
Diffstat (limited to 'include')
-rw-r--r--include/usb/cdc.h81
-rw-r--r--include/usb/dfu.h14
-rw-r--r--include/usb/hid.h10
-rw-r--r--include/usb/usbd.h31
-rw-r--r--include/usb/usbstd.h228
5 files changed, 180 insertions, 184 deletions
diff --git a/include/usb/cdc.h b/include/usb/cdc.h
index db0f2bc..07be0ca 100644
--- a/include/usb/cdc.h
+++ b/include/usb/cdc.h
@@ -21,54 +21,54 @@
#define __CDC_H
/* Definitions of Communications Device Class from
- * "Universal Serial Bus Class Definitions for Communications Devices
+ * "Universal Serial Bus Class Definitions for Communications Devices
* Revision 1.2"
*/
/* Table 2: Communications Device Class Code */
-#define USB_CLASS_CDC 0x02
+#define USB_CLASS_CDC 0x02
/* Table 4: Class Subclass Code */
-#define USB_CDC_SUBCLASS_DLCM 0x01
-#define USB_CDC_SUBCLASS_ACM 0x02
+#define USB_CDC_SUBCLASS_DLCM 0x01
+#define USB_CDC_SUBCLASS_ACM 0x02
/* ... */
/* Table 5 Communications Interface Class Control Protocol Codes */
-#define USB_CDC_PROTOCOL_NONE 0x00
-#define USB_CDC_PROTOCOL_AT 0x01
+#define USB_CDC_PROTOCOL_NONE 0x00
+#define USB_CDC_PROTOCOL_AT 0x01
/* ... */
/* Table 6: Data Interface Class Code */
-#define USB_CLASS_DATA 0x0A
+#define USB_CLASS_DATA 0x0A
/* Table 12: Type Values for the bDescriptorType Field */
-#define CS_INTERFACE 0x24
-#define CS_ENDPOINT 0x25
+#define CS_INTERFACE 0x24
+#define CS_ENDPOINT 0x25
-/* Table 13: bDescriptor SubType in Communications Class Functional
+/* Table 13: bDescriptor SubType in Communications Class Functional
* Descriptors */
-#define USB_CDC_TYPE_HEADER 0x00
+#define USB_CDC_TYPE_HEADER 0x00
#define USB_CDC_TYPE_CALL_MANAGEMENT 0x01
-#define USB_CDC_TYPE_ACM 0x02
+#define USB_CDC_TYPE_ACM 0x02
/* ... */
-#define USB_CDC_TYPE_UNION 0x06
+#define USB_CDC_TYPE_UNION 0x06
/* ... */
/* Table 15: Class-Specific Descriptor Header Format */
struct usb_cdc_header_descriptor {
- uint8_t bFunctionLength;
- uint8_t bDescriptorType;
- uint8_t bDescriptorSubtype;
- uint16_t bcdCDC;
+ u8 bFunctionLength;
+ u8 bDescriptorType;
+ u8 bDescriptorSubtype;
+ u16 bcdCDC;
} __attribute__((packed));
/* Table 16: Union Interface Functional Descriptor */
struct usb_cdc_union_descriptor {
- uint8_t bFunctionLength;
- uint8_t bDescriptorType;
- uint8_t bDescriptorSubtype;
- uint8_t bControlInterface;
- uint8_t bSubordinateInterface0;
+ u8 bFunctionLength;
+ u8 bDescriptorType;
+ u8 bDescriptorSubtype;
+ u8 bControlInterface;
+ u8 bSubordinateInterface0;
/* ... */
} __attribute__((packed));
@@ -80,19 +80,19 @@ struct usb_cdc_union_descriptor {
/* Table 3: Call Management Functional Descriptor */
struct usb_cdc_call_management_descriptor {
- uint8_t bFunctionLength;
- uint8_t bDescriptorType;
- uint8_t bDescriptorSubtype;
- uint8_t bmCapabilities;
- uint8_t bDataInterface;
+ u8 bFunctionLength;
+ u8 bDescriptorType;
+ u8 bDescriptorSubtype;
+ u8 bmCapabilities;
+ u8 bDataInterface;
} __attribute__((packed));
/* Table 4: Abstract Control Management Functional Descriptor */
struct usb_cdc_acm_descriptor {
- uint8_t bFunctionLength;
- uint8_t bDescriptorType;
- uint8_t bDescriptorSubtype;
- uint8_t bmCapabilities;
+ u8 bFunctionLength;
+ u8 bDescriptorType;
+ u8 bDescriptorSubtype;
+ u8 bmCapabilities;
} __attribute__((packed));
/* Table 13: Class-Specific Request Codes for PSTN subclasses */
@@ -104,10 +104,10 @@ struct usb_cdc_acm_descriptor {
/* Table 17: Line Coding Structure */
struct usb_cdc_line_coding {
- uint32_t dwDTERate;
- uint8_t bCharFormat;
- uint8_t bParityType;
- uint8_t bDataBits;
+ u32 dwDTERate;
+ u8 bCharFormat;
+ u8 bParityType;
+ u8 bDataBits;
} __attribute__((packed));
/* Table 30: Class-Specific Notification Codes for PSTN subclasses */
@@ -115,14 +115,13 @@ struct usb_cdc_line_coding {
#define USB_CDC_NOTIFY_SERIAL_STATE 0x28
/* ... */
-
/* Notification Structure */
struct usb_cdc_notification {
- uint8_t bmRequestType;
- uint8_t bNotification;
- uint16_t wValue;
- uint16_t wIndex;
- uint16_t wLength;
+ u8 bmRequestType;
+ u8 bNotification;
+ u16 wValue;
+ u16 wIndex;
+ u16 wLength;
} __attribute__((packed));
#endif
diff --git a/include/usb/dfu.h b/include/usb/dfu.h
index cca07cb..2abd230 100644
--- a/include/usb/dfu.h
+++ b/include/usb/dfu.h
@@ -27,7 +27,7 @@ enum dfu_req {
DFU_GETSTATUS,
DFU_CLRSTATUS,
DFU_GETSTATE,
- DFU_ABORT
+ DFU_ABORT,
};
enum dfu_status {
@@ -65,17 +65,17 @@ enum dfu_state {
#define DFU_FUNCTIONAL 0x21
struct usb_dfu_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint8_t bmAttributes;
+ u8 bLength;
+ u8 bDescriptorType;
+ u8 bmAttributes;
#define USB_DFU_CAN_DOWNLOAD 0x01
#define USB_DFU_CAN_UPLOAD 0x02
#define USB_DFU_MANIFEST_TOLERANT 0x04
#define USB_DFU_WILL_DETACH 0x08
- uint16_t wDetachTimeout;
- uint16_t wTransferSize;
- uint16_t bcdDFUVersion;
+ u16 wDetachTimeout;
+ u16 wTransferSize;
+ u16 bcdDFUVersion;
} __attribute__((packed));
#endif
diff --git a/include/usb/hid.h b/include/usb/hid.h
index 6804cab..1807a51 100644
--- a/include/usb/hid.h
+++ b/include/usb/hid.h
@@ -28,11 +28,11 @@
#define USB_DT_REPORT 0x22
struct usb_hid_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint16_t bcdHID;
- uint8_t bCountryCode;
- uint8_t bNumDescriptors;
+ u8 bLength;
+ u8 bDescriptorType;
+ u16 bcdHID;
+ u8 bCountryCode;
+ u8 bNumDescriptors;
} __attribute__((packed));
#endif
diff --git a/include/usb/usbd.h b/include/usb/usbd.h
index c9fac7f..f330c1d 100644
--- a/include/usb/usbd.h
+++ b/include/usb/usbd.h
@@ -25,47 +25,42 @@
/* Static buffer for control transactions:
* This is defined as weak in the library, applicaiton
* may provide if a larger buffer is requred. */
-extern uint8_t usbd_control_buffer[];
+extern u8 usbd_control_buffer[];
/* <usb.c> */
extern int usbd_init(const struct usb_device_descriptor *dev,
const struct usb_config_descriptor *conf,
const char **strings);
-extern void usbd_set_control_buffer_size(uint16_t size);
+extern void usbd_set_control_buffer_size(u16 size);
extern void usbd_register_reset_callback(void (*callback)(void));
extern void usbd_register_suspend_callback(void (*callback)(void));
extern void usbd_register_resume_callback(void (*callback)(void));
-typedef int (*usbd_control_callback)(struct usb_setup_data *req,
- uint8_t **buf, uint16_t *len,
- void (**complete)(struct usb_setup_data *req));
+typedef int (*usbd_control_callback)(struct usb_setup_data *req, u8 **buf,
+ u16 *len, void (**complete)(struct usb_setup_data *req));
/* <usb_control.c> */
-extern int usbd_register_control_callback(uint8_t type, uint8_t type_mask,
+extern int usbd_register_control_callback(u8 type, u8 type_mask,
usbd_control_callback callback);
/* <usb_standard.c> */
-extern void
-usbd_register_set_config_callback(void (*callback)(uint16_t wValue));
-
+extern void usbd_register_set_config_callback(void (*callback)(u16 wValue));
/* Functions to be provided by the hardware abstraction layer */
extern void usbd_poll(void);
-extern void usbd_ep_setup(uint8_t addr, uint8_t type, uint16_t max_size,
- void (*callback)(uint8_t ep));
+extern void usbd_ep_setup(u8 addr, u8 type, u16 max_size,
+ void (*callback)(u8 ep));
-extern uint16_t
-usbd_ep_write_packet(uint8_t addr, const void *buf, uint16_t len);
+extern u16 usbd_ep_write_packet(u8 addr, const void *buf, u16 len);
-extern uint16_t
-usbd_ep_read_packet(uint8_t addr, void *buf, uint16_t len);
+extern u16 usbd_ep_read_packet(u8 addr, void *buf, u16 len);
-extern void usbd_ep_stall_set(uint8_t addr, uint8_t stall);
-extern uint8_t usbd_ep_stall_get(uint8_t addr);
+extern void usbd_ep_stall_set(u8 addr, u8 stall);
+extern u8 usbd_ep_stall_get(u8 addr);
/* Optional */
-extern void usbd_cable_connect(uint8_t on);
+extern void usbd_cable_connect(u8 on);
#endif
diff --git a/include/usb/usbstd.h b/include/usb/usbstd.h
index ee969d5..a055a43 100644
--- a/include/usb/usbstd.h
+++ b/include/usb/usbstd.h
@@ -20,183 +20,185 @@
#ifndef __USBSTD_H
#define __USBSTD_H
-/*
+#include <stdint.h>
+#include <libopenstm32/common.h> /* TODO: Move elsewhere? */
+
+/*
* This file contains structure definitions for the USB control structures
* defined in chapter 9 of the "Univeral Serial Bus Specification Revision 2.0"
* Available from the USB Implementers Forum - http://www.usb.org/
*/
-#include <stdint.h>
-
/* USB Setup Data structure - Table 9-2 */
struct usb_setup_data {
- uint8_t bmRequestType;
- uint8_t bRequest;
- uint16_t wValue;
- uint16_t wIndex;
- uint16_t wLength;
+ u8 bmRequestType;
+ u8 bRequest;
+ u16 wValue;
+ u16 wIndex;
+ u16 wLength;
} __attribute__((packed));
/* bmRequestType bit definitions */
-#define USB_REQ_TYPE_IN 0x80
-#define USB_REQ_TYPE_STANDARD 0x00
-#define USB_REQ_TYPE_CLASS 0x20
-#define USB_REQ_TYPE_VENDOR 0x40
-#define USB_REQ_TYPE_DEVICE 0x00
-#define USB_REQ_TYPE_INTERFACE 0x01
-#define USB_REQ_TYPE_ENDPOINT 0x02
-
-#define USB_REQ_TYPE_DIRECTION 0x80
-#define USB_REQ_TYPE_TYPE 0x60
-#define USB_REQ_TYPE_RECIPIENT 0x1F
+#define USB_REQ_TYPE_IN 0x80
+#define USB_REQ_TYPE_STANDARD 0x00
+#define USB_REQ_TYPE_CLASS 0x20
+#define USB_REQ_TYPE_VENDOR 0x40
+#define USB_REQ_TYPE_DEVICE 0x00
+#define USB_REQ_TYPE_INTERFACE 0x01
+#define USB_REQ_TYPE_ENDPOINT 0x02
+
+#define USB_REQ_TYPE_DIRECTION 0x80
+#define USB_REQ_TYPE_TYPE 0x60
+#define USB_REQ_TYPE_RECIPIENT 0x1F
/* USB Standard Request Codes - Table 9-4 */
-#define USB_REQ_GET_STATUS 0
-#define USB_REQ_CLEAR_FEATURE 1
+#define USB_REQ_GET_STATUS 0
+#define USB_REQ_CLEAR_FEATURE 1
/* Reserved for future use: 2 */
-#define USB_REQ_SET_FEATURE 3
+#define USB_REQ_SET_FEATURE 3
/* Reserved for future use: 3 */
-#define USB_REQ_SET_ADDRESS 5
-#define USB_REQ_GET_DESCRIPTOR 6
-#define USB_REQ_SET_DESCRIPTOR 7
-#define USB_REQ_GET_CONFIGURATION 8
-#define USB_REQ_SET_CONFIGURATION 9
-#define USB_REQ_GET_INTERFACE 10
-#define USB_REQ_SET_INTERFACE 11
-#define USB_REQ_SET_SYNCH_FRAME 12
+#define USB_REQ_SET_ADDRESS 5
+#define USB_REQ_GET_DESCRIPTOR 6
+#define USB_REQ_SET_DESCRIPTOR 7
+#define USB_REQ_GET_CONFIGURATION 8
+#define USB_REQ_SET_CONFIGURATION 9
+#define USB_REQ_GET_INTERFACE 10
+#define USB_REQ_SET_INTERFACE 11
+#define USB_REQ_SET_SYNCH_FRAME 12
/* USB Descriptor Types - Table 9-5 */
-#define USB_DT_DEVICE 1
-#define USB_DT_CONFIGURATION 2
-#define USB_DT_STRING 3
-#define USB_DT_INTERFACE 4
-#define USB_DT_ENDPOINT 5
-#define USB_DT_DEVICE_QUALIFIER 6
+#define USB_DT_DEVICE 1
+#define USB_DT_CONFIGURATION 2
+#define USB_DT_STRING 3
+#define USB_DT_INTERFACE 4
+#define USB_DT_ENDPOINT 5
+#define USB_DT_DEVICE_QUALIFIER 6
#define USB_DT_OTHER_SPEED_CONFIGURATION 7
-#define USB_DT_INTERFACE_POWER 8
+#define USB_DT_INTERFACE_POWER 8
/* USB Standard Feature Selectors - Table 9-6 */
-#define USB_FEAT_ENDPOINT_HALT 0
-#define USB_FEAT_DEVICE_REMOTE_WAKEUP 1
-#define USB_FEAT_TEST_MODE 2
+#define USB_FEAT_ENDPOINT_HALT 0
+#define USB_FEAT_DEVICE_REMOTE_WAKEUP 1
+#define USB_FEAT_TEST_MODE 2
/* Information Returned by a GetStatus() Request to a Device - Figure 9-4 */
-#define USB_DEV_STATUS_SELF_POWERED 0x01
-#define USB_DEV_STATUS_REMOTE_WAKEUP 0x02
+#define USB_DEV_STATUS_SELF_POWERED 0x01
+#define USB_DEV_STATUS_REMOTE_WAKEUP 0x02
/* USB Standard Device Descriptor - Table 9-8 */
struct usb_device_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint16_t bcdUSB;
- uint8_t bDeviceClass;
- uint8_t bDeviceSubClass;
- uint8_t bDeviceProtocol;
- uint8_t bMaxPacketSize0;
- uint16_t idVendor;
- uint16_t idProduct;
- uint16_t bcdDevice;
- uint8_t iManufacturer;
- uint8_t iProduct;
- uint8_t iSerialNumber;
- uint8_t bNumConfigurations;
+ u8 bLength;
+ u8 bDescriptorType;
+ u16 bcdUSB;
+ u8 bDeviceClass;
+ u8 bDeviceSubClass;
+ u8 bDeviceProtocol;
+ u8 bMaxPacketSize0;
+ u16 idVendor;
+ u16 idProduct;
+ u16 bcdDevice;
+ u8 iManufacturer;
+ u8 iProduct;
+ u8 iSerialNumber;
+ u8 bNumConfigurations;
} __attribute__((packed));
-#define USB_DT_DEVICE_SIZE sizeof(struct usb_device_descriptor)
-/* USB Device_Qualifier Descriptor - Table 9-9
- * Not used in this implementation.
+#define USB_DT_DEVICE_SIZE sizeof(struct usb_device_descriptor)
+
+/* USB Device_Qualifier Descriptor - Table 9-9
+ * Not used in this implementation.
*/
struct usb_device_qualifier_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint16_t bcdUSB;
- uint8_t bDeviceClass;
- uint8_t bDeviceSubClass;
- uint8_t bDeviceProtocol;
- uint8_t bMaxPacketSize0;
- uint8_t bNumConfigurations;
- uint8_t bReserved;
+ u8 bLength;
+ u8 bDescriptorType;
+ u16 bcdUSB;
+ u8 bDeviceClass;
+ u8 bDeviceSubClass;
+ u8 bDeviceProtocol;
+ u8 bMaxPacketSize0;
+ u8 bNumConfigurations;
+ u8 bReserved;
} __attribute__((packed));
/* USB Standard Configuration Descriptor - Table 9-10 */
struct usb_config_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint16_t wTotalLength;
- uint8_t bNumInterfaces;
- uint8_t bConfigurationValue;
- uint8_t iConfiguration;
- uint8_t bmAttributes;
- uint8_t bMaxPower;
-
+ u8 bLength;
+ u8 bDescriptorType;
+ u16 wTotalLength;
+ u8 bNumInterfaces;
+ u8 bConfigurationValue;
+ u8 iConfiguration;
+ u8 bmAttributes;
+ u8 bMaxPower;
+
/* Descriptor ends here. The following are used internally: */
const struct usb_interface {
int num_altsetting;
const struct usb_interface_descriptor *altsetting;
} *interface;
} __attribute__((packed));
-#define USB_DT_CONFIGURATION_SIZE 9
+#define USB_DT_CONFIGURATION_SIZE 9
/* USB Configuration Descriptor bmAttributes bit definitions */
-#define USB_CONFIG_ATTR_SELF_POWERED 0x40
-#define USB_CONFIG_ATTR_REMOTE_WAKEUP 0x20
+#define USB_CONFIG_ATTR_SELF_POWERED 0x40
+#define USB_CONFIG_ATTR_REMOTE_WAKEUP 0x20
/* Other Speed Configuration is the same as Configuration Descriptor.
- * - Table 9-11
+ * - Table 9-11
*/
/* USB Standard Interface Descriptor - Table 9-12 */
struct usb_interface_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint8_t bInterfaceNumber;
- uint8_t bAlternateSetting;
- uint8_t bNumEndpoints;
- uint8_t bInterfaceClass;
- uint8_t bInterfaceSubClass;
- uint8_t bInterfaceProtocol;
- uint8_t iInterface;
+ u8 bLength;
+ u8 bDescriptorType;
+ u8 bInterfaceNumber;
+ u8 bAlternateSetting;
+ u8 bNumEndpoints;
+ u8 bInterfaceClass;
+ u8 bInterfaceSubClass;
+ u8 bInterfaceProtocol;
+ u8 iInterface;
/* Descriptor ends here. The following are used internally: */
const struct usb_endpoint_descriptor *endpoint;
const void *extra;
int extralen;
} __attribute__((packed));
-#define USB_DT_INTERFACE_SIZE 9
+#define USB_DT_INTERFACE_SIZE 9
/* USB Standard Endpoint Descriptor - Table 9-13 */
struct usb_endpoint_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint8_t bEndpointAddress;
- uint8_t bmAttributes;
- uint16_t wMaxPacketSize;
- uint8_t bInterval;
+ u8 bLength;
+ u8 bDescriptorType;
+ u8 bEndpointAddress;
+ u8 bmAttributes;
+ u16 wMaxPacketSize;
+ u8 bInterval;
} __attribute__((packed));
#define USB_DT_ENDPOINT_SIZE sizeof(struct usb_endpoint_descriptor)
/* USB Endpoint Descriptor bmAttributes bit definitions */
-#define USB_ENDPOINT_ATTR_CONTROL 0x00
-#define USB_ENDPOINT_ATTR_ISOCHRONOUS 0x01
-#define USB_ENDPOINT_ATTR_BULK 0x02
-#define USB_ENDPOINT_ATTR_INTERRUPT 0x03
-
-#define USB_ENDPOINT_ATTR_NOSYNC 0x00
-#define USB_ENDPOINT_ATTR_ASYNC 0x04
-#define USB_ENDPOINT_ATTR_ADAPTIVE 0x08
-#define USB_ENDPOINT_ATTR_SYNC 0x0C
-
-#define USB_ENDPOINT_ATTR_DATA 0x00
-#define USB_ENDPOINT_ATTR_FEEDBACK 0x10
+#define USB_ENDPOINT_ATTR_CONTROL 0x00
+#define USB_ENDPOINT_ATTR_ISOCHRONOUS 0x01
+#define USB_ENDPOINT_ATTR_BULK 0x02
+#define USB_ENDPOINT_ATTR_INTERRUPT 0x03
+
+#define USB_ENDPOINT_ATTR_NOSYNC 0x00
+#define USB_ENDPOINT_ATTR_ASYNC 0x04
+#define USB_ENDPOINT_ATTR_ADAPTIVE 0x08
+#define USB_ENDPOINT_ATTR_SYNC 0x0C
+
+#define USB_ENDPOINT_ATTR_DATA 0x00
+#define USB_ENDPOINT_ATTR_FEEDBACK 0x10
#define USB_ENDPOINT_ATTR_IMPLICIT_FEEDBACK_DATA 0x20
-/* Table 9-15 specifies String Descriptor Zero.
+/* Table 9-15 specifies String Descriptor Zero.
* Table 9-16 specified UNICODE String Descriptor.
*/
struct usb_string_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint16_t wData[];
+ u8 bLength;
+ u8 bDescriptorType;
+ u16 wData[];
} __attribute__((packed));
#endif