summaryrefslogtreecommitdiffstats
path: root/platforms/avr/drivers
Commit message (Collapse)AuthorAgeFilesLines
* Relocate backlight drivers (#21444)Ryan2023-07-081-0/+463
|
* Migrate `rgblight.pin` and `RGB_DI_PIN` to `ws2812.pin` (#20303)Ryan2023-04-061-4/+4
|
* WS2812 driver improvements (#20262)Ryan2023-03-302-5/+5
|
* Tidy up duplication of MIN/MAX fallback implementations (#20236)Joel Challis2023-03-231-2/+1
|
* Fix functions with empty params (#19647)Ryan2023-01-201-2/+2
| | | | | * Fix functions with empty params * Found a bunch more
* Remove legacy AVR ssd1306 driver (#17864)Joel Challis2022-07-312-416/+0
|
* Include stdint.h in avr/i2c_master.h (#17639)jack2022-07-121-0/+2
|
* 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()
* | 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
* | HD44780 driver rework (#16370)Ryan2022-03-192-890/+0
|/
* analog.[ch]: remove unnecessary includes (#16471)Ryan2022-03-042-4/+1
|
* Format code according to conventions (#16322)QMK Bot2022-02-1216-116/+160
|
* Deprecate split transactions status field (#16023)Stefan Kerkmann2022-01-261-32/+7
|
* More GPIO compilation fixes. (#15592)Nick Brassel2021-12-261-0/+1
|
* Defer pin operations to gpio.h (#15589)Nick Brassel2021-12-271-6/+0
|
* 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
|
* 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
|
* 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>
* Remove Arduino-style `analogRead()` (#14348)Ryan2021-09-082-24/+0
|
* Relocate platform specific drivers (#13894)Joel Challis2021-08-1718-0/+3116
* Relocate platform specific drivers * Move stm eeprom * Tidy up slightly