Commit Graph

91 Commits

Author SHA1 Message Date
Dasky 5c85271e48
Add timer_save and _restore functions. (#23887)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2024-10-25 18:10:17 +01:00
Ryan 208ebf54a9
WS2812 API rework (#24364)
* Begin WS2812 API rework

* Move RGBW conversion, clean up color.h, fix RGBW for AVR bitbang

* Formatting & update PS2AVRGB I2C driver (untested)

* Tested ARM bitbang RGB+RGBW

* Tested ARM SPI RGB - RGBW not working

* Tested ARM PWM RGB+RGBW

* Tested RP2040 PIO driver RGB+RGBW

* Update RGBLight

* Formatting

* Fix BM60HSRGB rev2

* Fix oddforge/vea

* Fix 1k and XD002 RGBLite

* Fix model_m/mschwingen

* Fix handwired/promethium

* Rename `WS2812_LED_TOTAL` for BM60HSRGB

* Fix work_louder boards

* Fix dawn60

* Fix rgbkb/pan

* Fix neson_design/700e and n6

* Fix ergodox_ez/shine

* ergodox_ez/shine: invert indices for left half

* Fix matrix/abelx

* Fix matrix/m20add

* Remove custom rgblight driver for matrix/noah - should be done with lighting layers

* Fix LED indexes for RGBLight split

* Rename `convert_rgb_to_rgbw()` to `ws2812_rgb_to_rgbw()`

* Update WS2812 API docs

* `ergodox_ez/shine`: simplify LED index calculation

* LED/RGB Matrix: Add weak function for LED index resolution

* Bandaid fix for RGB Matrix splits not using WS2812

* `steelseries/prime_plus`: redo custom RGBLight driver

* Update keyboards/steelseries/prime_plus/rgblight_custom.c

Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>

---------

Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2024-10-06 21:01:07 +13:00
Dasky 2c7bf34d09
Allow for inverted SPI CS logic (#23699) 2024-09-10 08:44:35 +10:00
Nick Brassel 3a711f4cfa
Allow overriding `get_hardware_id()`. (#24051) 2024-07-05 11:22:08 +10:00
Ryan 0ff53b2498
Rename `RGBW` define to `WS2812_RGBW` (#23585) 2024-04-28 00:36:54 +10:00
Ryan f7cf40fa77
Add init function to RGBLight driver struct (#23076) 2024-03-18 22:03:27 +11:00
Drashna Jaelre 83e6ddbbb4
[Audio] Add support for audio shutdown pin (#22731)
Co-authored-by: Ryan <fauxpark@gmail.com>
2024-03-06 22:02:37 +11:00
Nick Brassel 8b8f73098b
Fix up AVR production build target. (#23190) 2024-03-02 08:44:51 +11:00
Ryan 2d1aed78a6
Update GPIO macro usages in core (#23093) 2024-02-18 17:08:27 +11:00
Ryan b8646bc40b
Update naming convention for GPIO control macros (#23085) 2024-02-17 00:18:26 +11:00
Joel Challis bb71145632
Tidy up print/debug logging headers (#22969) 2024-01-27 04:30:29 +00:00
David Hoelscher e9bd7d7ad3
I2C driver cleanup (#21273)
* remove i2c_start and i2c_stop from i2c drivers

* remove static i2c_address variable from chibios i2c driver
2024-01-17 14:05:38 +01:00
Ryan a522b1f156
i2c: rename read/write register functions (#22905) 2024-01-16 02:26:40 +00:00
Nick Brassel 3a5e4253fc
Add simpler method for relocating functions to RAM. (#21804) 2023-11-22 12:08:52 +11:00
Nick Brassel 4c625d8286
Revert "chibios: disable RWX segment warning on newer GNU lds (#22007)" (#22469)
This reverts commit de3c42125b.
2023-11-13 22:41:12 +00:00
Thomas Weißschuh de3c42125b
chibios: disable RWX segment warning on newer GNU lds (#22007) 2023-11-13 22:29:12 +00:00
Dominik fa1c1cbbee
avrdude: Version 7.2 changes the text output (#22235)
from "could not find USB device with" to "cannot find USB device with"
This should fix issue #22234

Co-authored-by: Dominik Loidolt <dominik.loidolt@univie.ac.at>
2023-10-09 17:41:00 +01:00
Joel Challis 06cec720dd
Remove 'Firmware size check does not yet support' message (#21977) 2023-09-12 05:16:39 +01:00
Ryan 41bd4e35a0
Clean up RGB LED type (#21859) 2023-09-04 01:19:59 +01:00
QMK Bot 79491e35e1 Merge remote-tracking branch 'origin/master' into develop 2023-08-23 19:55:42 +00:00
Thomas Weißschuh f699fde7d9
Generalize AVR -Werror=array-bounds workaround (#21798)
GCC 13 needs the same workaround as GCC 12.
To avoid having to maintain an ever-growing list of broken versions
apply the workaround wherever it can be used.

If at some point a fixed version of GCC is released the workaround can
be disabled for those fixed versions.

See #17064
2023-08-23 20:55:03 +01:00
Ryan 4137685f8e
backlight: split AVR PWM and timer drivers (#21540) 2023-07-21 09:27:55 +10:00
Ryan da2d2f947d
quantum: remove direct `quantum.h` includes (#21507) 2023-07-16 23:42:56 +10:00
Ryan b9e5895184
Eliminate `TMK_COMMON_*` in makefiles (#21517) 2023-07-15 17:27:32 +10:00
Ryan cb2331713c
Relocate backlight drivers (#21444) 2023-07-08 23:13:10 +10:00
Ryan 87b11345a5
Get rid of `USB_LED_CAPS_LOCK` (#21436) 2023-07-06 09:48:02 +01:00
Ryan 47966dc2a6
Migrate `rgblight.pin` and `RGB_DI_PIN` to `ws2812.pin` (#20303) 2023-04-06 18:00:54 +10:00
Nick Brassel 06c5c02804
Disable specific warnings to mitigate compilation problems with `KEEP_INTERMEDIATES=yes`. (#20339) 2023-04-05 14:59:09 +10:00
Ryan 647c2835e6
WS2812 driver improvements (#20262) 2023-03-30 12:21:02 +11:00
Joel Challis b01dc36fbf
Tidy up duplication of MIN/MAX fallback implementations (#20236) 2023-03-23 05:30:30 +00:00
Joel Challis 832479c7fb
Split out mcu_selection to platform (#19701) 2023-01-29 07:40:47 +11:00
Ryan cf935d97ae
Fix functions with empty params (#19647)
* Fix functions with empty params

* Found a bunch more
2023-01-20 16:21:17 +00:00
Joel Challis 0ce3f6bcfe
De-duplicate platform detection (#19603) 2023-01-19 00:27:00 +00:00
Joel Challis 46c85c93f0
Revert "De-duplicate platform detection (#19545)" (#19564)
This reverts commit e11235ee14.
2023-01-11 19:58:27 +00:00
Joel Challis e11235ee14
De-duplicate platform detection (#19545) 2023-01-11 02:13:32 +00:00
Drashna Jael're d9e559a78e
Merge remote-tracking branch 'origin/master' into develop 2022-11-06 09:05:52 -08:00
Joel Challis 96c48a5f4a
Refactor to avoid deprecated wmic execution (#18122)
* wmic deprecated?

* Update platforms/avr/flash.mk

* Update platforms/avr/flash.mk
2022-10-31 20:16:43 +00:00
QMK Bot f5df1b155a Merge remote-tracking branch 'origin/master' into develop 2022-10-03 01:26:40 +00:00
Ryan cc1565f2a3
`:flash`: print bootloader (#18569) 2022-10-03 12:26:04 +11:00
Ryan bb6f028833
Move bootloader.mk to platforms (#18228) 2022-08-31 07:17:24 -07:00
Ryan d18698a8e8
Remove deprecated USBasp and bootloadHID bootloader types (#18195) 2022-08-28 21:20:43 +01:00
Takeshi ISHII a83afb3fcd
Improve avr wait_us() (#16879) 2022-08-14 00:04:03 +01:00
Joel Challis 98d5c77521
Remove legacy AVR ssd1306 driver (#17864) 2022-07-31 22:15:01 +01:00
jack ffb34fc082
Include stdint.h in avr/i2c_master.h (#17639) 2022-07-12 21:55:19 +02:00
Stefan Kerkmann d9bb189e25
[Core] Update mpaland/printf to eyalroz/printf fork (#16163)
mpaland printf implementation was abandoned in ~2019 and the fork by
eyalroz is now regarded to be the goto replacement of it. So this commit
incoporates the changes needed to use this fork in QMK.

Note that pointer ptrdiff_t is always supported since commit
51c90f93a97fdaef895783ecbe24569be0db7cb8
2022-07-07 09:27:50 +02:00
QMK Bot e30cd0fa16 Merge remote-tracking branch 'origin/master' into develop 2022-06-25 19:35:17 +00:00
Drashna Jaelre 7fd3d76faa
[Split] Ensure SOFT_SERIAL_PIN is defined if USE_I2C isn't defined (#17466) 2022-06-25 12:34:40 -07:00
Daniel Kao 608404f874
Fix AVR I2C master 1ms timeout (#17174)
* 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()
2022-06-22 00:00:04 +02:00
Stefan Kerkmann e89478eb0f
[Core] Update C standard to GNU11, C++ to GNU++14 (#17114) 2022-06-06 08:47:22 +10:00
Andrew Dunai ecce9900c9
Improve PS/2 mouse performance (#17111) 2022-05-30 23:15:17 -07:00