From e211f1ea76ed1dc192c1a3fcb3ac8b18326e4675 Mon Sep 17 00:00:00 2001 From: Martino Facchin Date: Tue, 23 Jun 2015 17:50:53 +0000 Subject: [PATCH] remove setupUSB weak hook and replace with global constructors thanks @matthijskooijman --- hardware/arduino/avr/cores/arduino/main.cpp | 1 - libraries/HID/HID.cpp | 10 +--------- libraries/Keyboard/Keyboard.cpp | 4 ---- libraries/MIDIUSB/MIDIUSB.cpp | 10 +--------- libraries/MIDIUSB/MIDIUSB.h | 2 ++ libraries/Mouse/Mouse.cpp | 4 ---- libraries/MouseAndKeyboard/MouseAndKeyboard.cpp | 4 ---- 7 files changed, 4 insertions(+), 31 deletions(-) diff --git a/hardware/arduino/avr/cores/arduino/main.cpp b/hardware/arduino/avr/cores/arduino/main.cpp index f4346ece0..434cd403c 100644 --- a/hardware/arduino/avr/cores/arduino/main.cpp +++ b/hardware/arduino/avr/cores/arduino/main.cpp @@ -37,7 +37,6 @@ int main(void) initVariant(); #if defined(USBCON) - setupUSB(); USBDevice.attach(); #endif diff --git a/libraries/HID/HID.cpp b/libraries/HID/HID.cpp index 4621cb4e1..bd7d25c3d 100644 --- a/libraries/HID/HID.cpp +++ b/libraries/HID/HID.cpp @@ -111,8 +111,7 @@ bool WEAK HID_Setup(Setup& setup, u8 i) } } -// to be called by begin(), will trigger USB disconnection and reconnection -int8_t HID_Plug(void) +HID_::HID_(void) { static uint8_t endpointType[1]; @@ -137,17 +136,10 @@ int8_t HID_Plug(void) D_HIDREPORT(getsizeof_hidReportDescriptor()), D_ENDPOINT(USB_ENDPOINT_IN (HID_ENDPOINT_INT),USB_ENDPOINT_TYPE_INTERRUPT,0x40,0x01) }; - - return HID_ENDPOINT_INT; -} - -HID_::HID_(void) -{ } int HID_::begin(void) { - return HID_Plug(); } #endif /* if defined(USBCON) */ diff --git a/libraries/Keyboard/Keyboard.cpp b/libraries/Keyboard/Keyboard.cpp index 8d5a9aeac..a331d75da 100644 --- a/libraries/Keyboard/Keyboard.cpp +++ b/libraries/Keyboard/Keyboard.cpp @@ -221,10 +221,6 @@ size_t getsizeof_hidReportDescriptor() { return sizeof(_hidReportDescriptor); } -void WEAK setupUSB() { - HID.begin(); -} - uint8_t USBPutChar(uint8_t c); // press() adds the specified key (printing, non-printing, or modifier) diff --git a/libraries/MIDIUSB/MIDIUSB.cpp b/libraries/MIDIUSB/MIDIUSB.cpp index fcc2bbf12..939ca6bf5 100644 --- a/libraries/MIDIUSB/MIDIUSB.cpp +++ b/libraries/MIDIUSB/MIDIUSB.cpp @@ -39,10 +39,6 @@ ring_bufferMIDI midi_rx_buffer = {{0,0,0,0 }, 0, 0}; static MIDIDescriptor _midiInterface; -void WEAK setupUSB() { - MidiUSB.begin(); -} - int8_t WEAK MIDI_GetInterface(uint8_t* interfaceNum) { interfaceNum[0] += 2; // uses 2 @@ -171,9 +167,8 @@ void MIDI_::sendMIDI(midiEventPacket_t event) write(data, 4); } -int8_t MIDI_plug(void) +MIDI_::MIDI_(void) { - static uint8_t endpointType[2]; endpointType[0] = EP_TYPE_BULK_OUT_MIDI; // MIDI_ENDPOINT_OUT @@ -210,13 +205,10 @@ int8_t MIDI_plug(void) D_MIDI_JACK_EP(USB_ENDPOINT_IN(MIDI_ENDPOINT_IN),USB_ENDPOINT_TYPE_BULK,512), D_MIDI_AC_JACK_EP (1, 3) }; - - return MIDI_ENDPOINT_IN; } int8_t MIDI_::begin() { - return MIDI_plug(); } diff --git a/libraries/MIDIUSB/MIDIUSB.h b/libraries/MIDIUSB/MIDIUSB.h index 2dcdf8779..7fad15473 100644 --- a/libraries/MIDIUSB/MIDIUSB.h +++ b/libraries/MIDIUSB/MIDIUSB.h @@ -26,6 +26,8 @@ class MIDI_ // private: // RingBuffer *_midi_rx_buffer; public: + MIDI_(void); + int8_t begin(); virtual uint32_t available(void); diff --git a/libraries/Mouse/Mouse.cpp b/libraries/Mouse/Mouse.cpp index 6068e6b33..aeeaae5dc 100644 --- a/libraries/Mouse/Mouse.cpp +++ b/libraries/Mouse/Mouse.cpp @@ -66,10 +66,6 @@ Mouse_ Mouse; //================================================================================ // Mouse -void WEAK setupUSB() { - HID.begin(); -} - Mouse_::Mouse_(void) : _buttons(0) { } diff --git a/libraries/MouseAndKeyboard/MouseAndKeyboard.cpp b/libraries/MouseAndKeyboard/MouseAndKeyboard.cpp index 2bc762295..809ff9d50 100644 --- a/libraries/MouseAndKeyboard/MouseAndKeyboard.cpp +++ b/libraries/MouseAndKeyboard/MouseAndKeyboard.cpp @@ -91,10 +91,6 @@ size_t getsizeof_hidReportDescriptor() { return sizeof(_hidReportDescriptor); } -void WEAK setupUSB() { - HID.begin(); -} - Mouse_ Mouse; //================================================================================