aboutsummaryrefslogtreecommitdiff
path: root/cores/arduino/USBCore.cpp
diff options
context:
space:
mode:
authorScott Allen <saydisp-git@yahoo.ca>2017-11-13 17:41:23 +0100
committerMartino Facchin <m.facchin@arduino.cc>2017-11-13 17:41:34 +0100
commit7d4bca50419f2b2e57f92e9bec1cbbbe6d846fc1 (patch)
tree9fe993a839ec06b4faeb3f920ab8031369385319 /cores/arduino/USBCore.cpp
parent31223160ebfeb6aef21dded0572003eedb2b8fd1 (diff)
Always read key to check for new LUFA bootloader
Instead of checking for the NEW_LUFA_SIGNATURE once in program memory and then setting a flag which is used for further checks, a function is used that always checks program memory directly. If a flag is used, there's a slight chance that its location in RAM could fall on MAGIC_KEY_POS. In this case, an aborted USB auto-reset sequence may fail.
Diffstat (limited to 'cores/arduino/USBCore.cpp')
-rw-r--r--cores/arduino/USBCore.cpp7
1 files changed, 0 insertions, 7 deletions
diff --git a/cores/arduino/USBCore.cpp b/cores/arduino/USBCore.cpp
index e00fb02..81f689d 100644
--- a/cores/arduino/USBCore.cpp
+++ b/cores/arduino/USBCore.cpp
@@ -35,7 +35,6 @@ extern const u16 STRING_LANGUAGE[] PROGMEM;
extern const u8 STRING_PRODUCT[] PROGMEM;
extern const u8 STRING_MANUFACTURER[] PROGMEM;
extern const DeviceDescriptor USB_DeviceDescriptorIAD PROGMEM;
-extern bool _updatedLUFAbootloader;
const u16 STRING_LANGUAGE[2] = {
(3<<8) | (2+2),
@@ -819,12 +818,6 @@ void USBDevice_::attach()
UDIEN = (1<<EORSTE) | (1<<SOFE) | (1<<SUSPE); // Enable interrupts for EOR (End of Reset), SOF (start of frame) and SUSPEND
TX_RX_LED_INIT;
-
-#if MAGIC_KEY_POS != (RAMEND-1)
- if (pgm_read_word(FLASHEND - 1) == NEW_LUFA_SIGNATURE) {
- _updatedLUFAbootloader = true;
- }
-#endif
}
void USBDevice_::detach()