Skip to content

Commit e5fc960

Browse files
committed
Preliminary toggle for core USB
1 parent 5ae2f68 commit e5fc960

File tree

5 files changed

+15
-1
lines changed

5 files changed

+15
-1
lines changed

boards.txt

+7
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
# License along with this library; if not, write to the Free Software
1515
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
1616

17+
menu.usbstack=Arduino USB Stack
18+
1719
# Arduino Zero (Prorgamming Port)
1820
# ---------------------------------------
1921
arduino_zero_edbg.name=Arduino Zero (Programming Port)
@@ -96,6 +98,11 @@ arduino_zero_native.bootloader.tool=openocd
9698
arduino_zero_native.bootloader.tool.default=openocd
9799
arduino_zero_native.bootloader.file=zero/samd21_sam_ba.bin
98100

101+
arduino_zero_native.menu.usbstack.enabled=Enabled
102+
arduino_zero_native.menu.usbstack.enabled.build.flags.usbstack=-DUSBCON
103+
arduino_zero_native.menu.usbstack.disabled=Disabled
104+
arduino_zero_native.menu.usbstack.disabled.build.flags.usbstack=-CDC_DISABLED
105+
99106
# Arduino MKR1000
100107
# -----------------------
101108
mkr1000.name=Arduino MKR1000

cores/arduino/Arduino.h

+2
Original file line numberDiff line numberDiff line change
@@ -106,11 +106,13 @@ extern void analogOutputInit( void ) ;
106106
}
107107
#endif
108108

109+
#if defined(USBCON)
109110
// USB Device
110111
#include "USB/USBDesc.h"
111112
#include "USB/USBCore.h"
112113
#include "USB/USBAPI.h"
113114
#include "USB/USB_host.h"
115+
#endif
114116

115117
// ARM toolchain doesn't provide itoa etc, provide them
116118
#include "api/itoa.h"

cores/arduino/USB/samd21_host.c

+3
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
1717
*/
1818

19+
#ifdef USBCON
1920

2021
#include <stdio.h>
2122
#include <stdint.h>
@@ -516,3 +517,5 @@ uint32_t UHD_Pipe_Is_Transfer_Complete(uint32_t ul_pipe, uint32_t ul_token_type)
516517
// }
517518

518519
#endif // HOST_DEFINED
520+
521+
#endif

cores/arduino/main.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@
2424
void initVariant() __attribute__((weak));
2525
void initVariant() { }
2626

27+
#if defined(USBCON)
2728
extern USBDeviceClass USBDevice;
29+
#endif
2830

2931
// Initialize C library
3032
extern "C" void __libc_init_array(void);

platform.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ compiler.libraries.ldflags=
7777

7878
# USB Flags
7979
# ---------
80-
build.usb_flags=-DUSB_VID={build.vid} -DUSB_PID={build.pid} -DUSBCON '-DUSB_MANUFACTURER={build.usb_manufacturer}' '-DUSB_PRODUCT={build.usb_product}'
80+
build.usb_flags=-DUSB_VID={build.vid} -DUSB_PID={build.pid} '-DUSB_MANUFACTURER={build.usb_manufacturer}' '-DUSB_PRODUCT={build.usb_product}' {build.flags.usbstack}
8181

8282
# Default usb manufacturer will be replaced at compile time using
8383
# numeric vendor ID if available or by board's specific value.

0 commit comments

Comments
 (0)