forked from mfulz_github/qmk_firmware
		
	 e50867d52d
			
		
	
	
		e50867d52d
		
			
		
	
	
	
	
		
			
			* Add support for RISC-V builds and GD32VF103 MCU * Add toolchain selection in chibios.mk based on the mcu selected in mcu_selection.mk * Reorder and added comments to chibios.mk to have a streamlined makefile * Add GD32VF103 mcu to possible targets for QMK. * Add STM32 compatibility for GD32VF103 MCU, this is hacky but more efficent then rewriting every driver. * Add GigaDevice DFU bootloader as flash target, please note that dfu-util of at least version 0.10 is needed. * Add analog driver compatibility * Add apa102 bitbang driver compatibility * Add ws2812 bitbang driver compatibility * Add eeprom in flash emulation compatibility * Allow faster re-builds with ccache * Add SiPeed Longan Nano to platform files * Add SiPeed Longan Nano Onekeys * Make quine compatible with other bootloaders * Support builds with picolibc * Add risc-v toolchain to arch and debian/ubuntu scripts
		
			
				
	
	
		
			39 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| """Information that should be available to the python library.
 | |
| """
 | |
| from os import environ
 | |
| from pathlib import Path
 | |
| 
 | |
| # The root of the qmk_firmware tree.
 | |
| QMK_FIRMWARE = Path.cwd()
 | |
| 
 | |
| # Upstream repo url
 | |
| QMK_FIRMWARE_UPSTREAM = 'qmk/qmk_firmware'
 | |
| 
 | |
| # This is the number of directories under `qmk_firmware/keyboards` that will be traversed. This is currently a limitation of our make system.
 | |
| MAX_KEYBOARD_SUBFOLDERS = 5
 | |
| 
 | |
| # Supported processor types
 | |
| CHIBIOS_PROCESSORS = 'cortex-m0', 'cortex-m0plus', 'cortex-m3', 'cortex-m4', 'MKL26Z64', 'MK20DX128', 'MK20DX256', 'MK66FX1M0', 'STM32F042', 'STM32F072', 'STM32F103', 'STM32F303', 'STM32F401', 'STM32F407', 'STM32F411', 'STM32F446', 'STM32G431', 'STM32G474', 'STM32L412', 'STM32L422', 'STM32L433', 'STM32L443', 'GD32VF103'
 | |
| LUFA_PROCESSORS = 'at90usb162', 'atmega16u2', 'atmega32u2', 'atmega16u4', 'atmega32u4', 'at90usb646', 'at90usb647', 'at90usb1286', 'at90usb1287', None
 | |
| VUSB_PROCESSORS = 'atmega32a', 'atmega328p', 'atmega328', 'attiny85'
 | |
| 
 | |
| # Common format strings
 | |
| DATE_FORMAT = '%Y-%m-%d'
 | |
| DATETIME_FORMAT = '%Y-%m-%d %H:%M:%S %Z'
 | |
| TIME_FORMAT = '%H:%M:%S'
 | |
| 
 | |
| # Used when generating matrix locations
 | |
| COL_LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijilmnopqrstuvwxyz'
 | |
| ROW_LETTERS = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnop'
 | |
| 
 | |
| # Mapping between info.json and config.h keys
 | |
| LED_INDICATORS = {
 | |
|     'caps_lock': 'LED_CAPS_LOCK_PIN',
 | |
|     'num_lock': 'LED_NUM_LOCK_PIN',
 | |
|     'scroll_lock': 'LED_SCROLL_LOCK_PIN',
 | |
| }
 | |
| 
 | |
| # Constants that should match their counterparts in make
 | |
| BUILD_DIR = environ.get('BUILD_DIR', '.build')
 | |
| KEYBOARD_OUTPUT_PREFIX = f'{BUILD_DIR}/obj_'
 |