mirror of
https://github.com/qmk/qmk_firmware.git
synced 2025-06-07 00:42:50 +00:00
Minor cleanup of the CDC bootloader.
This commit is contained in:
parent
72fc4a204d
commit
1f33bc2fd3
@ -96,7 +96,7 @@ void Application_Jump_Check(void)
|
|||||||
{
|
{
|
||||||
/* Turn off the watchdog */
|
/* Turn off the watchdog */
|
||||||
MCUSR &= ~(1<<WDRF);
|
MCUSR &= ~(1<<WDRF);
|
||||||
wdt_disable();
|
wdt_disable();
|
||||||
|
|
||||||
/* Clear the boot key and jump to the user application */
|
/* Clear the boot key and jump to the user application */
|
||||||
MagicBootKey = 0;
|
MagicBootKey = 0;
|
||||||
@ -129,7 +129,7 @@ int main(void)
|
|||||||
|
|
||||||
/* Disconnect from the host - USB interface will be reset later along with the AVR */
|
/* Disconnect from the host - USB interface will be reset later along with the AVR */
|
||||||
USB_Detach();
|
USB_Detach();
|
||||||
|
|
||||||
/* Unlock the forced application start mode of the bootloader if it is restarted */
|
/* Unlock the forced application start mode of the bootloader if it is restarted */
|
||||||
MagicBootKey = MAGIC_BOOT_KEY;
|
MagicBootKey = MAGIC_BOOT_KEY;
|
||||||
|
|
||||||
@ -442,7 +442,7 @@ static void CDC_Task(void)
|
|||||||
}
|
}
|
||||||
else if (Command == AVR109_COMMAND_SetCurrentAddress)
|
else if (Command == AVR109_COMMAND_SetCurrentAddress)
|
||||||
{
|
{
|
||||||
/* Set the current address to that given by the host */
|
/* Set the current address to that given by the host (translate 16-bit word address to byte address) */
|
||||||
CurrAddress = (FetchNextCommandByte() << 9);
|
CurrAddress = (FetchNextCommandByte() << 9);
|
||||||
CurrAddress |= (FetchNextCommandByte() << 1);
|
CurrAddress |= (FetchNextCommandByte() << 1);
|
||||||
|
|
||||||
@ -460,7 +460,7 @@ static void CDC_Task(void)
|
|||||||
for (uint8_t CurrByte = 0; CurrByte < 7; CurrByte++)
|
for (uint8_t CurrByte = 0; CurrByte < 7; CurrByte++)
|
||||||
WriteNextResponseByte(SOFTWARE_IDENTIFIER[CurrByte]);
|
WriteNextResponseByte(SOFTWARE_IDENTIFIER[CurrByte]);
|
||||||
}
|
}
|
||||||
else if (Command == AVR109_COMMAND_ReadBootloaderVersion)
|
else if (Command == AVR109_COMMAND_ReadBootloaderSWVersion)
|
||||||
{
|
{
|
||||||
WriteNextResponseByte('0' + BOOTLOADER_VERSION_MAJOR);
|
WriteNextResponseByte('0' + BOOTLOADER_VERSION_MAJOR);
|
||||||
WriteNextResponseByte('0' + BOOTLOADER_VERSION_MINOR);
|
WriteNextResponseByte('0' + BOOTLOADER_VERSION_MINOR);
|
||||||
|
@ -70,7 +70,7 @@
|
|||||||
|
|
||||||
/** Magic bootloader key to unlock forced application start mode. */
|
/** Magic bootloader key to unlock forced application start mode. */
|
||||||
#define MAGIC_BOOT_KEY 0xDC42
|
#define MAGIC_BOOT_KEY 0xDC42
|
||||||
|
|
||||||
/* Enums: */
|
/* Enums: */
|
||||||
/** Possible memory types that can be addressed via the bootloader. */
|
/** Possible memory types that can be addressed via the bootloader. */
|
||||||
enum AVR109_Memories
|
enum AVR109_Memories
|
||||||
@ -78,7 +78,7 @@
|
|||||||
MEMORY_TYPE_FLASH = 'F',
|
MEMORY_TYPE_FLASH = 'F',
|
||||||
MEMORY_TYPE_EEPROM = 'E',
|
MEMORY_TYPE_EEPROM = 'E',
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Possible commands that can be issued to the bootloader. */
|
/** Possible commands that can be issued to the bootloader. */
|
||||||
enum AVR109_Commands
|
enum AVR109_Commands
|
||||||
{
|
{
|
||||||
@ -99,7 +99,8 @@
|
|||||||
AVR109_COMMAND_WriteLockbits = 'l',
|
AVR109_COMMAND_WriteLockbits = 'l',
|
||||||
AVR109_COMMAND_EraseFLASH = 'e',
|
AVR109_COMMAND_EraseFLASH = 'e',
|
||||||
AVR109_COMMAND_ReadSignature = 's',
|
AVR109_COMMAND_ReadSignature = 's',
|
||||||
AVR109_COMMAND_ReadBootloaderVersion = 'V',
|
AVR109_COMMAND_ReadBootloaderSWVersion = 'V',
|
||||||
|
AVR109_COMMAND_ReadBootloaderHWVersion = 'v',
|
||||||
AVR109_COMMAND_ReadBootloaderIdentifier = 'S',
|
AVR109_COMMAND_ReadBootloaderIdentifier = 'S',
|
||||||
AVR109_COMMAND_ReadBootloaderInterface = 'p',
|
AVR109_COMMAND_ReadBootloaderInterface = 'p',
|
||||||
AVR109_COMMAND_SetCurrentAddress = 'A',
|
AVR109_COMMAND_SetCurrentAddress = 'A',
|
||||||
@ -112,7 +113,7 @@
|
|||||||
AVR109_COMMAND_ClearLED = 'y',
|
AVR109_COMMAND_ClearLED = 'y',
|
||||||
AVR109_COMMAND_ExitBootloader = 'E',
|
AVR109_COMMAND_ExitBootloader = 'E',
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Type Defines: */
|
/* Type Defines: */
|
||||||
/** Type define for a non-returning pointer to the start of the loaded application in flash memory. */
|
/** Type define for a non-returning pointer to the start of the loaded application in flash memory. */
|
||||||
typedef void (*AppPtr_t)(void) ATTR_NO_RETURN;
|
typedef void (*AppPtr_t)(void) ATTR_NO_RETURN;
|
||||||
|
Loading…
Reference in New Issue
Block a user