diff --git a/examples/lisa-m/usb_dfu/usbdfu.c b/examples/lisa-m/usb_dfu/usbdfu.c
index 7f17ec8a..0a6789df 100644
--- a/examples/lisa-m/usb_dfu/usbdfu.c
+++ b/examples/lisa-m/usb_dfu/usbdfu.c
@@ -17,15 +17,13 @@
* along with this program. If not, see .
*/
+#include
#include
#include
#include
#include
-#include
-
-#include
-
-#include "dfu.h"
+#include
+#include
#define APP_ADDRESS 0x08002000
diff --git a/examples/lisa-m/usb_hid/usbhid.c b/examples/lisa-m/usb_hid/usbhid.c
index cf3b5430..6adef1e1 100644
--- a/examples/lisa-m/usb_hid/usbhid.c
+++ b/examples/lisa-m/usb_hid/usbhid.c
@@ -17,21 +17,19 @@
* along with this program. If not, see .
*/
+#include
#include
#include
#include
-#include
-
-#include
-
-#include "hid.h"
+#include
+#include
/* Define this to include the DFU APP interface. */
#define INCLUDE_DFU_INTERFACE
#ifdef INCLUDE_DFU_INTERFACE
-# include
-# include "../usb_dfu/dfu.h"
+#include
+#include
#endif
const struct usb_device_descriptor dev = {
diff --git a/examples/other/usb_cdcacm/cdcacm.c b/examples/other/usb_cdcacm/cdcacm.c
index b911a612..8305dc2e 100644
--- a/examples/other/usb_cdcacm/cdcacm.c
+++ b/examples/other/usb_cdcacm/cdcacm.c
@@ -17,12 +17,11 @@
* along with this program. If not, see .
*/
+#include
#include
#include
-#include
-#include
-
-#include "cdc.h"
+#include
+#include
static const struct usb_device_descriptor dev = {
.bLength = USB_DT_DEVICE_SIZE,
diff --git a/examples/other/usb_dfu/dfu.h b/examples/other/usb_dfu/dfu.h
deleted file mode 100644
index cca07cbb..00000000
--- a/examples/other/usb_dfu/dfu.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * This file is part of the libopenstm32 project.
- *
- * Copyright (C) 2010 Gareth McMullin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-
-#ifndef __DFU_H
-#define __DFU_H
-
-enum dfu_req {
- DFU_DETACH,
- DFU_DNLOAD,
- DFU_UPLOAD,
- DFU_GETSTATUS,
- DFU_CLRSTATUS,
- DFU_GETSTATE,
- DFU_ABORT
-};
-
-enum dfu_status {
- DFU_STATUS_OK,
- DFU_STATUS_ERR_TARGET,
- DFU_STATUS_ERR_FILE,
- DFU_STATUS_ERR_WRITE,
- DFU_STATUS_ERR_ERASE,
- DFU_STATUS_ERR_CHECK_ERASED,
- DFU_STATUS_ERR_PROG,
- DFU_STATUS_ERR_VERIFY,
- DFU_STATUS_ERR_ADDRESS,
- DFU_STATUS_ERR_NOTDONE,
- DFU_STATUS_ERR_FIRMWARE,
- DFU_STATUS_ERR_VENDOR,
- DFU_STATUS_ERR_USBR,
- DFU_STATUS_ERR_POR,
- DFU_STATUS_ERR_UNKNOWN,
- DFU_STATUS_ERR_STALLEDPKT,
-};
-
-enum dfu_state {
- STATE_APP_IDLE,
- STATE_APP_DETACH,
- STATE_DFU_IDLE,
- STATE_DFU_DNLOAD_SYNC,
- STATE_DFU_DNBUSY,
- STATE_DFU_DNLOAD_IDLE,
- STATE_DFU_MANIFEST_SYNC,
- STATE_DFU_MANIFEST,
- STATE_DFU_MANIFEST_WAIT_RESET,
- STATE_DFU_UPLOAD_IDLE,
- STATE_DFU_ERROR,
-};
-
-#define DFU_FUNCTIONAL 0x21
-struct usb_dfu_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint8_t 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;
-} __attribute__((packed));
-
-#endif
diff --git a/examples/other/usb_dfu/usbdfu.c b/examples/other/usb_dfu/usbdfu.c
index cb05531a..9981585d 100644
--- a/examples/other/usb_dfu/usbdfu.c
+++ b/examples/other/usb_dfu/usbdfu.c
@@ -17,15 +17,13 @@
* along with this program. If not, see .
*/
+#include
#include
#include
#include
#include
-#include
-
-#include
-
-#include "dfu.h"
+#include
+#include
#define APP_ADDRESS 0x08002000
diff --git a/examples/other/usb_hid/hid.h b/examples/other/usb_hid/hid.h
deleted file mode 100644
index 6804cabb..00000000
--- a/examples/other/usb_hid/hid.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * This file is part of the libopenstm32 project.
- *
- * Copyright (C) 2010 Gareth McMullin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-
-#ifndef __HID_H
-#define __HID_H
-
-#include
-
-#define USB_CLASS_HID 3
-
-#define USB_DT_HID 0x21
-#define USB_DT_REPORT 0x22
-
-struct usb_hid_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint16_t bcdHID;
- uint8_t bCountryCode;
- uint8_t bNumDescriptors;
-} __attribute__((packed));
-
-#endif
diff --git a/examples/other/usb_hid/usbhid.c b/examples/other/usb_hid/usbhid.c
index fe3313cd..d87265f8 100644
--- a/examples/other/usb_hid/usbhid.c
+++ b/examples/other/usb_hid/usbhid.c
@@ -17,21 +17,19 @@
* along with this program. If not, see .
*/
+#include
#include
#include
#include
-#include
-
-#include
-
-#include "hid.h"
+#include
+#include
/* Define this to include the DFU APP interface. */
#define INCLUDE_DFU_INTERFACE
#ifdef INCLUDE_DFU_INTERFACE
-# include
-# include "../usb_dfu/dfu.h"
+#include
+#include
#endif
const struct usb_device_descriptor dev = {
diff --git a/examples/stm32-h103/usb_cdcacm/cdc.h b/examples/stm32-h103/usb_cdcacm/cdc.h
deleted file mode 100644
index db0f2bcf..00000000
--- a/examples/stm32-h103/usb_cdcacm/cdc.h
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * This file is part of the libopenstm32 project.
- *
- * Copyright (C) 2010 Gareth McMullin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-
-#ifndef __CDC_H
-#define __CDC_H
-
-/* Definitions of Communications Device Class from
- * "Universal Serial Bus Class Definitions for Communications Devices
- * Revision 1.2"
- */
-
-/* Table 2: Communications Device Class Code */
-#define USB_CLASS_CDC 0x02
-
-/* Table 4: Class Subclass Code */
-#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
-/* ... */
-
-/* Table 6: Data Interface Class Code */
-#define USB_CLASS_DATA 0x0A
-
-/* Table 12: Type Values for the bDescriptorType Field */
-#define CS_INTERFACE 0x24
-#define CS_ENDPOINT 0x25
-
-/* Table 13: bDescriptor SubType in Communications Class Functional
- * Descriptors */
-#define USB_CDC_TYPE_HEADER 0x00
-#define USB_CDC_TYPE_CALL_MANAGEMENT 0x01
-#define USB_CDC_TYPE_ACM 0x02
-/* ... */
-#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;
-} __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;
- /* ... */
-} __attribute__((packed));
-
-
-/* Definitions for Abstract Control Model devices from:
- * "Universal Serial Bus Communications Class Subclass Specification for
- * PSTN Devices"
- */
-
-/* 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;
-} __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;
-} __attribute__((packed));
-
-/* Table 13: Class-Specific Request Codes for PSTN subclasses */
-/* ... */
-#define USB_CDC_REQ_SET_LINE_CODING 0x20
-/* ... */
-#define USB_CDC_REQ_SET_CONTROL_LINE_STATE 0x22
-/* ... */
-
-/* Table 17: Line Coding Structure */
-struct usb_cdc_line_coding {
- uint32_t dwDTERate;
- uint8_t bCharFormat;
- uint8_t bParityType;
- uint8_t bDataBits;
-} __attribute__((packed));
-
-/* Table 30: Class-Specific Notification Codes for PSTN subclasses */
-/* ... */
-#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;
-} __attribute__((packed));
-
-#endif
diff --git a/examples/stm32-h103/usb_cdcacm/cdcacm.c b/examples/stm32-h103/usb_cdcacm/cdcacm.c
index d11d9a02..305ad43a 100644
--- a/examples/stm32-h103/usb_cdcacm/cdcacm.c
+++ b/examples/stm32-h103/usb_cdcacm/cdcacm.c
@@ -17,12 +17,11 @@
* along with this program. If not, see .
*/
+#include
#include
#include
-#include
-#include
-
-#include "cdc.h"
+#include
+#include
static const struct usb_device_descriptor dev = {
.bLength = USB_DT_DEVICE_SIZE,
diff --git a/examples/stm32-h103/usb_dfu/dfu.h b/examples/stm32-h103/usb_dfu/dfu.h
deleted file mode 100644
index cca07cbb..00000000
--- a/examples/stm32-h103/usb_dfu/dfu.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * This file is part of the libopenstm32 project.
- *
- * Copyright (C) 2010 Gareth McMullin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-
-#ifndef __DFU_H
-#define __DFU_H
-
-enum dfu_req {
- DFU_DETACH,
- DFU_DNLOAD,
- DFU_UPLOAD,
- DFU_GETSTATUS,
- DFU_CLRSTATUS,
- DFU_GETSTATE,
- DFU_ABORT
-};
-
-enum dfu_status {
- DFU_STATUS_OK,
- DFU_STATUS_ERR_TARGET,
- DFU_STATUS_ERR_FILE,
- DFU_STATUS_ERR_WRITE,
- DFU_STATUS_ERR_ERASE,
- DFU_STATUS_ERR_CHECK_ERASED,
- DFU_STATUS_ERR_PROG,
- DFU_STATUS_ERR_VERIFY,
- DFU_STATUS_ERR_ADDRESS,
- DFU_STATUS_ERR_NOTDONE,
- DFU_STATUS_ERR_FIRMWARE,
- DFU_STATUS_ERR_VENDOR,
- DFU_STATUS_ERR_USBR,
- DFU_STATUS_ERR_POR,
- DFU_STATUS_ERR_UNKNOWN,
- DFU_STATUS_ERR_STALLEDPKT,
-};
-
-enum dfu_state {
- STATE_APP_IDLE,
- STATE_APP_DETACH,
- STATE_DFU_IDLE,
- STATE_DFU_DNLOAD_SYNC,
- STATE_DFU_DNBUSY,
- STATE_DFU_DNLOAD_IDLE,
- STATE_DFU_MANIFEST_SYNC,
- STATE_DFU_MANIFEST,
- STATE_DFU_MANIFEST_WAIT_RESET,
- STATE_DFU_UPLOAD_IDLE,
- STATE_DFU_ERROR,
-};
-
-#define DFU_FUNCTIONAL 0x21
-struct usb_dfu_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint8_t 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;
-} __attribute__((packed));
-
-#endif
diff --git a/examples/stm32-h103/usb_dfu/usbdfu.c b/examples/stm32-h103/usb_dfu/usbdfu.c
index 7f17ec8a..0a6789df 100644
--- a/examples/stm32-h103/usb_dfu/usbdfu.c
+++ b/examples/stm32-h103/usb_dfu/usbdfu.c
@@ -17,15 +17,13 @@
* along with this program. If not, see .
*/
+#include
#include
#include
#include
#include
-#include
-
-#include
-
-#include "dfu.h"
+#include
+#include
#define APP_ADDRESS 0x08002000
diff --git a/examples/stm32-h103/usb_hid/hid.h b/examples/stm32-h103/usb_hid/hid.h
deleted file mode 100644
index 6804cabb..00000000
--- a/examples/stm32-h103/usb_hid/hid.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * This file is part of the libopenstm32 project.
- *
- * Copyright (C) 2010 Gareth McMullin
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-
-#ifndef __HID_H
-#define __HID_H
-
-#include
-
-#define USB_CLASS_HID 3
-
-#define USB_DT_HID 0x21
-#define USB_DT_REPORT 0x22
-
-struct usb_hid_descriptor {
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint16_t bcdHID;
- uint8_t bCountryCode;
- uint8_t bNumDescriptors;
-} __attribute__((packed));
-
-#endif
diff --git a/examples/stm32-h103/usb_hid/usbhid.c b/examples/stm32-h103/usb_hid/usbhid.c
index f98448c9..457bb048 100644
--- a/examples/stm32-h103/usb_hid/usbhid.c
+++ b/examples/stm32-h103/usb_hid/usbhid.c
@@ -17,21 +17,19 @@
* along with this program. If not, see .
*/
+#include
#include
#include
#include
-#include
-
-#include
-
-#include "hid.h"
+#include
+#include
/* Define this to include the DFU APP interface. */
#define INCLUDE_DFU_INTERFACE
#ifdef INCLUDE_DFU_INTERFACE
-# include
-# include "../usb_dfu/dfu.h"
+#include
+#include
#endif
const struct usb_device_descriptor dev = {
diff --git a/examples/stm32-h103/usb_iap/usbiap.c b/examples/stm32-h103/usb_iap/usbiap.c
index 7f17ec8a..0a6789df 100644
--- a/examples/stm32-h103/usb_iap/usbiap.c
+++ b/examples/stm32-h103/usb_iap/usbiap.c
@@ -17,15 +17,13 @@
* along with this program. If not, see .
*/
+#include
#include
#include
#include
#include
-#include
-
-#include
-
-#include "dfu.h"
+#include
+#include
#define APP_ADDRESS 0x08002000
diff --git a/examples/other/usb_cdcacm/cdc.h b/include/usb/cdc.h
similarity index 100%
rename from examples/other/usb_cdcacm/cdc.h
rename to include/usb/cdc.h
diff --git a/examples/lisa-m/usb_dfu/dfu.h b/include/usb/dfu.h
similarity index 100%
rename from examples/lisa-m/usb_dfu/dfu.h
rename to include/usb/dfu.h
diff --git a/examples/lisa-m/usb_hid/hid.h b/include/usb/hid.h
similarity index 100%
rename from examples/lisa-m/usb_hid/hid.h
rename to include/usb/hid.h
diff --git a/include/usbd.h b/include/usb/usbd.h
similarity index 98%
rename from include/usbd.h
rename to include/usb/usbd.h
index f65f9435..c9fac7f8 100644
--- a/include/usbd.h
+++ b/include/usb/usbd.h
@@ -20,7 +20,7 @@
#ifndef __USBD_H
#define __USBD_H
-#include
+#include
/* Static buffer for control transactions:
* This is defined as weak in the library, applicaiton
diff --git a/include/usbstd.h b/include/usb/usbstd.h
similarity index 100%
rename from include/usbstd.h
rename to include/usb/usbstd.h
diff --git a/lib/usb/usb.c b/lib/usb/usb.c
index dd9d00c3..c201b3e3 100644
--- a/lib/usb/usb.c
+++ b/lib/usb/usb.c
@@ -17,8 +17,8 @@
* along with this program. If not, see .
*/
-#include
#include
+#include
#include "usb_private.h"
struct _usbd_device _usbd_device;
@@ -92,4 +92,3 @@ void _usbd_reset(void)
if(_usbd_device.user_callback_reset)
_usbd_device.user_callback_reset();
}
-
diff --git a/lib/usb/usb_control.c b/lib/usb/usb_control.c
index 73e83729..d1796d97 100644
--- a/lib/usb/usb_control.c
+++ b/lib/usb/usb_control.c
@@ -17,8 +17,8 @@
* along with this program. If not, see .
*/
-#include
#include
+#include
#include "usb_private.h"
static struct usb_control_state {
@@ -251,4 +251,3 @@ void _usbd_control_in(uint8_t ea)
usbd_ep_stall_set(0, 1);
}
}
-
diff --git a/lib/usb/usb_f103.c b/lib/usb/usb_f103.c
index 381ee797..a23a8e35 100644
--- a/lib/usb/usb_f103.c
+++ b/lib/usb/usb_f103.c
@@ -20,9 +20,7 @@
#include
#include
#include
-
-#include
-
+#include
#include "usb_private.h"
/** Initialize USB Device Controller.
@@ -250,4 +248,3 @@ void usbd_poll(void)
if(istr & USB_ISTR_SOF)
USB_CLR_ISTR_SOF();
}
-
diff --git a/lib/usb/usb_private.h b/lib/usb/usb_private.h
index 894771a6..453ed771 100644
--- a/lib/usb/usb_private.h
+++ b/lib/usb/usb_private.h
@@ -17,7 +17,6 @@
* along with this program. If not, see .
*/
-
#ifndef __USB_PRIVATE_H
#define __USB_PRIVATE_H
@@ -77,4 +76,3 @@ void _usbd_hw_set_address(uint8_t addr);
void _usbd_hw_endpoints_reset(void);
#endif
-
diff --git a/lib/usb/usb_standard.c b/lib/usb/usb_standard.c
index e6d07275..3e1ff99a 100644
--- a/lib/usb/usb_standard.c
+++ b/lib/usb/usb_standard.c
@@ -18,8 +18,7 @@
*/
#include
-
-#include
+#include
#include "usb_private.h"
void usbd_register_set_config_callback(void (*callback)(uint16_t wValue))
@@ -370,4 +369,3 @@ int _usbd_standard_request(struct usb_setup_data *req, uint8_t **buf,
return 0;
}
}
-