X-Git-Url: https://git.gir.st/tmk_keyboard.git/blobdiff_plain/afb08462085132acf7a1962522952f7dbf064519..8b509aa11140d4249824600aa9143fe1fca42d85:/converter/ps2_usb/Makefile diff --git a/converter/ps2_usb/Makefile b/converter/ps2_usb/Makefile index 0bba191a..5f9c4042 100644 --- a/converter/ps2_usb/Makefile +++ b/converter/ps2_usb/Makefile @@ -1,58 +1,116 @@ -# -# Makefile for PJRC Teensy -# - - # Target file name (without extension). -TARGET = ps2_usb_pjrc +TARGET ?= ps2_usb # Directory common source filess exist -TOP_DIR = ../.. +TMK_DIR ?= ../../tmk_core # Directory keyboard dependent files exist -TARGET_DIR = . +TARGET_DIR ?= . -# keyboard dependent files -SRC = main.c \ - keymap.c \ - matrix.c \ - led.c \ - ps2.c +# project specific files +SRC ?= matrix.c \ + led.c -CONFIG_H = config_pjrc.h +# +# Keymap file +# +ifdef UNIMAP_ENABLE + KEYMAP_FILE = unimap +else + ifdef ACTIONMAP_ENABLE + KEYMAP_FILE = actionmap + else + KEYMAP_FILE = keymap + endif +endif +ifdef KEYMAP + SRC := $(KEYMAP_FILE)_$(KEYMAP).c $(SRC) +else + SRC := $(KEYMAP_FILE)_plain.c $(SRC) +endif + +CONFIG_H ?= config.h + + +# MCU name +MCU ?= atmega32u2 +# Processor frequency. +# This will define a symbol, F_CPU, in all source code files equal to the +# processor frequency in Hz. You can then use this symbol in your source code to +# calculate timings. Do NOT tack on a 'UL' at the end, this will be done +# automatically to create a 32-bit value in your source code. +# +# This will be an integer division of F_USB below, as it is sourced by +# F_USB after it has run through any CPU prescalers. Note that this value +# does not *change* the processor frequency - it should merely be updated to +# reflect the processor speed set externally so that the code can use accurate +# software delays. +F_CPU ?= 16000000 -# MCU name, you MUST set this to match the board you are using -# type "make clean" after changing this, so all files will be rebuilt -#MCU = at90usb162 # Teensy 1.0 -MCU = atmega32u4 # Teensy 2.0 -#MCU = at90usb646 # Teensy++ 1.0 -#MCU = at90usb1286 # Teensy++ 2.0 +# +# LUFA specific +# +# Target architecture (see library "Board Types" documentation). +ARCH ?= AVR8 + +# Input clock frequency. +# This will define a symbol, F_USB, in all source code files equal to the +# input clock frequency (before any prescaling is performed) in Hz. This value may +# differ from F_CPU if prescaling is used on the latter, and is required as the +# raw input clock is fed directly to the PLL sections of the AVR for high speed +# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' +# at the end, this will be done automatically to create a 32-bit value in your +# source code. +# +# If no clock division is performed on the input clock inside the AVR (via the +# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. +F_USB ?= $(F_CPU) -# Processor frequency. -# Normally the first thing your program should do is set the clock prescaler, -# so your program will run at the correct speed. You should also set this -# variable to same clock speed. The _delay_ms() macro uses this, and many -# examples use this variable to calculate timings. Do not add a "UL" here. -F_CPU = 16000000 +# Interrupt driven control endpoint task +# Not work with suart debug +#OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT + +# This improves response of keyboard when wakeup +OPT_DEFS += -DSUSPEND_MODE_STANDBY + +# Boot Section Size in *bytes* +# Teensy halfKay 512 +# Teensy++ halfKay 1024 +# Atmel DFU loader 4096 +# LUFA bootloader 4096 +# USBaspLoader 2048 +BOOTLOADER_SIZE ?= 4096 +OPT_DEFS += -DBOOTLOADER_SIZE=$(BOOTLOADER_SIZE) # Build Options -# *Comment out* to disable the options. +# comment out to disable the options. # -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -NKRO_ENABLE = yes # USB Nkey Rollover +BOOTMAGIC_ENABLE ?= no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE ?= no # Mouse keys(+4700) +EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) +CONSOLE_ENABLE ?= yes # Console for debug(+400) +COMMAND_ENABLE ?= yes # Commands for debug and configuration +NKRO_ENABLE ?= yes # USB Nkey Rollover +# PS/2 Options +# +#PS2_USE_USART ?= yes # uses hardware USART engine for PS/2 signal receive(recomened) +PS2_USE_INT ?= yes # uses external interrupt for falling edge of PS/2 clock pin +#PS2_USE_BUSYWAIT ?= yes # uses primitive reference code -#---------------- Programming Options -------------------------- -PROGRAM_CMD = teensy_loader_cli -mmcu=$(MCU) -w -v $(TARGET).hex +# Optimize size but this may cause error "relocation truncated to fit" +#EXTRALDFLAGS = -Wl,--relax +# Search Path +VPATH += $(TARGET_DIR) +VPATH += $(TMK_DIR) -include $(TOP_DIR)/protocol/pjrc.mk -include $(TOP_DIR)/protocol.mk -include $(TOP_DIR)/common.mk -include $(TOP_DIR)/rules.mk +include $(TMK_DIR)/protocol.mk +include $(TMK_DIR)/protocol/lufa.mk +include $(TMK_DIR)/common.mk +include $(TMK_DIR)/rules.mk