diff options
-rw-r--r-- | bootloader.mk | 6 | ||||
-rw-r--r-- | common_features.mk | 2 | ||||
-rw-r--r-- | data/schemas/keyboard.jsonschema | 2 | ||||
-rw-r--r-- | docs/compatible_microcontrollers.md | 1 | ||||
-rw-r--r-- | docs/feature_backlight.md | 24 | ||||
-rw-r--r-- | docs/ja/compatible_microcontrollers.md | 1 | ||||
-rw-r--r-- | docs/spi_driver.md | 12 | ||||
-rw-r--r-- | drivers/avr/serial.c | 6 | ||||
-rw-r--r-- | drivers/avr/spi_master.c | 2 | ||||
-rw-r--r-- | drivers/avr/spi_master.h | 2 | ||||
-rw-r--r-- | drivers/avr/uart.c | 2 | ||||
-rw-r--r-- | lib/python/qmk/constants.py | 2 | ||||
-rw-r--r-- | lib/python/qmk/os_helpers/linux/__init__.py | 1 | ||||
-rw-r--r-- | quantum/backlight/backlight_avr.c | 2 | ||||
-rw-r--r-- | quantum/config_common.h | 2 | ||||
-rw-r--r-- | quantum/dynamic_keymap.c | 2 | ||||
-rw-r--r-- | quantum/mcu_selection.mk | 4 | ||||
-rw-r--r-- | util/drivers.txt | 1 | ||||
-rw-r--r-- | util/udev/50-qmk.rules | 2 |
19 files changed, 42 insertions, 34 deletions
diff --git a/bootloader.mk b/bootloader.mk index 8b4bc7a0f..fd76446e9 100644 --- a/bootloader.mk +++ b/bootloader.mk | |||
@@ -40,7 +40,7 @@ | |||
40 | ifeq ($(strip $(BOOTLOADER)), atmel-dfu) | 40 | ifeq ($(strip $(BOOTLOADER)), atmel-dfu) |
41 | OPT_DEFS += -DBOOTLOADER_ATMEL_DFU | 41 | OPT_DEFS += -DBOOTLOADER_ATMEL_DFU |
42 | OPT_DEFS += -DBOOTLOADER_DFU | 42 | OPT_DEFS += -DBOOTLOADER_DFU |
43 | ifneq (,$(filter $(MCU), atmega16u2 atmega32u2 atmega16u4 atmega32u4 at90usb646 at90usb647)) | 43 | ifneq (,$(filter $(MCU), at90usb162 atmega16u2 atmega32u2 atmega16u4 atmega32u4 at90usb646 at90usb647)) |
44 | BOOTLOADER_SIZE = 4096 | 44 | BOOTLOADER_SIZE = 4096 |
45 | endif | 45 | endif |
46 | ifneq (,$(filter $(MCU), at90usb1286 at90usb1287)) | 46 | ifneq (,$(filter $(MCU), at90usb1286 at90usb1287)) |
@@ -50,7 +50,7 @@ endif | |||
50 | ifeq ($(strip $(BOOTLOADER)), lufa-dfu) | 50 | ifeq ($(strip $(BOOTLOADER)), lufa-dfu) |
51 | OPT_DEFS += -DBOOTLOADER_LUFA_DFU | 51 | OPT_DEFS += -DBOOTLOADER_LUFA_DFU |
52 | OPT_DEFS += -DBOOTLOADER_DFU | 52 | OPT_DEFS += -DBOOTLOADER_DFU |
53 | ifneq (,$(filter $(MCU), atmega16u2 atmega32u2 atmega16u4 atmega32u4 at90usb646 at90usb647)) | 53 | ifneq (,$(filter $(MCU), at90usb162 atmega16u2 atmega32u2 atmega16u4 atmega32u4 at90usb646 at90usb647)) |
54 | BOOTLOADER_SIZE = 4096 | 54 | BOOTLOADER_SIZE = 4096 |
55 | endif | 55 | endif |
56 | ifneq (,$(filter $(MCU), at90usb1286 at90usb1287)) | 56 | ifneq (,$(filter $(MCU), at90usb1286 at90usb1287)) |
@@ -60,7 +60,7 @@ endif | |||
60 | ifeq ($(strip $(BOOTLOADER)), qmk-dfu) | 60 | ifeq ($(strip $(BOOTLOADER)), qmk-dfu) |
61 | OPT_DEFS += -DBOOTLOADER_QMK_DFU | 61 | OPT_DEFS += -DBOOTLOADER_QMK_DFU |
62 | OPT_DEFS += -DBOOTLOADER_DFU | 62 | OPT_DEFS += -DBOOTLOADER_DFU |
63 | ifneq (,$(filter $(MCU), atmega16u2 atmega32u2 atmega16u4 atmega32u4 at90usb646 at90usb647)) | 63 | ifneq (,$(filter $(MCU), at90usb162 atmega16u2 atmega32u2 atmega16u4 atmega32u4 at90usb646 at90usb647)) |
64 | BOOTLOADER_SIZE = 4096 | 64 | BOOTLOADER_SIZE = 4096 |
65 | endif | 65 | endif |
66 | ifneq (,$(filter $(MCU), at90usb1286 at90usb1287)) | 66 | ifneq (,$(filter $(MCU), at90usb1286 at90usb1287)) |
diff --git a/common_features.mk b/common_features.mk index fa92a8482..6ed7e73b6 100644 --- a/common_features.mk +++ b/common_features.mk | |||
@@ -222,7 +222,7 @@ ifeq ($(strip $(RGB_MATRIX_ENABLE)), yes) | |||
222 | $(error "$(RGB_MATRIX_DRIVER)" is not a valid matrix type) | 222 | $(error "$(RGB_MATRIX_DRIVER)" is not a valid matrix type) |
223 | endif | 223 | endif |
224 | OPT_DEFS += -DRGB_MATRIX_ENABLE | 224 | OPT_DEFS += -DRGB_MATRIX_ENABLE |
225 | ifneq (,$(filter $(MCU), atmega16u2 atmega32u2)) | 225 | ifneq (,$(filter $(MCU), atmega16u2 atmega32u2 at90usb162)) |
226 | # ATmegaxxU2 does not have hardware MUL instruction - lib8tion must be told to use software multiplication routines | 226 | # ATmegaxxU2 does not have hardware MUL instruction - lib8tion must be told to use software multiplication routines |
227 | OPT_DEFS += -DLIB8_ATTINY | 227 | OPT_DEFS += -DLIB8_ATTINY |
228 | endif | 228 | endif |
diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index 3dba21bc0..8f1c0a915 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema | |||
@@ -25,7 +25,7 @@ | |||
25 | }, | 25 | }, |
26 | "processor": { | 26 | "processor": { |
27 | "type": "string", | 27 | "type": "string", |
28 | "enum": ["cortex-m0", "cortex-m0plus", "cortex-m3", "cortex-m4", "MKL26Z64", "MK20DX128", "MK20DX256", "STM32F042", "STM32F072", "STM32F103", "STM32F303", "STM32F401", "STM32F411", "atmega16u2", "atmega32u2", "atmega16u4", "atmega32u4", "at90usb646", "at90usb647", "at90usb1286", "at90usb1287", "atmega32a", "atmega328p", "atmega328", "attiny85", "unknown"] | 28 | "enum": ["cortex-m0", "cortex-m0plus", "cortex-m3", "cortex-m4", "MKL26Z64", "MK20DX128", "MK20DX256", "STM32F042", "STM32F072", "STM32F103", "STM32F303", "STM32F401", "STM32F411", "atmega16u2", "atmega32u2", "atmega16u4", "atmega32u4", "at90usb162", "at90usb646", "at90usb647", "at90usb1286", "at90usb1287", "atmega32a", "atmega328p", "atmega328", "attiny85", "unknown"] |
29 | }, | 29 | }, |
30 | "board": { | 30 | "board": { |
31 | "type": "string", | 31 | "type": "string", |
diff --git a/docs/compatible_microcontrollers.md b/docs/compatible_microcontrollers.md index ac90ed746..8694beb7c 100644 --- a/docs/compatible_microcontrollers.md +++ b/docs/compatible_microcontrollers.md | |||
@@ -9,6 +9,7 @@ The following use [LUFA](https://www.fourwalledcubicle.com/LUFA.php) as the USB | |||
9 | * [ATmega16U2](https://www.microchip.com/wwwproducts/en/ATmega16U2) / [ATmega32U2](https://www.microchip.com/wwwproducts/en/ATmega32U2) | 9 | * [ATmega16U2](https://www.microchip.com/wwwproducts/en/ATmega16U2) / [ATmega32U2](https://www.microchip.com/wwwproducts/en/ATmega32U2) |
10 | * [ATmega16U4](https://www.microchip.com/wwwproducts/en/ATmega16U4) / [ATmega32U4](https://www.microchip.com/wwwproducts/en/ATmega32U4) | 10 | * [ATmega16U4](https://www.microchip.com/wwwproducts/en/ATmega16U4) / [ATmega32U4](https://www.microchip.com/wwwproducts/en/ATmega32U4) |
11 | * [AT90USB64](https://www.microchip.com/wwwproducts/en/AT90USB646) / [AT90USB128](https://www.microchip.com/wwwproducts/en/AT90USB1286) | 11 | * [AT90USB64](https://www.microchip.com/wwwproducts/en/AT90USB646) / [AT90USB128](https://www.microchip.com/wwwproducts/en/AT90USB1286) |
12 | * [AT90USB162](https://www.microchip.com/wwwproducts/en/AT90USB162) | ||
12 | 13 | ||
13 | Certain MCUs which do not have native USB will use [V-USB](https://www.obdev.at/products/vusb/index.html) instead: | 14 | Certain MCUs which do not have native USB will use [V-USB](https://www.obdev.at/products/vusb/index.html) instead: |
14 | 15 | ||
diff --git a/docs/feature_backlight.md b/docs/feature_backlight.md index a558af64e..2adb16e4a 100644 --- a/docs/feature_backlight.md +++ b/docs/feature_backlight.md | |||
@@ -93,18 +93,18 @@ BACKLIGHT_DRIVER = pwm | |||
93 | 93 | ||
94 | On AVR boards, QMK automatically decides which driver to use according to the following table: | 94 | On AVR boards, QMK automatically decides which driver to use according to the following table: |
95 | 95 | ||
96 | |Backlight Pin|AT90USB64/128|ATmega16/32U4|ATmega16/32U2|ATmega32A|ATmega328/P| | 96 | |Backlight Pin|AT90USB64/128|AT90USB162|ATmega16/32U4|ATmega16/32U2|ATmega32A|ATmega328/P| |
97 | |-------------|-------------|-------------|-------------|---------|-----------| | 97 | |-------------|-------------|----------|-------------|-------------|---------|-----------| |
98 | |`B1` | | | | |Timer 1 | | 98 | |`B1` | | | | | |Timer 1 | |
99 | |`B2` | | | | |Timer 1 | | 99 | |`B2` | | | | | |Timer 1 | |
100 | |`B5` |Timer 1 |Timer 1 | | | | | 100 | |`B5` |Timer 1 | |Timer 1 | | | | |
101 | |`B6` |Timer 1 |Timer 1 | | | | | 101 | |`B6` |Timer 1 | |Timer 1 | | | | |
102 | |`B7` |Timer 1 |Timer 1 |Timer 1 | | | | 102 | |`B7` |Timer 1 |Timer 1 |Timer 1 |Timer 1 | | | |
103 | |`C4` |Timer 3 | | | | | | 103 | |`C4` |Timer 3 | | | | | | |
104 | |`C5` |Timer 3 | |Timer 1 | | | | 104 | |`C5` |Timer 3 |Timer 1 | |Timer 1 | | | |
105 | |`C6` |Timer 3 |Timer 3 |Timer 1 | | | | 105 | |`C6` |Timer 3 |Timer 1 |Timer 3 |Timer 1 | | | |
106 | |`D4` | | | |Timer 1 | | | 106 | |`D4` | | | | |Timer 1 | | |
107 | |`D5` | | | |Timer 1 | | | 107 | |`D5` | | | | |Timer 1 | | |
108 | 108 | ||
109 | All other pins will use timer-assisted software PWM: | 109 | All other pins will use timer-assisted software PWM: |
110 | 110 | ||
diff --git a/docs/ja/compatible_microcontrollers.md b/docs/ja/compatible_microcontrollers.md index 56f4c0297..b89dd54b0 100644 --- a/docs/ja/compatible_microcontrollers.md +++ b/docs/ja/compatible_microcontrollers.md | |||
@@ -14,6 +14,7 @@ QMK は十分な容量のフラッシュメモリを備えた USB 対応 AVR ま | |||
14 | * [ATmega16U2](https://www.microchip.com/wwwproducts/en/ATmega16U2) / [ATmega32U2](https://www.microchip.com/wwwproducts/en/ATmega32U2) | 14 | * [ATmega16U2](https://www.microchip.com/wwwproducts/en/ATmega16U2) / [ATmega32U2](https://www.microchip.com/wwwproducts/en/ATmega32U2) |
15 | * [ATmega16U4](https://www.microchip.com/wwwproducts/en/ATmega16U4) / [ATmega32U4](https://www.microchip.com/wwwproducts/en/ATmega32U4) | 15 | * [ATmega16U4](https://www.microchip.com/wwwproducts/en/ATmega16U4) / [ATmega32U4](https://www.microchip.com/wwwproducts/en/ATmega32U4) |
16 | * [AT90USB64](https://www.microchip.com/wwwproducts/en/AT90USB646) / [AT90USB128](https://www.microchip.com/wwwproducts/en/AT90USB1286) | 16 | * [AT90USB64](https://www.microchip.com/wwwproducts/en/AT90USB646) / [AT90USB128](https://www.microchip.com/wwwproducts/en/AT90USB1286) |
17 | * [AT90USB162](https://www.microchip.com/wwwproducts/en/AT90USB162) | ||
17 | 18 | ||
18 | 組み込みの USB インターフェースを持たない、いくつかの MCU は代わりに [V-USB](https://www.obdev.at/products/vusb/index.html) を使います: | 19 | 組み込みの USB インターフェースを持たない、いくつかの MCU は代わりに [V-USB](https://www.obdev.at/products/vusb/index.html) を使います: |
19 | 20 | ||
diff --git a/docs/spi_driver.md b/docs/spi_driver.md index 1d432432a..03c008da2 100644 --- a/docs/spi_driver.md +++ b/docs/spi_driver.md | |||
@@ -6,12 +6,12 @@ The SPI Master drivers used in QMK have a set of common functions to allow porta | |||
6 | 6 | ||
7 | No special setup is required - just connect the `SS`, `SCK`, `MOSI` and `MISO` pins of your SPI devices to the matching pins on the MCU: | 7 | No special setup is required - just connect the `SS`, `SCK`, `MOSI` and `MISO` pins of your SPI devices to the matching pins on the MCU: |
8 | 8 | ||
9 | |MCU |`SS`|`SCK`|`MOSI`|`MISO`| | 9 | |MCU |`SS`|`SCK`|`MOSI`|`MISO`| |
10 | |---------------|----|-----|------|------| | 10 | |-----------------|----|-----|------|------| |
11 | |ATMega16/32U2/4|`B0`|`B1` |`B2` |`B3` | | 11 | |ATMega16/32U2/4 |`B0`|`B1` |`B2` |`B3` | |
12 | |AT90USB64/128 |`B0`|`B1` |`B2` |`B3` | | 12 | |AT90USB64/128/162|`B0`|`B1` |`B2` |`B3` | |
13 | |ATmega32A |`B4`|`B7` |`B5` |`B6` | | 13 | |ATmega32A |`B4`|`B7` |`B5` |`B6` | |
14 | |ATmega328/P |`B2`|`B5` |`B3` |`B4` | | 14 | |ATmega328/P |`B2`|`B5` |`B3` |`B4` | |
15 | 15 | ||
16 | You may use more than one slave select pin, not just the `SS` pin. This is useful when you have multiple devices connected and need to communicate with them individually. | 16 | You may use more than one slave select pin, not just the `SS` pin. This is useful when you have multiple devices connected and need to communicate with them individually. |
17 | `SPI_SS_PIN` can be passed to `spi_start()` to refer to `SS`. | 17 | `SPI_SS_PIN` can be passed to `spi_start()` to refer to `SS`. |
diff --git a/drivers/avr/serial.c b/drivers/avr/serial.c index 526a0946b..3647bee0d 100644 --- a/drivers/avr/serial.c +++ b/drivers/avr/serial.c | |||
@@ -20,7 +20,7 @@ | |||
20 | 20 | ||
21 | #ifdef SOFT_SERIAL_PIN | 21 | #ifdef SOFT_SERIAL_PIN |
22 | 22 | ||
23 | # if !(defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__)) | 23 | # if !(defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) || defined(__AVR_AT90USB162__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__)) |
24 | # error serial.c is not supported for the currently selected MCU | 24 | # error serial.c is not supported for the currently selected MCU |
25 | # endif | 25 | # endif |
26 | // if using ATmega32U4/2, AT90USBxxx I2C, can not use PD0 and PD1 in soft serial. | 26 | // if using ATmega32U4/2, AT90USBxxx I2C, can not use PD0 and PD1 in soft serial. |
@@ -52,8 +52,8 @@ | |||
52 | # define EICRx EICRA | 52 | # define EICRx EICRA |
53 | # endif | 53 | # endif |
54 | 54 | ||
55 | // ATmegaxxU2 specific config | 55 | // ATmegaxxU2/AT90USB162 specific config |
56 | # if defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) | 56 | # if defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_AT90USB162__) |
57 | // PD4(INT5), PD6(INT6), PD7(INT7), PC7(INT4) | 57 | // PD4(INT5), PD6(INT6), PD7(INT7), PC7(INT4) |
58 | # if SOFT_SERIAL_PIN == D4 | 58 | # if SOFT_SERIAL_PIN == D4 |
59 | # define EIMSK_BIT _BV(INT5) | 59 | # define EIMSK_BIT _BV(INT5) |
diff --git a/drivers/avr/spi_master.c b/drivers/avr/spi_master.c index cbec9f36e..19ca0ced4 100644 --- a/drivers/avr/spi_master.c +++ b/drivers/avr/spi_master.c | |||
@@ -20,7 +20,7 @@ | |||
20 | #include "quantum.h" | 20 | #include "quantum.h" |
21 | #include "timer.h" | 21 | #include "timer.h" |
22 | 22 | ||
23 | #if defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) | 23 | #if defined(__AVR_AT90USB162__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) |
24 | # define SPI_SCK_PIN B1 | 24 | # define SPI_SCK_PIN B1 |
25 | # define SPI_MOSI_PIN B2 | 25 | # define SPI_MOSI_PIN B2 |
26 | # define SPI_MISO_PIN B3 | 26 | # define SPI_MISO_PIN B3 |
diff --git a/drivers/avr/spi_master.h b/drivers/avr/spi_master.h index e36a7c21c..9203698dd 100644 --- a/drivers/avr/spi_master.h +++ b/drivers/avr/spi_master.h | |||
@@ -21,7 +21,7 @@ | |||
21 | typedef int16_t spi_status_t; | 21 | typedef int16_t spi_status_t; |
22 | 22 | ||
23 | // Hardware SS pin is defined in the header so that user code can refer to it | 23 | // Hardware SS pin is defined in the header so that user code can refer to it |
24 | #if defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) | 24 | #if defined(__AVR_AT90USB162__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) |
25 | # define SPI_SS_PIN B0 | 25 | # define SPI_SS_PIN B0 |
26 | #elif defined(__AVR_ATmega32A__) | 26 | #elif defined(__AVR_ATmega32A__) |
27 | # define SPI_SS_PIN B4 | 27 | # define SPI_SS_PIN B4 |
diff --git a/drivers/avr/uart.c b/drivers/avr/uart.c index e866a9e4f..c6abcb6fe 100644 --- a/drivers/avr/uart.c +++ b/drivers/avr/uart.c | |||
@@ -29,7 +29,7 @@ | |||
29 | 29 | ||
30 | #include "uart.h" | 30 | #include "uart.h" |
31 | 31 | ||
32 | #if defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) | 32 | #if defined(__AVR_AT90USB162__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) |
33 | # define UDRn UDR1 | 33 | # define UDRn UDR1 |
34 | # define UBRRnL UBRR1L | 34 | # define UBRRnL UBRR1L |
35 | # define UCSRnA UCSR1A | 35 | # define UCSRnA UCSR1A |
diff --git a/lib/python/qmk/constants.py b/lib/python/qmk/constants.py index 404a58a7e..cb9461356 100644 --- a/lib/python/qmk/constants.py +++ b/lib/python/qmk/constants.py | |||
@@ -11,7 +11,7 @@ MAX_KEYBOARD_SUBFOLDERS = 5 | |||
11 | 11 | ||
12 | # Supported processor types | 12 | # Supported processor types |
13 | CHIBIOS_PROCESSORS = 'cortex-m0', 'cortex-m0plus', 'cortex-m3', 'cortex-m4', 'MKL26Z64', 'MK20DX128', 'MK20DX256', 'STM32F042', 'STM32F072', 'STM32F103', 'STM32F303', 'STM32F401', 'STM32F411' | 13 | CHIBIOS_PROCESSORS = 'cortex-m0', 'cortex-m0plus', 'cortex-m3', 'cortex-m4', 'MKL26Z64', 'MK20DX128', 'MK20DX256', 'STM32F042', 'STM32F072', 'STM32F103', 'STM32F303', 'STM32F401', 'STM32F411' |
14 | LUFA_PROCESSORS = 'atmega16u2', 'atmega32u2', 'atmega16u4', 'atmega32u4', 'at90usb646', 'at90usb647', 'at90usb1286', 'at90usb1287', None | 14 | LUFA_PROCESSORS = 'at90usb162', 'atmega16u2', 'atmega32u2', 'atmega16u4', 'atmega32u4', 'at90usb646', 'at90usb647', 'at90usb1286', 'at90usb1287', None |
15 | VUSB_PROCESSORS = 'atmega32a', 'atmega328p', 'atmega328', 'attiny85' | 15 | VUSB_PROCESSORS = 'atmega32a', 'atmega328p', 'atmega328', 'attiny85' |
16 | 16 | ||
17 | # Common format strings | 17 | # Common format strings |
diff --git a/lib/python/qmk/os_helpers/linux/__init__.py b/lib/python/qmk/os_helpers/linux/__init__.py index 86850bf28..a04ac4f8a 100644 --- a/lib/python/qmk/os_helpers/linux/__init__.py +++ b/lib/python/qmk/os_helpers/linux/__init__.py | |||
@@ -48,6 +48,7 @@ def check_udev_rules(): | |||
48 | _udev_rule("03eb", "2ff3"), # ATmega16U4 | 48 | _udev_rule("03eb", "2ff3"), # ATmega16U4 |
49 | _udev_rule("03eb", "2ff4"), # ATmega32U4 | 49 | _udev_rule("03eb", "2ff4"), # ATmega32U4 |
50 | _udev_rule("03eb", "2ff9"), # AT90USB64 | 50 | _udev_rule("03eb", "2ff9"), # AT90USB64 |
51 | _udev_rule("03eb", "2ffa"), # AT90USB162 | ||
51 | _udev_rule("03eb", "2ffb") # AT90USB128 | 52 | _udev_rule("03eb", "2ffb") # AT90USB128 |
52 | }, | 53 | }, |
53 | 'kiibohd': {_udev_rule("1c11", "b007")}, | 54 | 'kiibohd': {_udev_rule("1c11", "b007")}, |
diff --git a/quantum/backlight/backlight_avr.c b/quantum/backlight/backlight_avr.c index 4d66da80b..2ecdd4f2c 100644 --- a/quantum/backlight/backlight_avr.c +++ b/quantum/backlight/backlight_avr.c | |||
@@ -68,7 +68,7 @@ | |||
68 | # define COMxx1 COM3A1 | 68 | # define COMxx1 COM3A1 |
69 | # define OCRxx OCR3A | 69 | # define OCRxx OCR3A |
70 | # endif | 70 | # endif |
71 | #elif (defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__)) && (BACKLIGHT_PIN == B7 || BACKLIGHT_PIN == C5 || BACKLIGHT_PIN == C6) | 71 | #elif (defined(__AVR_AT90USB162__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__)) && (BACKLIGHT_PIN == B7 || BACKLIGHT_PIN == C5 || BACKLIGHT_PIN == C6) |
72 | # define HARDWARE_PWM | 72 | # define HARDWARE_PWM |
73 | # define ICRx ICR1 | 73 | # define ICRx ICR1 |
74 | # define TCCRxA TCCR1A | 74 | # define TCCRxA TCCR1A |
diff --git a/quantum/config_common.h b/quantum/config_common.h index 2d9c70b08..df3a6c5c5 100644 --- a/quantum/config_common.h +++ b/quantum/config_common.h | |||
@@ -39,7 +39,7 @@ | |||
39 | # define PIND_ADDRESS 0x9 | 39 | # define PIND_ADDRESS 0x9 |
40 | # define PINE_ADDRESS 0xC | 40 | # define PINE_ADDRESS 0xC |
41 | # define PINF_ADDRESS 0xF | 41 | # define PINF_ADDRESS 0xF |
42 | # elif defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega328P__) || defined(__AVR_ATmega328__) | 42 | # elif defined(__AVR_AT90USB162__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega328P__) || defined(__AVR_ATmega328__) |
43 | # define ADDRESS_BASE 0x00 | 43 | # define ADDRESS_BASE 0x00 |
44 | # define PINB_ADDRESS 0x3 | 44 | # define PINB_ADDRESS 0x3 |
45 | # define PINC_ADDRESS 0x6 | 45 | # define PINC_ADDRESS 0x6 |
diff --git a/quantum/dynamic_keymap.c b/quantum/dynamic_keymap.c index 0608b469c..a860b9497 100644 --- a/quantum/dynamic_keymap.c +++ b/quantum/dynamic_keymap.c | |||
@@ -37,6 +37,8 @@ | |||
37 | #ifndef DYNAMIC_KEYMAP_EEPROM_MAX_ADDR | 37 | #ifndef DYNAMIC_KEYMAP_EEPROM_MAX_ADDR |
38 | # if defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) | 38 | # if defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) |
39 | # define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 | 39 | # define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 2047 |
40 | # elif defined(__AVR_AT90USB162__) | ||
41 | # define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 511 | ||
40 | # else | 42 | # else |
41 | # define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 1023 | 43 | # define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 1023 |
42 | # endif | 44 | # endif |
diff --git a/quantum/mcu_selection.mk b/quantum/mcu_selection.mk index 6b11eb498..09e07a37f 100644 --- a/quantum/mcu_selection.mk +++ b/quantum/mcu_selection.mk | |||
@@ -279,7 +279,7 @@ ifneq ($(findstring STM32F411, $(MCU)),) | |||
279 | DFU_SUFFIX_ARGS ?= -v 0483 -p DF11 | 279 | DFU_SUFFIX_ARGS ?= -v 0483 -p DF11 |
280 | endif | 280 | endif |
281 | 281 | ||
282 | ifneq (,$(filter $(MCU),atmega16u2 atmega32u2 atmega16u4 atmega32u4 at90usb646 at90usb647 at90usb1286 at90usb1287)) | 282 | ifneq (,$(filter $(MCU),at90usb162 atmega16u2 atmega32u2 atmega16u4 atmega32u4 at90usb646 at90usb647 at90usb1286 at90usb1287)) |
283 | PROTOCOL = LUFA | 283 | PROTOCOL = LUFA |
284 | 284 | ||
285 | # Processor frequency. | 285 | # Processor frequency. |
@@ -317,7 +317,7 @@ ifneq (,$(filter $(MCU),atmega16u2 atmega32u2 atmega16u4 atmega32u4 at90usb646 a | |||
317 | ifeq (,$(filter $(NO_INTERRUPT_CONTROL_ENDPOINT),yes)) | 317 | ifeq (,$(filter $(NO_INTERRUPT_CONTROL_ENDPOINT),yes)) |
318 | OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT | 318 | OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT |
319 | endif | 319 | endif |
320 | ifneq (,$(filter $(MCU),atmega16u2 atmega32u2)) | 320 | ifneq (,$(filter $(MCU),at90usb162 atmega16u2 atmega32u2)) |
321 | NO_I2C = yes | 321 | NO_I2C = yes |
322 | endif | 322 | endif |
323 | endif | 323 | endif |
diff --git a/util/drivers.txt b/util/drivers.txt index c3c5e286b..a41192571 100644 --- a/util/drivers.txt +++ b/util/drivers.txt | |||
@@ -11,4 +11,5 @@ libusb,ATmega32U2,03EB,2FF0,ddc2c572-cb6e-4f61-a6cc-1a5de941f063 | |||
11 | libusb,ATmega16U4,03EB,2FF3,3180d426-bf93-4578-a693-2efbc337da8e | 11 | libusb,ATmega16U4,03EB,2FF3,3180d426-bf93-4578-a693-2efbc337da8e |
12 | libusb,ATmega32U4,03EB,2FF4,5f9726fd-f9de-487a-9fbd-8b3524a7a56a | 12 | libusb,ATmega32U4,03EB,2FF4,5f9726fd-f9de-487a-9fbd-8b3524a7a56a |
13 | libusb,AT90USB64,03EB,2FF9,c6a708ad-e97d-43cd-b04a-3180d737a71b | 13 | libusb,AT90USB64,03EB,2FF9,c6a708ad-e97d-43cd-b04a-3180d737a71b |
14 | libusb,AT90USB162,03EB,2FFA,ef8546f0-ef09-4e7c-8fc2-ffbae1dcd84a | ||
14 | libusb,AT90USB128,03EB,2FFB,fd217df3-59d0-440a-a8f3-4c0c8c84daa3 | 15 | libusb,AT90USB128,03EB,2FFB,fd217df3-59d0-440a-a8f3-4c0c8c84daa3 |
diff --git a/util/udev/50-qmk.rules b/util/udev/50-qmk.rules index 70bd7e6e3..acaa7dcc5 100644 --- a/util/udev/50-qmk.rules +++ b/util/udev/50-qmk.rules | |||
@@ -9,6 +9,8 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff3", TAG+="uacc | |||
9 | SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff4", TAG+="uaccess" | 9 | SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff4", TAG+="uaccess" |
10 | ### AT90USB64 | 10 | ### AT90USB64 |
11 | SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff9", TAG+="uaccess" | 11 | SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff9", TAG+="uaccess" |
12 | ### AT90USB162 | ||
13 | SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffa", TAG+="uaccess" | ||
12 | ### AT90USB128 | 14 | ### AT90USB128 |
13 | SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffb", TAG+="uaccess" | 15 | SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffb", TAG+="uaccess" |
14 | 16 | ||