Commit Graph

160 Commits (a974c51d25411f171ee9271eae50af461640330d)

Author SHA1 Message Date
Ryan 499fc3b85e
Add some missing `#pragma once`s (#19902) 2023-02-21 15:55:23 +00:00
Ryan 11b6bb8179
Remove unused Bootmagic row/col defines from config.h (#19761) 2023-02-07 00:05:37 +00:00
Ryan f20a05440e
Remove unused `MATRIX_HAS_GHOST` from config.h (#19726) 2023-02-03 00:04:10 +00:00
Nick Brassel f6dd8dea2e
Remove usages of config_common.h from config.h files. (#19714) 2023-01-31 06:03:30 +11:00
Ryan 043d8e1140
Remove deprecated Quantum keycodes (#19712) 2023-01-29 16:44:16 +00: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
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 0730740add
Add mmoskal/uf2-stm32f103 bootloader support (#19594) 2023-01-15 15:04:32 +00:00
Joel Challis 974a1eaf2a
Ignore defaults.hjson values if already set (#19511)
* Ignore defaults.hjson values if already set

* Add warning when nothing is merged
2023-01-07 17:05:53 +00:00
QMK Bot 403c7eeb5c Merge remote-tracking branch 'origin/master' into develop 2023-01-07 17:03:18 +00:00
Joel Challis c5e3275299
Fix `handwired/onekey/kb2040` WS2812 pin (#19517) 2023-01-07 17:02:40 +00:00
Ryan 1978007fae
Tap Dance: remove `qk_` prefix (#19313) 2022-12-14 12:40:25 -08: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
Nick Brassel cf3c26533c
Fixup EFL and F4's sector selection. (#19221) 2022-12-02 21:55:28 +11:00
Ryan 1e95f7be8f
Joystick feature improvements (#19052) 2022-11-27 03:14:45 +11:00
Joel Challis 59443fa970
jsonify some info.json (#19146) 2022-11-25 02:47:02 +00:00
QMK Bot 8449a4a11f Merge remote-tracking branch 'origin/master' into develop 2022-11-18 02:17:25 +00:00
Joel Challis 5d882ab6ef
Disable onekey console by default (#19104) 2022-11-18 02:16:38 +00:00
Ryan 6cc9513ab0
Digitizer feature improvements (#19034) 2022-11-12 23:28:11 +00:00
Ryan 8cecf7fad8
onekey: disable NKRO and mousekeys by default (#19038) 2022-11-12 03:20:44 +00:00
Joy Lee 9435ad19ee
Added analog support for WB32 MCU. (#18289)
Co-authored-by: Joy <chang.li@westberrytech.com>
2022-11-01 15:04:15 +11:00
Ryan 7407347be1
Remove rgblight_list.h (#18878)
* Remove rgblight_list defines with no usage

* Remove rgblight_setrgb_*[_at] defines

* Remove rgblight_sethsv_* defines

* Remove rgblight_sethsv_noeeprom_* defines

* Delete rgblight_list.h and remove all references
2022-10-27 23:50:14 +01:00
Stefan Kerkmann 19145704e4
[Core] Adjust PWM hardware audio driver for RP2040 (#17723) 2022-10-27 19:26:16 +02:00
Ryan 6bbe8b6edd
Normalise Joystick and Programmable Button keycodes (#18832) 2022-10-24 15:50:33 +01:00
Ryan c347e732be
Remove legacy EEPROM clear keycodes (#18782)
* `EEP_RST` -> `EE_CLR`, default-ish keymaps

* `EEP_RST` -> `EE_CLR`, user keymaps

* `EEP_RST` -> `EE_CLR`, community layouts

* `EEP_RST` -> `EE_CLR`, userspace

* `EEP_RST` -> `EE_CLR`, docs & core
2022-10-20 12:20:07 +01:00
Drashna Jaelre 55b9a4d06e
Remove RGBLIGHT_ANIMATION and clean up effect defines for G-K (#18726) 2022-10-15 09:55:27 -07:00
Ryan 4d6fab1cfa
onekey: Enable ADC for STM32F072 Discovery (#18592) 2022-10-05 11:36:20 +11:00
Stefan Kerkmann 996a9006d3
[Core] PWM Backlight for RP2040 (#17706) 2022-10-04 23:10:24 +02:00
QMK Bot f81123469e Merge remote-tracking branch 'origin/master' into develop 2022-10-01 02:55:17 +00:00
Ryan 9f0d9b4fbe
onekey: fix quine keymap (#18555) 2022-10-01 12:54:42 +10:00
Ryan e0115caab9
onekey: enable ADC for Bluepill and Blackpill (#18545) 2022-09-30 17:14:41 +01:00
fauxpark dbb70871fc Merge remote-tracking branch 'upstream/master' into develop 2022-09-30 05:19:53 +10:00
Ryan 45b5ed5c6e
Onekey: migrate some stuff to data driven (#18502) 2022-09-30 04:23:11 +10:00
Ryan be8907d634
Further refactoring of joystick feature (#18437) 2022-09-27 18:37:13 +10:00
Jeff Epler 9632360caa
Use a macro to compute the size of arrays at compile time (#18044)
* Add ARRAY_SIZE and CEILING utility macros

* Apply a coccinelle patch to use ARRAY_SIZE

* fix up some straggling items

* Fix 'make test:secure'

* Enhance ARRAY_SIZE macro to reject acting on pointers

The previous definition would not produce a diagnostic for
```
int *p;
size_t num_elem = ARRAY_SIZE(p)
```
but the new one will.

* explicitly get definition of ARRAY_SIZE

* Convert to ARRAY_SIZE when const is involved

The following spatch finds additional instances where the array is
const and the division is by the size of the type, not the size of
the first element:
```
@ rule5a using "empty.iso" @
type T;
const T[] E;
@@

- (sizeof(E)/sizeof(T))
+ ARRAY_SIZE(E)

@ rule6a using "empty.iso" @
type T;
const T[] E;
@@

- sizeof(E)/sizeof(T)
+ ARRAY_SIZE(E)
```

* New instances of ARRAY_SIZE added since initial spatch run

* Use `ARRAY_SIZE` in docs (found by grep)

* Manually use ARRAY_SIZE

hs_set is expected to be the same size as uint16_t, though it's made
of two 8-bit integers

* Just like char, sizeof(uint8_t) is guaranteed to be 1

This is at least true on any plausible system where qmk is actually used.

Per my understanding it's universally true, assuming that uint8_t exists:
https://stackoverflow.com/questions/48655310/can-i-assume-that-sizeofuint8-t-1

* Run qmk-format on core C files touched in this branch

Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-08-30 10:20:04 +02:00
Ryan cf41c24db8
Move keyboard USB IDs and strings to data driven: develop (#18152)
* Move keyboard USB IDs and strings to data driven: develop

* Also do new onekeys
2022-08-24 15:28:38 +01:00
Joel Challis bbc3bc55f2
RESET -> QK_BOOT user keymaps (#17940) 2022-08-21 23:55:30 +01:00
QMK Bot eceed6c50b Merge remote-tracking branch 'origin/master' into develop 2022-08-20 00:32:18 +00:00
Ryan 48792b030b
Move keyboard USB IDs and strings to data driven, pass 2: handwired (#18079) 2022-08-20 10:31:48 +10:00
QMK Bot 904df296b0 Merge remote-tracking branch 'origin/master' into develop 2022-08-15 17:55:58 +00:00
Joel Challis e44b6242b7
Migrate more F4x1 board files (#18054) 2022-08-15 18:55:21 +01:00
Sergey Vlasov 9e44362179
Add minimal STM32F103C6 support (#17853)
Unfortunately, the crippled versions of “Bluepill” boards with
STM32F103C6xx chips instead of STM32F103C8xx are now sold all over the
place, sometimes advertised in a confusing way to make the difference
not noticeable until too late.  Add minimal support for these MCUs in
the common “Bluepill with stm32duino” configuration, so that it could be
possible to make something useful from those boards (although fitting
QMK into the available 24 KiB of flash may be rather hard).

(In fact, I'm not sure whether the “STM32” part of the chip name is
actually correct for those boards of uncertain origin, so the onekey
board name is `bluepill_f103c6`; another reason for that name is to
match the existing `blackpill_f401` and `blackpill_f411`.)

The EEPROM emulation support is not included on purpose, because
enabling it without having a working firmware size check would be
irresponsible with such flash size (the chance that someone would build
a firmware where the EEPROM backing store ends up overlapping some
firmware code is really high).  Other than that, enabling the EEPROM
emulation code is mostly trivial (the `wear_leveling` driver with the
`embedded_flash` backing store even works without any custom
configuration, although its code is significantly larger than the
`vendor` driver, which may also be important for such flash size).
2022-08-11 22:37:41 +01:00
Nick Brassel 154d35ac14
Remove `UNUSED_PINS` (#17931) 2022-08-06 23:23:35 +10:00
Jeff Epler 7bbc1b21dd
Add kb2040 onkey keyboard that works with the oled keymap (#17786) 2022-08-05 19:38:10 -07:00
QMK Bot f0300fc763 Merge remote-tracking branch 'origin/master' into develop 2022-07-26 05:00:11 +00:00
Diogo Sergio e6a7db2fd2
Update README.md for teensy lc onekey (#17797) 2022-07-25 21:59:37 -07:00
Stefan Kerkmann 3f5dc47296
[Core] Use polled waiting on ChibiOS platforms that support it (#17607)
* Use polled waiting on platforms that support it

Due to context switching overhead waiting a very short amount of time on
a sleeping thread is often not accurate and in fact not usable for timing
critical usage i.e. in a driver. Thus we use polled waiting for ranges
in the us range on platforms that support it instead. The fallback is
the thread sleeping mechanism.

This includes:

* ARM platforms with CYCCNT register (ARMv7, ARMv8) this is
  incremented at CPU clock frequency
* GD32VF103 RISC-V port with CSR_MCYCLE register this is incremented at
  CPU clock frequency
* RP2040 ARMv6 port which uses the integrated timer peripheral which is
  incremented with a fixed 1MHz frequency

* Use wait_us() instead of chSysPolledDelayX

...as it is powered by busy waiting now.

* Add chibios waiting methods test bench
2022-07-11 15:17:05 +02:00