Commit Graph

359 Commits

Author SHA1 Message Date
Drashna Jaelre
7ed3138e5f
Remove PWM advanced check for WS2812 driver (#22830) 2024-01-05 12:27:55 +00:00
Drashna Jaelre
29f8fa35cf
[Audio] Enable Complementary output for PWM Hardware driver (#22726)
Co-authored-by: Joel Challis <git@zvecr.com>
2023-12-21 19:38:59 -08:00
Nebuleon
229a1690a7
dac_additive: Decouple the buffer length from the waveform length (#22276)
* dac_additive: Decouple the buffer length from the waveform length

* Formatting changes for the previous commit

* Reformat waveform tables with rows of 16 entries, ending at column 116

* Revert "Reformat waveform tables with rows of 16 entries, ending at column 116"

This reverts commit 6f2d37908d.
2023-12-12 20:06:56 +01:00
Cipulot
81cedf5fa5
Add ADC support STM32L4xx and STM32G4xx series MCUs (#22341)
* Update analog.c

* Changes to remove errors in compile

* Update analog.c

Fix for RP2040 build errors

* Revert "Merge branch 'adc-add-stm32l4xx-stm32g4xx' of https://github.com/Cipulot/qmk_firmware into adc-add-stm32l4xx-stm32g4xx"

This reverts commit b11c297078, reversing
changes made to ed3051f941.

* Update analog.c

Attempt fix for formatting CI error

* Update platforms/chibios/drivers/analog.c

Co-authored-by: Joel Challis <git@zvecr.com>

* Update platforms/chibios/drivers/analog.c

Co-authored-by: Joel Challis <git@zvecr.com>

* Update platforms/chibios/drivers/analog.c

Co-authored-by: Joel Challis <git@zvecr.com>

---------

Co-authored-by: Joel Challis <git@zvecr.com>
2023-12-08 01:26:44 +00:00
leah-splitkb
2450fe28ee
Add Imera converter (#22419) 2023-11-28 17:53:47 +11:00
Nick Brassel
f96a7bbd63
Cater for ECC failures in EFL wear-leveling. (#19749)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2023-11-26 22:59:38 +11:00
Nick Brassel
3a5e4253fc
Add simpler method for relocating functions to RAM. (#21804) 2023-11-22 12:08:52 +11:00
Joel Challis
02d3b233ab
chibios: disable RWX segment warning on newer GNU lds (#22471) 2023-11-13 23:45:40 +00: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
Joel Challis
bf6f13a2b0
Consolidate some EEPROM Driver configuration (#22321) 2023-10-23 00:37:27 +01:00
Ryan
2b8d9f3193
ChibiOS pin defs: use only vendor if present (#22297) 2023-10-21 14:02:03 +11:00
Ryan
1bff37781b
Prep work for NKRO report separation (#22268)
* Clean up some keyboard/userspace code

* Rename `KEYBOARD_REPORT_BITS` -> `NKRO_REPORT_BITS`

* Add some missing includes

* Use `PACKED` define for report types

* Fix incorrect function signatures for FlexRAM EEPROM driver
2023-10-14 13:21:20 +02: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
QMK Bot
fc25b92e0f Merge remote-tracking branch 'origin/master' into develop 2023-09-26 02:21:14 +00:00
Nick Brassel
8d9c770a81
Fix entry into bootloader for STM32G431. (#22138) 2023-09-26 12:20:32 +10:00
Ryan
21ed9b4575
Simplify more feature driver defines (#22090) 2023-09-25 13:06:42 +10:00
Joel Challis
61702b2564
Set default board files for uf2boot bootloader (#22129) 2023-09-25 13:05:28 +10:00
Nick Brassel
c597731d1d
Merge remote-tracking branch 'upstream/master' into develop 2023-09-25 13:03:02 +10:00
Michael Büchler
4d994458f0
Document the RP2040-specific PS/2 implementation (#22079)
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2023-09-25 13:00:13 +10:00
Purdea Andrei
408d61dcfb
Chibios SPI driver: allow some SPI pins to be left unassigned (#20315)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-09-25 12:54:22 +10:00
Andre Brait
960d6e0d7d
[Enhancement] Improvements for debounce test coverage + bug fixes for sym_defer_g and sym_eager_pr (#21667)
Co-authored-by: Nebuleon <2391500+Nebuleon@users.noreply.github.com>
2023-09-25 12:48:55 +10:00
Nebuleon
2f4e1a78ad
Reduce popping during audio initialization using the additive DAC (#21642) 2023-09-25 12:26:32 +10:00
Nebuleon
1d94de5358
Optimize the additive DAC code, fixing performance-related hangs (#21662) 2023-09-25 12:26:02 +10:00
QMK Bot
8f9847248a Merge remote-tracking branch 'origin/master' into develop 2023-09-18 18:56:34 +00:00
Dasky
16f2a3e2f8
Add missing gpio include to ps2 vendor (#22063) 2023-09-18 19:55:51 +01:00
QMK Bot
78fdebb130 Merge remote-tracking branch 'origin/master' into develop 2023-09-17 12:19:00 +00:00
Constantine Karos
1fbd45a594
Add missing gpio and chibios defs to uart.h (#22033) 2023-09-17 13:18:26 +01:00
Joel Challis
1b637287a1
Default wear leveling logical size to half backing (#22006) 2023-09-14 07:13:21 +10:00
Thomas Weißschuh
b9f2121d10
chibios: mark boot2 bootlader data readonly (#21986) 2023-09-13 16:48:38 +10:00
Joy Lee
bd2e59af60
Fixed WB32 MCU remote wakeup issue (#20863)
Co-authored-by: Joy <chang.li@westberrytech.com>
2023-09-12 15:57:18 +10:00
Joel Challis
06cec720dd
Remove 'Firmware size check does not yet support' message (#21977) 2023-09-12 05:16:39 +01:00
Drashna Jaelre
3aebc8acb0
Add RTC IRQ Priority to RP2040 board files (#21926) 2023-09-06 04:51:34 +01:00
Ryan
41bd4e35a0
Clean up RGB LED type (#21859) 2023-09-04 01:19:59 +01:00
Daniel Schaefer
dd887eae36
[Core] Allow customizing PWM frequency (#21717)
* [Core] Allow customizing PWM frequency

Some frequencies can cause audible noise. Changing the frequency
eliminates that.

Signed-off-by: Daniel Schaefer <dhs@frame.work>

* docs/feature-backlight: Mention PWM frequency

Signed-off-by: Daniel Schaefer <dhs@frame.work>

---------

Signed-off-by: Daniel Schaefer <dhs@frame.work>
2023-09-03 14:56:02 +02:00
Drashna Jaelre
25331be316
Revert changes to ChibiOS Suspend Code (#21830)
* Partially revert #19780

* Finish

* Get teensy 3.5/3.6 board files too

* fix lint issue

* Revert "[Bug] Restore usb suspend wakeup delay (#21676)"

This reverts commit e8e989fd7a.

* Apply suggestions from code review

Co-authored-by: Joel Challis <git@zvecr.com>

---------

Co-authored-by: Joel Challis <git@zvecr.com>
2023-08-27 03:52:12 +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
Nebuleon
e971ce290c
Remove needless precision in additive DAC sample generation (#21498) 2023-07-26 21:06:14 -07:00
Nebuleon
821db155f2
Fix stuck note with square wave in additive DAC (#21589) 2023-07-26 21:00:27 -07:00
Nebuleon
a5e33b1c28
Allow the user to select one tone for the additive DAC (#21591)
Previously, if the user tried to use `#define AUDIO_MAX_SIMULTANEOUS_TONES 1` to conserve CPU time, their firmware would fail to build with this error:

```
platforms/chibios/drivers/audio_dac_additive.c:91:73: error: excess elements in array initializer [-Werror]
   91 | static float   active_tones_snapshot[AUDIO_MAX_SIMULTANEOUS_TONES] = {0, 0};
      |                                                                          ^
```

This also affected the preset `#define AUDIO_DAC_QUALITY_VERY_HIGH`, which called up only one simultaneous tone at 88200 Hz.
2023-07-23 11:44:41 +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
b6d9409d2f
drivers: remove direct quantum.h includes (#21473) 2023-07-09 20:03:50 +10:00
Ryan
cb2331713c
Relocate backlight drivers (#21444) 2023-07-08 23:13:10 +10:00
Pascal Getreuer
a8a87a0922
[Core] Simplify audio_duration_to_ms() and audio_ms_to_duration(), reduce firmware size by a few bytes. (#21427) 2023-07-08 00:47:16 +10:00
Ryan
87b11345a5
Get rid of USB_LED_CAPS_LOCK (#21436) 2023-07-06 09:48:02 +01:00
Nick Brassel
2976bd627e
Fixup STM32-DFU (#21447) 2023-07-04 21:16:14 +10:00
QMK Bot
ed6528b3e3 Merge remote-tracking branch 'origin/master' into develop 2023-07-02 22:54:27 +00:00
Sergey Vlasov
b708658e2e
usbpd_stm32g4: Configure UCPD before disabling the dead battery mode (#21430) 2023-07-03 08:53:54 +10:00
Nick Brassel
c814be0296
STM32H723 support (#21352) 2023-06-28 13:07:14 +10:00
Stefan Kerkmann
be3205fae0
Minor board clean-up after #19780 (#21391) 2023-06-27 09:54:31 +10:00
Stefan Kerkmann
a87c74ebe1
[Bug] Fix non-functional S3 wakeup / resume from suspense (#19780)
* Update ChibiOS-Contrib for USB suspend fixes

* Remove S3 wakup workaround

ChibiOS OTGv1 driver has a remote wakeup bug that prevents the device to
resume it's operation. 02516cbc24 
introduced a hotfix that forcefully restarted the usb driver as a workaround. 
This workaround broke multiple boards which do not use this driver / 
peripheral. With the update of ChibiOS this hotfix is now obsolete.

* Remove restart_usb_driver overrides

they are no longer necessary as the workaround is not needed anymore
for stm32f4

* Remove unused RP_USB_USE_SOF_INTR defines

The SOF interrupt is enabled dynamically by the RP2040 usb driver
2023-06-26 23:55:52 +02:00
Nick Brassel
416af0171c
Remove CORTEX_ENABLE_WFI_IDLE from keyboards. (#21353)
* Remove CORTEX_ENABLE_WFI_IDLE from the codebase.

* Turn on CORTEX_ENABLE_WFI_IDLE by default.
2023-06-23 20:31:25 +01:00
Nick Brassel
ffdc70bf0a
Consolidate KEYBOARD_OUTPUT+KEYMAP_OUTPUT=>INTERMEDIATE_OUTPUT (#21272) 2023-06-21 08:41:49 +10:00
QMK Bot
2ea02c3995 Merge remote-tracking branch 'origin/master' into develop 2023-06-19 05:03:28 +00:00
Nick Brassel
0774381f81
Swap G431 to transient EEPROM. Add G431 and G474 onekeys. (#21282) 2023-06-19 15:02:57 +10:00
dexter93
27120f2fb6
platfoms: chibios: wait: only define the frequency (#21115) 2023-06-02 14:41:05 -07:00
Joel Challis
3969d7045e
Duplicate board files for blok converter (#20629)
* Duplicate board files for blok converter

* Swap converters board file too

* Update platforms/chibios/boards/QMK_BLOK/configs/board.h
2023-05-22 07:04:19 +01:00
Joel Challis
62be3a7447
Revert use of legacy wear leveling driver now ChibiOS is fixed (#20806) 2023-05-09 17:52:37 +10:00
Drashna Jaelre
cf5626e024
[Bug] Fix compilation issues with PS/2 driver on F4x1 controllers (#20433) 2023-04-12 21:43:27 -07: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
Purdea Andrei
368fee9655
rp2040: *_PAL_MODE overridable for this platform too (#20314)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2023-04-04 09:07:36 +10:00
Ryan
647c2835e6
WS2812 driver improvements (#20262) 2023-03-30 12:21:02 +11:00
Marek Kraus
e640fd65ff
[Core] PS/2 PIO Driver for RP2040 (#17893)
Co-authored-by: Johannes H. Jensen <joh@pseudoberries.com>
2023-03-25 11:48:28 +01:00
Joel Challis
b01dc36fbf
Tidy up duplication of MIN/MAX fallback implementations (#20236) 2023-03-23 05:30:30 +00:00
Joel Challis
50cb8a3bf5
Remove bootloader logic from mcu_selection.mk (#20150)
* Remove bootloader logic from mcu_selection.mk

* Move MCU/BOOTLOADER to info.json
2023-03-18 21:19:26 +00:00
leah-splitkb
46bbb81dd2
Add RP2040 Community Edition alias for Liatris (#19966) 2023-03-10 12:47:10 -08:00
Joel Challis
be781927c1
Merge upstream changes to uf2conv (#19993) 2023-03-03 10:26:37 +11:00
Joel Challis
896d9aa98c
Add rp2040_ce and add elite-pi and helios as alias (#19830)
* add rp2040_ce and add elite-pi and helios as alias (#19628)

* fix git mishap

* Update platforms/chibios/converters/promicro_to_rp2040_ce/_pin_defs.h

Co-authored-by: Joel Challis <git@zvecr.com>

---------

Co-authored-by: Joel Challis <git@zvecr.com>

* Tidy docs

---------

Co-authored-by: Conor Burns <mail@conor-burns.com>
2023-02-12 23:02:05 +00:00
Sergey Vlasov
584b7cf801
Fix build failures with OPT = 0 due to inline functions (#19767)
Co-authored-by: Joel Challis <git@zvecr.com>
2023-02-12 17:14:34 +11:00
miguelelinventor
e24f9b2c0a
Add Michi MCU Converter support (#19163) 2023-02-09 11:27:37 -08:00
Nick Brassel
f6dd8dea2e
Remove usages of config_common.h from config.h files. (#19714) 2023-01-31 06:03:30 +11:00
Joel Challis
8cc2e0e906
Fix quantum ring_buffer for ChibiOS (#19683) 2023-01-28 21:07:51 +00:00
Joel Challis
832479c7fb
Split out mcu_selection to platform (#19701) 2023-01-29 07:40:47 +11:00
Sergey Vlasov
81ca83296f
analog.c: Fix pinToMux() for STM32F0xx (#19658)
The `adc_read()` code for STM32F0xx expects to get the 0-based channel
number in `mux.input`, but the `pinToMux()` code for STM32F0xx was
attempting to pass the CHSELR bit mask in that field, which resulted in
selecting a wrong channel, therefore `analogReadPin()` did not work
properly for the STM32F0xx chips.  Fix `pinToMux()` to put the channel
number in that field (this matches the behavior for other supported
chips and also allows selection of channels 16...18, which can be used
to access the builtin temperature, reference voltage and VBAT sensors).
2023-01-25 01:47:55 +00:00
Stefan Kerkmann
8ca3f0fb7c
[Bug] rp2040: fix timer wrap deadlock in ws2812 vendor driver (#19652)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2023-01-23 22:24:21 +01:00
David Hoelscher
aea1194ea3
Corrections to uart driver for Chibios platform (#19075) 2023-01-24 07:05: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
QMK Bot
3723c0e3d5 Merge remote-tracking branch 'origin/master' into develop 2023-01-19 01:06:08 +00:00
Nick Brassel
327f7ee9a7
Fixup ChibiOS header inclusion search ordering. (#19623)
* Add STM32F446-Nucleo onekey. 

* Fixup onekey build for F446, all keymaps.

* Fixup board inclusion search ordering.
2023-01-19 01:05:29 +00:00
Joel Challis
0ce3f6bcfe
De-duplicate platform detection (#19603) 2023-01-19 00:27:00 +00:00
Sergey Vlasov
272281f1a0
Add analog support for RP2040 (#19453)
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-01-19 10:30:58 +11:00
Joel Challis
12f1a30d16
Add alias support for converters (#19563) 2023-01-18 23:16:33 +00:00
Joel Challis
82a94ea1bd
Add f303 to tinyuf2 bootloader support (#19620) 2023-01-18 22:36:58 +00:00
Joel Challis
0730740add
Add mmoskal/uf2-stm32f103 bootloader support (#19594) 2023-01-15 15:04:32 +00:00
Stefan Kerkmann
ec09087543
Update ChibiOS[-Contrib], SIO driver, configs (#17915)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-01-12 21:47:36 +11: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
Stefan Kerkmann
962e4c0e18
[Test] Reset timer for every unit test and provide timestamps for log messages (#17028) 2022-12-15 02:31:08 +11:00
jpe230
102f22f7e9
[Core] Quantum Painter - LVGL Integration (#18499)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-12-13 07:51:14 +11:00
Stefan Kerkmann
9dc3f79196
[RP2040] update i2c drivers to reflect peripheral number (#19277) 2022-12-11 14:04:29 +01:00
Ryan
701747ad4f
Teensy 3.5: do not restart USB stack after wakeup (#19269) 2022-12-09 01:41:22 +00:00
Michael Stapelberg
9e103a2c58
kint36: do not restart USB stack after wakeup (#19077) 2022-12-09 03:49:58 +11:00
Nick Brassel
cf3c26533c
Fixup EFL and F4's sector selection. (#19221) 2022-12-02 21:55:28 +11:00
Nick Brassel
bebfdad795
NVRAM refactor, phase 1. (#18969)
* Rename `eeprom_stm32` to `eeprom_legacy_emulated_flash`.

* Rename `flash_stm32` to `legacy_flash_ops`.

* Rename `eeprom_teensy` to `eeprom_kinetis_flexram`.
2022-11-23 08:50:19 +00:00
David Hoelscher
a42ab90220
Add Bonsai C4 as a platform board file (#18901)
* Set up Bonsai C4 as a platform board file

* corrections and improvements based on testing and feedback

* Added VBUS sensing as default capability for improved split support using Bonsai C4

* Update clock divisor for SPI flash

Co-authored-by: Nick Brassel <nick@tzarc.org>

Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-11-13 23:59:01 +00:00
Nick Brassel
092228571c
Move EFL wear-leveling driver to be default for F1, F3, F4, L4, G4, WB32, GD32V. (#19020) 2022-11-11 23:57:44 +00:00