mirror of
				https://github.com/mfulz/qmk_firmware.git
				synced 2025-11-04 07:12:33 +01:00 
			
		
		
		
	This reverts commit e2d4cd1a41c667da186891e3dbaf535c6b0717df.
This commit is contained in:
		
							parent
							
								
									1b0272e801
								
							
						
					
					
						commit
						70ce4ba56f
					
				@ -27,7 +27,6 @@
 | 
				
			|||||||
# qmk-dfu        QMK DFU (LUFA + blinkenlight)
 | 
					# qmk-dfu        QMK DFU (LUFA + blinkenlight)
 | 
				
			||||||
# bootloadHID    HIDBootFlash compatible (ATmega32A)
 | 
					# bootloadHID    HIDBootFlash compatible (ATmega32A)
 | 
				
			||||||
# USBasp         USBaspLoader (ATmega328P)
 | 
					# USBasp         USBaspLoader (ATmega328P)
 | 
				
			||||||
# kiibohd        Input:Club Kiibohd bootloader (only used on their boards)
 | 
					 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# BOOTLOADER_SIZE can still be defined manually, but it's recommended
 | 
					# BOOTLOADER_SIZE can still be defined manually, but it's recommended
 | 
				
			||||||
# you add any possible configuration to this list
 | 
					# you add any possible configuration to this list
 | 
				
			||||||
@ -90,18 +89,6 @@ ifeq ($(strip $(BOOTLOADER)), lufa-ms)
 | 
				
			|||||||
    BOOTLOADER_SIZE = 6144
 | 
					    BOOTLOADER_SIZE = 6144
 | 
				
			||||||
    FIRMWARE_FORMAT = bin
 | 
					    FIRMWARE_FORMAT = bin
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
ifeq ($(strip $(BOOTLOADER)), kiibohd)
 | 
					 | 
				
			||||||
    OPT_DEFS += -DBOOTLOADER_KIIBOHD
 | 
					 | 
				
			||||||
    ifeq ($(strip $(MCU)), MK20DX128)
 | 
					 | 
				
			||||||
        MCU_LDSCRIPT = MK20DX128BLDR4
 | 
					 | 
				
			||||||
    endif
 | 
					 | 
				
			||||||
    ifeq ($(strip $(MCU)), MK20DX256)
 | 
					 | 
				
			||||||
        MCU_LDSCRIPT = MK20DX256BLDR8
 | 
					 | 
				
			||||||
    endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    DFU_ARGS = -d 1C11:B007
 | 
					 | 
				
			||||||
    DFU_SUFFIX_ARGS = -v 1C11 -p B007
 | 
					 | 
				
			||||||
endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
ifdef BOOTLOADER_SIZE
 | 
					ifdef BOOTLOADER_SIZE
 | 
				
			||||||
    OPT_DEFS += -DBOOTLOADER_SIZE=$(strip $(BOOTLOADER_SIZE))
 | 
					    OPT_DEFS += -DBOOTLOADER_SIZE=$(strip $(BOOTLOADER_SIZE))
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										1
									
								
								keyboards/ergodox_infinity/bootloader_defs.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								keyboards/ergodox_infinity/bootloader_defs.h
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
				
			|||||||
 | 
					#define KIIBOHD_BOOTLOADER
 | 
				
			||||||
@ -1,18 +1,32 @@
 | 
				
			|||||||
# MCU name
 | 
					# MCU name
 | 
				
			||||||
MCU = MK20DX256
 | 
					MCU = MK20DX256
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Linker script to use
 | 
				
			||||||
 | 
					# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
 | 
				
			||||||
 | 
					#   or <this_dir>/ld/
 | 
				
			||||||
 | 
					# - NOTE: a custom ld script is needed for EEPROM on Teensy LC
 | 
				
			||||||
 | 
					# - LDSCRIPT =
 | 
				
			||||||
 | 
					#   - MKL26Z64 for Teensy LC
 | 
				
			||||||
 | 
					#   - MK20DX128 for Teensy 3.0
 | 
				
			||||||
 | 
					#   - MK20DX256 for Teensy 3.1 and 3.2
 | 
				
			||||||
 | 
					#   - MK20DX128BLDR4 for Infinity 60% with Kiibohd bootloader
 | 
				
			||||||
 | 
					#   - MK20DX256BLDR8 for Infinity ErgoDox with Kiibohd bootloader
 | 
				
			||||||
 | 
					MCU_LDSCRIPT = MK20DX256BLDR8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Vector table for application
 | 
					# Vector table for application
 | 
				
			||||||
# 0x00000000-0x00001000 area is occupied by bootlaoder.*/
 | 
					# 0x00000000-0x00001000 area is occupied by bootlaoder.*/
 | 
				
			||||||
