summaryrefslogtreecommitdiffstats
path: root/platforms/avr
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/master' into developQMK Bot2022-06-251-0/+4
|\
| * [Split] Ensure SOFT_SERIAL_PIN is defined if USE_I2C isn't defined (#17466)Drashna Jaelre2022-06-251-0/+4
| |
* | Fix AVR I2C master 1ms timeout (#17174)Daniel Kao2022-06-221-6/+6
| | | | | | | | | | | | | | | | | | | | | | * avr i2c_master: Fix 1ms timeout i2c_start() produces a minimum time_slice of 1ms for use as timeout value. The timer granularity is 1ms, it is entirely possible for timer_count to tick up immediately after the last timer read and falsely trigger timeout with a '>= 1' comparison. * avr/drivers/i2c_master: Use timer_elapsed()
* | [Core] Update C standard to GNU11, C++ to GNU++14 (#17114)Stefan Kerkmann2022-06-061-1/+1
| |
* | Improve PS/2 mouse performance (#17111)Andrew Dunai2022-05-301-2/+2
|/
* Merge remote-tracking branch 'origin/master' into developQMK Bot2022-05-181-1/+2
|\
| * Fix platforms/avr/drivers/ws2812.c (#17043)Takeshi ISHII2022-05-181-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fix platforms/avr/drivers/ws2812.c `platforms/avr/drivers/ws2812.c` has been changed to use `DDRx_ADDRESS()` and `PORTx_ADDRESS()` instead of `_SFR_IO8()` in #8646. To use them, `#include <pin_defs.h>` is required. ## Error Log * create new keyboard ```shell bash-3.2$ qmk new-keyboard Ψ Generating a new QMK keyboard directory Name Your Keyboard Project For more infomation, see: https://docs.qmk.fm/#/hardware_keyboard_guidelines?id=naming-your-keyboardproject Keyboard Name? ws2812_test .................................. 36. WB32F3G71 Please enter your choice: [12] Ψ Created a new keyboard called ws2812_test. Ψ To start working on things, `cd` into keyboards/ws2812_test, Ψ or open the directory in your preferred text editor. Ψ And build with qmk compile -kb ws2812_test -km default. ``` * Enable RGBLIGHT. ```shell bash-3.2$ echo RGBLIGHT_ENABLE=yes >> ./keyboards/ws2812_test/rules.mk bash-3.2$ echo '#define RGB_DI_PIN B1' >> ./keyboards/ws2812_test/config.h bash-3.2$ echo '#define RGBLED_NUM 6' >> ./keyboards/ws2812_test/config.h ``` * Compile ```shell bash-3.2$ make ws2812_test:default QMK Firmware 0.16.9 Making ws2812_test with keymap default avr-gcc (Homebrew AVR GCC 8.4.0_2) 8.4.0 Copyright (C) 2018 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ..................... Compiling: quantum/process_keycode/process_rgb.c [OK] Compiling: platforms/avr/drivers/ws2812.c platforms/avr/drivers/ws2812.c: In function 'ws2812_setleds': platforms/avr/drivers/ws2812.c:40:5: error: implicit declaration of function 'DDRx_ADDRESS' [-Werror=implicit-function-declaration] DDRx_ADDRESS(RGB_DI_PIN) |= pinmask(RGB_DI_PIN); ^~~~~~~~~~~~ In file included from <command-line>: ./keyboards/ws2812_test/config.h:21:20: error: 'B1' undeclared (first use in this function); did you mean 'PB1'? #define RGB_DI_PIN B1 ^~ platforms/avr/drivers/ws2812.c:40:18: note: in expansion of macro 'RGB_DI_PIN' DDRx_ADDRESS(RGB_DI_PIN) |= pinmask(RGB_DI_PIN); ^~~~~~~~~~ ./keyboards/ws2812_test/config.h:21:20: note: each undeclared identifier is reported only once for each function it appears in #define RGB_DI_PIN B1 ^~ platforms/avr/drivers/ws2812.c:40:18: note: in expansion of macro 'RGB_DI_PIN' DDRx_ADDRESS(RGB_DI_PIN) |= pinmask(RGB_DI_PIN); ^~~~~~~~~~ platforms/avr/drivers/ws2812.c:42:47: error: implicit declaration of function 'PORTx_ADDRESS' [-Werror=implicit-function-declaration] uint8_t masklo = ~(pinmask(RGB_DI_PIN)) & PORTx_ADDRESS(RGB_DI_PIN); ^~~~~~~~~~~~~ In file included from /usr/local/Cellar/avr-gcc@8/8.4.0_2/avr/include/avr/io.h:99, from /usr/local/Cellar/avr-gcc@8/8.4.0_2/avr/include/avr/interrupt.h:38, from platforms/avr/drivers/ws2812.c:24: platforms/avr/drivers/ws2812.c: In function 'ws2812_sendarray_mask': ./keyboards/ws2812_test/config.h:21:20: error: 'B1' undeclared (first use in this function); did you mean 'PB1'? #define RGB_DI_PIN B1 ^~ platforms/avr/drivers/ws2812.c:167:69: note: in expansion of macro 'RGB_DI_PIN' : "r"(curbyte), "I"(_SFR_IO_ADDR(PORTx_ADDRESS(RGB_DI_PIN))), "r"(maskhi), "r"(masklo)); ^~~~~~~~~~ cc1: all warnings being treated as errors [ERRORS] | | | make[1]: *** [.build/obj_ws2812_test_default/ws2812.o] Error 1 make: *** [ws2812_test:default] Error 1 Make finished with errors ``` * change include order
* | Workaround for recent -Werror=array-bounds AVR issues (#17136)Joel Challis2022-05-181-0/+5
| |
* | [Core] Add Reboot keycode to core (#15990)Drashna Jaelre2022-05-146-1/+52
| |
* | Move disable_jtag to platforms (#16960)Joel Challis2022-04-291-1/+12
| |
* | [Core] Allow usage of AVRs minimal printf library (#16266)Stefan Kerkmann2022-04-221-0/+9
| | | | | | Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
* | Fixup AVR builds. (#16875)Nick Brassel2022-04-181-0/+6
| | | | | | | | | | | | | | | | | | | | * Fixup AVR builds. * Update platforms/avr/hardware_id.c Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Ryan <fauxpark@gmail.com>
* | Expose API for hardware unique ID (#16869)Joel Challis2022-04-181-0/+13
| |
* | HD44780 driver rework (#16370)Ryan2022-03-192-890/+0
| |
* | Force platform pin defs to be included (#16611)Joel Challis2022-03-101-0/+0
| | | | | | | | | | * Force platform pin defs to be included * Always grab first header
* | Merge remote-tracking branch 'origin/master' into developQMK Bot2022-03-042-4/+1
|\|
| * analog.[ch]: remove unnecessary includes (#16471)Ryan2022-03-042-4/+1
| |
* | [Core] Squeeze AVR some more with `-mrelax` and `-mcall-prologues` (#16269)Stefan Kerkmann2022-02-261-1/+8
|/
* Format code according to conventions (#16322)QMK Bot2022-02-1223-133/+191
|
* Followup to #16220, more test error output. (#16221)Nick Brassel2022-02-051-1/+1
|
* Initial migration of suspend callbacks (#16067)Joel Challis2022-02-051-29/+13
| | | | | * Initial migration of suspend logic * Add header
* Create a build error if no bootloader is specified. (#16181)Nick Brassel2022-02-031-0/+0
| | | | | | | | | * Create a build error if no bootloader is specified. * Update builddefs/bootloader.mk Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
* Deprecate split transactions status field (#16023)Stefan Kerkmann2022-01-261-32/+7
|
* Remove unused suspend_idle (#16063)Joel Challis2022-01-261-13/+0
|
* Format code according to conventions (#15593)QMK Bot2021-12-276-13/+8
|
* Refactor `bootloader_jump()` implementations (#15450)Ryan2021-12-277-293/+332
| | | | | | | * Refactor `bootloader_jump()` implementations * Fix tests? * Rename `atmel-samba` to `md-boot`
* More GPIO compilation fixes. (#15592)Nick Brassel2021-12-261-0/+1
|
* Defer pin operations to gpio.h (#15589)Nick Brassel2021-12-271-6/+0
|
* Add open-drain GPIO support. (#15282)Nick Brassel2021-12-271-14/+3
| | | | | | | | | * Add open-drain GPIO support. * `qmk format-c` * Wording. * Remove port GPIO implementations as the only board that uses it has its own internal defs anyway. Will wait for first-class handling of ports in core before reimplementing.
* Tidy up existing i2c_master implementations (#15376)Joel Challis2021-12-021-2/+5
| | | | | * Move chibios defines out of header * Make some avr defines internal
* Tidy up adjustable ws2812 timing (#15299)Joel Challis2021-11-251-8/+3
|
* Move tmk_core/common/<plat> (#13918)Joel Challis2021-11-1919-0/+1905
|
* Fix uart function prototypes (#15162)Drashna Jaelre2021-11-151-2/+2
|
* Update UART driver API (#14839)Ryan2021-11-132-9/+25
| | | | | | | | | | | | | | | | | | | | | | * Add uart_puts() and uart_gets() * Add some docs * Rework API * Formatting * Update docs/uart_driver.md Co-authored-by: Sergey Vlasov <sigprof@gmail.com> * Simplify a uart_write() loop * Update platforms/avr/drivers/uart.c Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Sergey Vlasov <sigprof@gmail.com> Co-authored-by: Joel Challis <git@zvecr.com>
* Manually format develop (#15003)Joel Challis2021-11-011-1/+1
|
* Align usbasp flashing behaviour (#14928)Joel Challis2021-10-241-0/+9
|
* Relocate PS2 code (#14895)Joel Challis2021-10-202-0/+278
| | | | | | | * Relocate ps2 protocol code * clang * Move makefile logic
* i2c_master: Add support for reading/writing to 16-bit registers (#14289)Ryan2021-10-072-0/+58
|
* Move Audio drivers from quantum to platform drivers folder (#14308)Drashna Jaelre2021-10-062-0/+349
| | | | | | | | | * Move Audio drivers from quantum to platform drivers folder * fix path for audio drivers Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
* Merge remote-tracking branch 'upstream/master' into developfauxpark2021-09-101-3/+3
|\
| * Change USBasp and bootloadHID bootloaders to lowercase (#14354)Ryan2021-09-101-3/+3
| |
* | Remove Arduino-style `analogRead()` (#14348)Ryan2021-09-082-24/+0
|/
* Fix bootloadHID comments breaking :flash (#14133)Drashna Jaelre2021-08-231-2/+2
|
* `--parallel` improvements (#13800)ruro2021-08-181-7/+7
| | | | | | | * improve make parallel jobs support * document the --parallel option * disable the output-sync for interactive targets
* Relocate platform specific drivers (#13894)Joel Challis2021-08-1718-0/+3116
| | | | | | | * Relocate platform specific drivers * Move stm eeprom * Tidy up slightly
* Move all the flash logic from tmk_core (#13927)Joel Challis2021-08-151-0/+179