Преглед на файлове

Add some defaults for ATmega32A to mcu_selection.mk (#6253)

* Add some defaults for ATmega32A to mcu_selection.mk

* Remove boilerplate from templates

* Relax INTERRUPT_CONTROL_ENDPOINT and PROGRAM_CMD

* Apply suggestions from code review

Co-Authored-By: Drashna Jaelre <drashna@live.com>
fauxpark преди 5 години
родител
ревизия
405dea01be
променени са 3 файла, в които са добавени 24 реда и са изтрити 49 реда
  1. 24 2
      quantum/mcu_selection.mk
  2. 0 36
      quantum/template/avr/rules.mk
  3. 0 11
      quantum/template/ps2avrgb/rules.mk

+ 24 - 2
quantum/mcu_selection.mk

@@ -1,4 +1,3 @@
-
 ifneq ($(findstring STM32F303, $(MCU)),)
   ## chip/board settings
   # - the next two should match the directories in
@@ -54,7 +53,7 @@ ifneq (,$(filter $(MCU),atmega32u4 at90usb1286))
   # LUFA specific
   #
   # Target architecture (see library "Board Types" documentation).
-  ARCH ?= AVR8
+  ARCH = AVR8
 
   # Input clock frequency.
   #     This will define a symbol, F_USB, in all source code files equal to the
@@ -68,4 +67,27 @@ ifneq (,$(filter $(MCU),atmega32u4 at90usb1286))
   #     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)
+
+  # Interrupt driven control endpoint task
+  ifeq (,$(filter $(NO_INTERRUPT_CONTROL_ENDPOINT),yes))
+    OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
+  endif
+endif
+
+ifneq (,$(filter $(MCU),atmega32a))
+  PROTOCOL = VUSB
+
+  # 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.
+  F_CPU ?= 12000000
+
+  # unsupported features for now
+  NO_UART ?= yes
+  NO_SUSPEND_POWER_DOWN ?= yes
+
+  # Programming options
+  PROGRAM_CMD ?= ./util/atmega32a_program.py $(TARGET).hex
 endif

+ 0 - 36
quantum/template/avr/rules.mk

@@ -1,42 +1,6 @@
 # MCU name
 MCU = atmega32u4
 
-# 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
-
-
-#
-# 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)
-
-# Interrupt driven control endpoint task(+60)
-OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
-
 
 # Bootloader selection
 #   Teensy       halfkay

+ 0 - 11
quantum/template/ps2avrgb/rules.mk

@@ -1,13 +1,5 @@
 # MCU name
 MCU = atmega32a
-PROTOCOL = VUSB
-
-# unsupported features for now
-NO_UART = yes
-NO_SUSPEND_POWER_DOWN = yes
-
-# processor frequency
-F_CPU = 12000000
 
 # Bootloader
 #     This definition is optional, and if your keyboard supports multiple bootloaders of
@@ -28,6 +20,3 @@ RGBLIGHT_CUSTOM_DRIVER = yes
 OPT_DEFS = -DDEBUG_LEVEL=0
 
 SRC += i2c_master.c
-
-# programming options
-PROGRAM_CMD = ./util/atmega32a_program.py $(TARGET).hex