# The CORTEX_VTOR... is needed only for MCHCK/Infinity KB
 | 
					# The CORTEX_VTOR... is needed only for MCHCK/Infinity KB
 | 
				
			||||||
OPT_DEFS += -DCORTEX_VTOR_INIT=0x00002000
 | 
					OPT_DEFS += -DCORTEX_VTOR_INIT=0x00002000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Bootloader selection
 | 
					BOOTLOADER = dfu
 | 
				
			||||||
BOOTLOADER = kiibohd
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Build Options
 | 
					# Build Options
 | 
				
			||||||
#   comment out to disable the options.
 | 
					#   comment out to disable the options.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DFU_ARGS = -d 1c11:b007
 | 
				
			||||||
 | 
					DFU_SUFFIX_ARGS = -p b007 -v 1c11
 | 
				
			||||||
 | 
					
 | 
				
			||||||
BOOTMAGIC_ENABLE = no  # Virtual DIP switch configuration
 | 
					BOOTMAGIC_ENABLE = no  # Virtual DIP switch configuration
 | 
				
			||||||
MOUSEKEY_ENABLE  = yes # Mouse keys
 | 
					MOUSEKEY_ENABLE  = yes # Mouse keys
 | 
				
			||||||
EXTRAKEY_ENABLE  = yes # Audio control and System control
 | 
					EXTRAKEY_ENABLE  = yes # Audio control and System control
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										1
									
								
								keyboards/infinity60/bootloader_defs.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								keyboards/infinity60/bootloader_defs.h
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
				
			|||||||
 | 
					#define KIIBOHD_BOOTLOADER
 | 
				
			||||||
@ -1,6 +1,17 @@
 | 
				
			|||||||
# MCU name
 | 
					# MCU name
 | 
				
			||||||
MCU = MK20DX128
 | 
					MCU = MK20DX128
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Linker script to use
 | 
				
			||||||
 | 
					# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
 | 
				
			||||||
 | 
					#   or <this_dir>/ld/
 | 
				
			||||||
 | 
					# - NOTE: a custom ld script is needed for EEPROM on Teensy LC
 | 
				
			||||||
 | 
					# - LDSCRIPT =
 | 
				
			||||||
 | 
					#   - MKL26Z64 for Teensy LC
 | 
				
			||||||
 | 
					#   - MK20DX128 for Teensy 3.0
 | 
				
			||||||
 | 
					#   - MK20DX256 for Teensy 3.1 and 3.2
 | 
				
			||||||
 | 
					#   - MK20DX128BLDR4 for Infinity with Kiibohd bootloader
 | 
				
			||||||
 | 
					MCU_LDSCRIPT = MK20DX128BLDR4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Board: it should exist either in <chibios>/os/hal/boards/
 | 
					# Board: it should exist either in <chibios>/os/hal/boards/
 | 
				
			||||||
#  or <this_dir>/boards
 | 
					#  or <this_dir>/boards
 | 
				
			||||||
# - BOARD =
 | 
					# - BOARD =
 | 
				
			||||||
@ -15,13 +26,15 @@ BOARD = MCHCK_K20
 | 
				
			|||||||
# The CORTEX_VTOR... is needed only for MCHCK/Infinity KB
 | 
					# The CORTEX_VTOR... is needed only for MCHCK/Infinity KB
 | 
				
			||||||
OPT_DEFS = -DCORTEX_VTOR_INIT=0x00001000
 | 
					OPT_DEFS = -DCORTEX_VTOR_INIT=0x00001000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Bootloader selection
 | 
					BOOTLOADER = dfu
 | 
				
			||||||
BOOTLOADER = kiibohd
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Build Options
 | 
					# Build Options
 | 
				
			||||||
#   comment out to disable the options.
 | 
					#   comment out to disable the options.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DFU_ARGS = -d 1c11:b007
 | 
				
			||||||
 | 
					DFU_SUFFIX_ARGS = -p b007 -v 1c11
 | 
				
			||||||
 | 
					
 | 
				
			||||||
BOOTMAGIC_ENABLE = no	# Virtual DIP switch configuration
 | 
					BOOTMAGIC_ENABLE = no	# Virtual DIP switch configuration
 | 
				
			||||||
## (Note that for BOOTMAGIC on Teensy LC you have to use a custom .ld script.)
 | 
					## (Note that for BOOTMAGIC on Teensy LC you have to use a custom .ld script.)
 | 
				
			||||||
