diff --git a/lib/stm32/common/st_usbfs_core.c b/lib/stm32/common/st_usbfs_core.c index 0dba875b..b7c949f8 100644 --- a/lib/stm32/common/st_usbfs_core.c +++ b/lib/stm32/common/st_usbfs_core.c @@ -23,6 +23,7 @@ #include #include #include +#include #include "../../usb/usb_private.h" #include "st_usbfs_core.h" diff --git a/lib/stm32/st_usbfs_v1.c b/lib/stm32/st_usbfs_v1.c index b6503596..e04952f3 100644 --- a/lib/stm32/st_usbfs_v1.c +++ b/lib/stm32/st_usbfs_v1.c @@ -22,6 +22,7 @@ #include #include #include +#include #include "../usb/usb_private.h" #include "common/st_usbfs_core.h" diff --git a/lib/stm32/st_usbfs_v2.c b/lib/stm32/st_usbfs_v2.c index a8ce1a83..453b9a30 100644 --- a/lib/stm32/st_usbfs_v2.c +++ b/lib/stm32/st_usbfs_v2.c @@ -23,6 +23,7 @@ #include #include #include +#include #include "../usb/usb_private.h" #include "common/st_usbfs_core.h" diff --git a/lib/usb/usb.c b/lib/usb/usb.c index 12bc431c..2108a338 100644 --- a/lib/usb/usb.c +++ b/lib/usb/usb.c @@ -37,6 +37,7 @@ LGPL License Terms @ref lgpl_license #include #include +#include #include "usb_private.h" usbd_device *usbd_init(const usbd_driver *driver, @@ -110,6 +111,11 @@ void usbd_register_extra_string(usbd_device *usbd_dev, int index, const char* st } } +void usbd_register_bos_descriptor(usbd_device *const usbd_dev, const usb_bos_descriptor *const bos) +{ + usbd_dev->bos = bos; +} + void _usbd_reset(usbd_device *usbd_dev) { usbd_dev->current_address = 0; @@ -171,4 +177,3 @@ void usbd_ep_nak_set(usbd_device *usbd_dev, uint8_t addr, uint8_t nak) } /**@}*/ - diff --git a/lib/usb/usb_control.c b/lib/usb/usb_control.c index 531d43a5..33c57ee3 100644 --- a/lib/usb/usb_control.c +++ b/lib/usb/usb_control.c @@ -37,6 +37,7 @@ LGPL License Terms @ref lgpl_license #include #include +#include #include "usb_private.h" /* @@ -313,4 +314,3 @@ void _usbd_control_in(usbd_device *usbd_dev, uint8_t ea) stall_transaction(usbd_dev); } } - diff --git a/lib/usb/usb_dwc_common.c b/lib/usb/usb_dwc_common.c index 162bfd7c..f989ee75 100644 --- a/lib/usb/usb_dwc_common.c +++ b/lib/usb/usb_dwc_common.c @@ -20,6 +20,7 @@ #include #include #include +#include #include #include "usb_private.h" #include "usb_dwc_common.h" diff --git a/lib/usb/usb_efm32.c b/lib/usb/usb_efm32.c index 4f7fa254..b8d34b39 100644 --- a/lib/usb/usb_efm32.c +++ b/lib/usb/usb_efm32.c @@ -30,6 +30,7 @@ #include #include #include +#include #include "usb_private.h" /**@{*/ @@ -433,4 +434,4 @@ const struct _usbd_driver efm32lg_usb_driver = { .rx_fifo_size = RX_FIFO_SIZE, }; -/**@}*/ \ No newline at end of file +/**@}*/ diff --git a/lib/usb/usb_efm32hg.c b/lib/usb/usb_efm32hg.c index 5459566e..1218e509 100644 --- a/lib/usb/usb_efm32hg.c +++ b/lib/usb/usb_efm32hg.c @@ -34,6 +34,7 @@ #include #include #include +#include #include #include "usb_private.h" #include "usb_dwc_common.h" @@ -137,4 +138,4 @@ const struct _usbd_driver efm32hg_usb_driver = { .rx_fifo_size = RX_FIFO_SIZE, }; -/**@}*/ \ No newline at end of file +/**@}*/ diff --git a/lib/usb/usb_f107.c b/lib/usb/usb_f107.c index 52df7172..e0a0c19d 100644 --- a/lib/usb/usb_f107.c +++ b/lib/usb/usb_f107.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include "usb_private.h" #include "usb_dwc_common.h" diff --git a/lib/usb/usb_f207.c b/lib/usb/usb_f207.c index 4a1190aa..3df4d779 100644 --- a/lib/usb/usb_f207.c +++ b/lib/usb/usb_f207.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include "usb_private.h" #include "usb_dwc_common.h" diff --git a/lib/usb/usb_lm4f.c b/lib/usb/usb_lm4f.c index 1d0d688a..510eb922 100644 --- a/lib/usb/usb_lm4f.c +++ b/lib/usb/usb_lm4f.c @@ -103,6 +103,7 @@ #include #include #include +#include #include "../../lib/usb/usb_private.h" #include diff --git a/lib/usb/usb_msc.c b/lib/usb/usb_msc.c index e26017a5..ff25c526 100644 --- a/lib/usb/usb_msc.c +++ b/lib/usb/usb_msc.c @@ -23,6 +23,7 @@ #include #include #include +#include #include #include "usb_private.h" diff --git a/lib/usb/usb_private.h b/lib/usb/usb_private.h index 9e5e1181..57e57913 100644 --- a/lib/usb/usb_private.h +++ b/lib/usb/usb_private.h @@ -47,6 +47,7 @@ LGPL License Terms @ref lgpl_license struct _usbd_device { const struct usb_device_descriptor *desc; const struct usb_config_descriptor *config; + const usb_bos_descriptor *bos; const char * const *strings; int num_strings; @@ -164,4 +165,3 @@ struct _usbd_driver { }; #endif - diff --git a/lib/usb/usb_standard.c b/lib/usb/usb_standard.c index 7057f2de..32a0c71a 100644 --- a/lib/usb/usb_standard.c +++ b/lib/usb/usb_standard.c @@ -37,6 +37,7 @@ LGPL License Terms @ref lgpl_license #include #include +#include #include "usb_private.h" int usbd_register_set_config_callback(usbd_device *usbd_dev,