Mercurial > louis > kiibohd-controller
diff Output/pjrcUSB/arm/usb_dev.c @ 385:d8f61e15aca1
Adding jump to bootloader key
- Now enabled by default
- Added protection around remote jumps
author | Jacob Alexander <haata@kiibohd.com> |
---|---|
date | Sun, 11 Oct 2015 22:07:11 -0700 |
parents | 801e7628d977 |
children | 23a1868b4ac2 |
line wrap: on
line diff
--- a/Output/pjrcUSB/arm/usb_dev.c Fri Oct 09 22:28:31 2015 -0700 +++ b/Output/pjrcUSB/arm/usb_dev.c Sun Oct 11 22:07:11 2015 -0700 @@ -911,40 +911,9 @@ void usb_device_reload() { - if ( flashModeEnabled_define == 0 ) - { - print( NL ); - warn_print("flashModeEnabled not set, cancelling firmware reload..."); - info_msg("Set flashModeEnabled to 1 in your kll configuration."); - return; - } - // MCHCK -#if defined(_mk20dx128vlf5_) - - // MCHCK Kiibohd Variant - // Check to see if PTA3 (has a pull-up) is connected to GND (usually via jumper) - // Only allow reload if the jumper is present (security) - GPIOA_PDDR &= ~(1<<3); // Input - PORTA_PCR3 = PORT_PCR_PFE | PORT_PCR_MUX(1); // Internal pull-up - - // Check for jumper - if ( GPIOA_PDIR & (1<<3) && flashModeEnabled_define != 0 ) - { - print( NL ); - warn_print("Security jumper not present, cancelling firmware reload..."); - info_msg("Replace jumper on middle 2 pins, or manually press the firmware reload button."); - } - else - { - // Copies variable into the VBAT register, must be identical to the variable in the bootloader to jump to the bootloader flash mode - for ( int pos = 0; pos < sizeof(sys_reset_to_loader_magic); pos++ ) - (&VBAT)[ pos ] = sys_reset_to_loader_magic[ pos ]; - SOFTWARE_RESET(); - } - // Kiibohd mk20dx256vlh7 -#elif defined(_mk20dx256vlh7_) +#if defined(_mk20dx128vlf5_) || defined(_mk20dx256vlh7_) // Copies variable into the VBAT register, must be identical to the variable in the bootloader to jump to the bootloader flash mode for ( int pos = 0; pos < sizeof(sys_reset_to_loader_magic); pos++ ) (&VBAT)[ pos ] = sys_reset_to_loader_magic[ pos ];