MOUSEKEY_ENABLE = yes	# Mouse keys
 | 
					MOUSEKEY_ENABLE = yes	# Mouse keys
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										1
									
								
								keyboards/k_type/bootloader_defs.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								keyboards/k_type/bootloader_defs.h
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
				
			|||||||
 | 
					#define KIIBOHD_BOOTLOADER
 | 
				
			||||||
@ -1,14 +1,28 @@
 | 
				
			|||||||
# MCU name
 | 
					# MCU name
 | 
				
			||||||
MCU = MK20DX256
 | 
					MCU = MK20DX256
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Linker script to use
 | 
				
			||||||
 | 
					# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
 | 
				
			||||||
 | 
					#   or <this_dir>/ld/
 | 
				
			||||||
 | 
					# - NOTE: a custom ld script is needed for EEPROM on Teensy LC
 | 
				
			||||||
 | 
					# - LDSCRIPT =
 | 
				
			||||||
 | 
					#   - MKL26Z64 for Teensy LC
 | 
				
			||||||
 | 
					#   - MK20DX128 for Teensy 3.0
 | 
				
			||||||
 | 
					#   - MK20DX256 for Teensy 3.1 and 3.2
 | 
				
			||||||
 | 
					#   - MK20DX128BLDR4 for Infinity with Kiibohd bootloader
 | 
				
			||||||
 | 
					#   - MK20DX256BLDR8 for Infinity ErgoDox with Kiibohd bootloader
 | 
				
			||||||
 | 
					MCU_LDSCRIPT = MK20DX256BLDR8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Board: it should exist either in <chibios>/os/hal/boards/
 | 
					# Board: it should exist either in <chibios>/os/hal/boards/
 | 
				
			||||||
#  or <this_dir>/boards
 | 
					#  or <this_dir>/boards
 | 
				
			||||||
# This board was copied from PJRC_TEENSY_3_1. The only difference should be a
 | 
					# This board was copied from PJRC_TEENSY_3_1. The only difference should be a
 | 
				
			||||||
# hack to ensure the watchdog has started before trying to disable it.
 | 
					# hack to ensure the watchdog has started before trying to disable it.
 | 
				
			||||||
BOARD = IC_TEENSY_3_1
 | 
					BOARD = IC_TEENSY_3_1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Bootloader selection
 | 
					DFU_ARGS = -d 1c11:b007
 | 
				
			||||||
BOOTLOADER = kiibohd
 | 
					DFU_SUFFIX_ARGS = -p b007 -v 1c11
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOTLOADER = dfu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Build Options
 | 
					# Build Options
 | 
				
			||||||
#   comment out to disable the options.
 | 
					#   comment out to disable the options.
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										1
									
								
								keyboards/whitefox/bootloader_defs.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								keyboards/whitefox/bootloader_defs.h
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
				
			|||||||
 | 
					#define KIIBOHD_BOOTLOADER
 | 
				
			||||||
@ -1,6 +1,18 @@
 | 
				
			|||||||
# MCU name
 | 
					# MCU name
 | 
				
			||||||
MCU = MK20DX256
 | 
					MCU = MK20DX256
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Linker script to use
 | 
				
			||||||
 | 
					# - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/
 | 
				
			||||||
 | 
					#   or <this_dir>/ld/
 | 
				
			||||||
 | 
					# - NOTE: a custom ld script is needed for EEPROM on Teensy LC
 | 
				
			||||||
 | 
					# - LDSCRIPT =
 | 
				
			||||||
 | 
					#   - MKL26Z64 for Teensy LC
 | 
				
			||||||
 | 
					#   - MK20DX128 for Teensy 3.0
 | 
				
			||||||
 | 
					#   - MK20DX256 for Teensy 3.1 and 3.2
 | 
				
			||||||
 | 
					#   - MK20DX128BLDR4 for Infinity with Kiibohd bootloader
 | 
				
			||||||
 | 
					#   - MK20DX256BLDR8 for Infinity ErgoDox with Kiibohd bootloader
 | 
				
			||||||
 | 
					MCU_LDSCRIPT = MK20DX256BLDR8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Board: it should exist either in <chibios>/os/hal/boards/
 | 
					# Board: it should exist either in <chibios>/os/hal/boards/
 | 
				
			||||||
#  or <this_dir>/boards
 | 
					#  or <this_dir>/boards
 | 
				
			||||||
# - BOARD =
 | 
					# - BOARD =
 | 
				
			||||||
@ -10,8 +22,10 @@ MCU = MK20DX256
 | 
				
			|||||||
#   - MCHCK_K20 for Infinity KB
 | 
					#   - MCHCK_K20 for Infinity KB
 | 
				
			||||||
