]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Add some defaults for ATmega32A to mcu_selection.mk (#6253)
authorfauxpark <fauxpark@gmail.com>
Thu, 8 Aug 2019 21:09:54 +0000 (07:09 +1000)
committerDrashna Jaelre <drashna@live.com>
Thu, 8 Aug 2019 21:09:54 +0000 (14:09 -0700)
* 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>
quantum/mcu_selection.mk
quantum/template/avr/rules.mk
quantum/template/ps2avrgb/rules.mk

index fa6dc8b53ca8ae8ac2a458b2893346d9fc4a228e..cca7720e9c7f85d4e8c170422c16bbea06003089 100644 (file)
@@ -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
index 133c9e363b94b577512b066969dd7464c0695c43..50deba92cf9c626c96786e0183122b10996cdde8 100644 (file)
@@ -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
index 98a920e1828cf2360db94f28c0b2f20f1d664ebb..a3ac9bd75ac4aa982a59f045176e4556bc6ebedb 100644 (file)
@@ -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