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 de3c42125b661f62757f8ee4f6184c089340d3a0.
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 e11235ee14f9cd3fc45b836eec99ed312cb137dd.
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