BOARD = IC_TEENSY_3_1
 | 
					BOARD = IC_TEENSY_3_1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Bootloader selection
 | 
					DFU_ARGS = -d 1c11:b007
 | 
				
			||||||
BOOTLOADER = kiibohd
 | 
					DFU_SUFFIX_ARGS = -p b007 -v 1c11
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BOOTLOADER = dfu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Build Options
 | 
					# Build Options
 | 
				
			||||||
#   comment out to disable the options.
 | 
					#   comment out to disable the options.
 | 
				
			||||||
 | 
				
			|||||||
@ -324,7 +324,7 @@ bin: $(BUILD_DIR)/$(TARGET).bin sizeafter
 | 
				
			|||||||
flash: $(BUILD_DIR)/$(TARGET).bin cpfirmware sizeafter
 | 
					flash: $(BUILD_DIR)/$(TARGET).bin cpfirmware sizeafter
 | 
				
			||||||
ifneq ($(strip $(PROGRAM_CMD)),)
 | 
					ifneq ($(strip $(PROGRAM_CMD)),)
 | 
				
			||||||
	$(PROGRAM_CMD)
 | 
						$(PROGRAM_CMD)
 | 
				
			||||||
else ifeq ($(strip $(BOOTLOADER)),kiibohd)
 | 
					else ifeq ($(strip $(BOOTLOADER)),dfu)
 | 
				
			||||||
	$(call EXEC_DFU_UTIL)
 | 
						$(call EXEC_DFU_UTIL)
 | 
				
			||||||
else ifeq ($(strip $(MCU_FAMILY)),KINETIS)
 | 
					else ifeq ($(strip $(MCU_FAMILY)),KINETIS)
 | 
				
			||||||
	$(call EXEC_TEENSY)
 | 
						$(call EXEC_TEENSY)
 | 
				
			||||||
 | 
				
			|||||||
@ -44,7 +44,7 @@ void enter_bootloader_mode_if_requested(void) {
 | 
				
			|||||||
#elif defined(KL2x) || defined(K20x) /* STM32_BOOTLOADER_ADDRESS */
 | 
					#elif defined(KL2x) || defined(K20x) /* STM32_BOOTLOADER_ADDRESS */
 | 
				
			||||||
/* Kinetis */
 | 
					/* Kinetis */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#    if defined(BOOTLOADER_KIIBOHD)
 | 
					#    if defined(KIIBOHD_BOOTLOADER)
 | 
				
			||||||
/* Kiibohd Bootloader (MCHCK and Infinity KB) */
 | 
					/* Kiibohd Bootloader (MCHCK and Infinity KB) */
 | 
				
			||||||
#        define SCB_AIRCR_VECTKEY_WRITEMAGIC 0x05FA0000
 | 
					#        define SCB_AIRCR_VECTKEY_WRITEMAGIC 0x05FA0000
 | 
				
			||||||
const uint8_t sys_reset_to_loader_magic[] = "\xff\x00\x7fRESET TO LOADER\x7f\x00\xff";
 | 
					const uint8_t sys_reset_to_loader_magic[] = "\xff\x00\x7fRESET TO LOADER\x7f\x00\xff";
 | 
				
			||||||
@ -54,14 +54,14 @@ void          bootloader_jump(void) {
 | 
				
			|||||||
    SCB->AIRCR = SCB_AIRCR_VECTKEY_WRITEMAGIC | SCB_AIRCR_SYSRESETREQ_Msk;
 | 
					    SCB->AIRCR = SCB_AIRCR_VECTKEY_WRITEMAGIC | SCB_AIRCR_SYSRESETREQ_Msk;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#    else /* defined(BOOTLOADER_KIIBOHD) */
 | 
					#    else /* defined(KIIBOHD_BOOTLOADER) */
 | 
				
			||||||
/* Default for Kinetis - expecting an ARM Teensy */
 | 
					/* Default for Kinetis - expecting an ARM Teensy */
 | 
				
			||||||
#        include "wait.h"
 | 
					#        include "wait.h"
 | 
				
			||||||
void bootloader_jump(void) {
 | 
					void bootloader_jump(void) {
 | 
				
			||||||
    wait_ms(100);
 | 
					    wait_ms(100);
 | 
				
			||||||
    __BKPT(0);
 | 
					    __BKPT(0);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#    endif /* defined(BOOTLOADER_KIIBOHD) */
 | 
					#    endif /* defined(KIIBOHD_BOOTLOADER) */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#else /* neither STM32 nor KINETIS */
 | 
					#else /* neither STM32 nor KINETIS */
 | 
				
			||||||
__attribute__((weak)) void bootloader_jump(void) {}
 | 
					__attribute__((weak)) void bootloader_jump(void) {}
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user