Commit Graph

78 Commits (ad8d934d3cb325d5ad2ed98167a8aa869ccc5e9e)

Author SHA1 Message Date
Joel Challis 831deac212
Migrate build target markers to keyboard.json (#23293) 2024-03-30 11:31:50 +00:00
Joel Challis a4760c4d1b
Remove duplicated rgblight implementation from mxss (#22122) 2023-09-25 13:04:38 +10:00
Ryan f8cea06be3
RGBLight/Backlight: add prefixed driver defines (#22089) 2023-09-21 15:50:01 +10:00
Ryan 41bd4e35a0
Clean up RGB LED type (#21859) 2023-09-04 01:19:59 +01:00
Ryan 023d644bb6
Move RGBLight animations to data driven (#21635)
* Move RGBLight animations to data driven, 0-9

* Move RGBLight animations to data driven, A

* Move RGBLight animations to data driven, B

* Move RGBLight animations to data driven, C

* Move RGBLight animations to data driven, D

* Move RGBLight animations to data driven, E

* Move RGBLight animations to data driven, F

* Move RGBLight animations to data driven, G

* Move RGBLight animations to data driven, H

* Move RGBLight animations to data driven, handwired

* Move RGBLight animations to data driven, I

* Move RGBLight animations to data driven, J

* Move RGBLight animations to data driven, K

* Move RGBLight animations to data driven, L

* Move RGBLight animations to data driven, M

* Move RGBLight animations to data driven, N

* Move RGBLight animations to data driven, O

* Move RGBLight animations to data driven, P

* Move RGBLight animations to data driven, Q

* Move RGBLight animations to data driven, R

* Move RGBLight animations to data driven, S

* Move RGBLight animations to data driven, T

* Move RGBLight animations to data driven, U

* Move RGBLight animations to data driven, V

* Move RGBLight animations to data driven, W

* Move RGBLight animations to data driven, X

* Move RGBLight animations to data driven, Y

* Move RGBLight animations to data driven, Z

* Fix incorrect placement

* Fix build failures and mismatches
2023-08-23 22:11:39 +01:00
Ryan 4ae9bfd17a
Move `RGBLIGHT_HUE/SAT/VAL_STEP` to data driven (#21292)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-06-24 17:37:54 +10:00
Ryan b1783db4ea
Move `RGBLED_NUM` to data driven (#21278) 2023-06-18 14:39:07 +10:00
Ryan 17de141c92
Add missing layout data for a handful of boards (#20931)
* Add missing layout data for a handful of boards

* typo

* Add missing layouts for stoutgat

* Add missing layout for j80

* Replace missing layout with alias for wraith

* Add missing layout for matrix/me

* Add missing layout for satisfaction75/prototype

* Apply suggestions from code review

* Rename wt80-a layouts

* Rename rosa layouts

* Add missing layouts for naked48

* Add missing layouts for naked60

* Add missing layouts for uma

* Remove unused and pointless `LAYOUT_stack` for buzzard

* Add missing layout for keyboardio/model01

* Add missing layout for smk65 revf

* Fix via keymap for h60

* Add missing layout for jabberwocky/v1

* Apply suggestions from code review

* Add missing layout for m3n3van

* Add missing layout for giabalanai

* Add missing layouts for treadstone48/rev1

* Add missing layouts for squiggle

* Update keyboards/marksard/treadstone48/rev1/info.json
2023-05-16 00:00:08 -07:00
Drashna Jaelre 54d172830c
[Keyboard] Fix mxss rgblight.c compilation issues (#20804) 2023-05-08 23:39:49 +01:00
jack c98cb17ce1
Fixup missing include in mxss via keymap (#20475) 2023-04-17 13:08:41 +01:00
Ryan a84528f853
Move remaining `LAYOUT`s to data driven (#20422) 2023-04-15 21:07:32 +10:00
Ryan 47966dc2a6
Migrate `rgblight.pin` and `RGB_DI_PIN` to `ws2812.pin` (#20303) 2023-04-06 18:00:54 +10:00
Ryan 3c144fac5e
Clean up usage of `QMK_KEYBOARD_H` (#20167) 2023-03-20 08:12:05 +11:00
Ryan caa8c81086
Move matrix config to info.json, part 7 (#20020) 2023-03-11 00:39:56 +11:00
Joel Challis 961f0b7b2d
Reallocate SAFE_RANGE (#19909) 2023-02-23 09:49:07 +11:00
Nick Brassel 7f805cc779
VIA Protocol 12 + fixes (#19916)
Co-authored-by: Wilba <wilba@wilba.tech>
Co-authored-by: zvecr <git@zvecr.com>
2023-02-23 09:19:00 +11:00
Ryan 2da0827d4f
Remove matrix size defines (#19581) 2023-02-17 16:08:25 +11:00
Ryan f9aeea64c1
Migrate `MCU` and `BOOTLOADER` to data-driven (#19529) 2023-02-08 18:41:46 +11:00
Ryan 11b6bb8179
Remove unused Bootmagic row/col defines from config.h (#19761) 2023-02-07 00:05:37 +00:00
Ryan a988f8a169
Remove unused `GRAVE_ESC_CTRL_OVERRIDE` from config.h (#19752) 2023-02-06 02:40:23 +00:00
Ryan ebb512db82
Debounce defines cleanup (#19742)
* Clean up `DEBOUNCE` in config.h, 0-9

* Clean up `DEBOUNCE` in config.h, A

* Clean up `DEBOUNCE` in config.h, B

* Clean up `DEBOUNCE` in config.h, C

* Clean up `DEBOUNCE` in config.h, D

* Clean up `DEBOUNCE` in config.h, E

* Clean up `DEBOUNCE` in config.h, F

* Clean up `DEBOUNCE` in config.h, G

* Clean up `DEBOUNCE` in config.h, H

* Clean up `DEBOUNCE` in config.h, handwired

* Clean up `DEBOUNCE` in config.h, I

* Clean up `DEBOUNCE` in config.h, J

* Clean up `DEBOUNCE` in config.h, K

* Clean up `DEBOUNCE` in config.h, L

* Clean up `DEBOUNCE` in config.h, M

* Clean up `DEBOUNCE` in config.h, N

* Clean up `DEBOUNCE` in config.h, O

* Clean up `DEBOUNCE` in config.h, P

* Clean up `DEBOUNCE` in config.h, Q

* Clean up `DEBOUNCE` in config.h, R

* Clean up `DEBOUNCE` in config.h, S

* Clean up `DEBOUNCE` in config.h, T

* Clean up `DEBOUNCE` in config.h, U

* Clean up `DEBOUNCE` in config.h, V

* Clean up `DEBOUNCE` in config.h, W

* Clean up `DEBOUNCE` in config.h, X

* Clean up `DEBOUNCE` in config.h, Y

* Clean up `DEBOUNCE` in config.h, Z

* Remove default debounce from info.json

* Migrate non-default debounce to info.json
2023-02-03 19:19:58 +00:00
Ryan b867522f8c
Clean up Force NKRO in config.h (#19718) 2023-01-30 20:45:41 +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 1cb1a5a374
Remove legacy Grave Escape keycodes (#18787) 2022-10-20 18:04:11 -07:00
Drashna Jaelre c8e998ccad
Remove RGBLIGHT_ANIMATION and clean up effect defines for L-Q (#18727) 2022-10-15 09:55:40 -07:00
Ryan c6f1b594a2
Remove legacy keycodes, part 2 (#18660)
* `KC_SYSREQ` -> `KC_SYRQ`

And one `KC_ALT_ERASE` -> `KC_ERAS`

* `KC_NONUS_BSLASH` -> `KC_NUBS`

* `KC_NUMLOCK` -> `KC_NUM`

* `KC_CLCK` -> `KC_CAPS`

* `KC_SCROLLLOCK` -> `KC_SCRL`

* `KC_LBRACKET` -> `KC_LBRC`

* `KC_RBRACKET` -> `KC_RBRC`

* `KC_CAPSLOCK` -> `KC_CAPS`
2022-10-10 20:06:26 +01: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
QMK Bot 663b250e2f Merge remote-tracking branch 'origin/master' into develop 2022-08-10 03:01:41 +00:00
Wilba 8a24fbbdae
Fix detection of EEPROM reset in some keyboards (#17970) 2022-08-09 20:01:09 -07:00
Nick Brassel 154d35ac14
Remove `UNUSED_PINS` (#17931) 2022-08-06 23:23:35 +10:00
Ryan 3da6575e24
Move keyboard USB IDs and strings to data driven: M (#17859) 2022-08-03 17:15:43 +10:00
Joel Challis b7771ec25b
RESET -> QK_BOOT default keymaps (#17037) 2022-05-15 20:26:27 +01:00
Ryan a8d440e4e0
Tidy up NKRO_ENABLE rules (#15382) 2021-12-09 16:05:44 +11:00
Ryan 315fb6e724
Remove empty config.h from default-ish keymaps (#15429) 2021-12-09 16:00:55 +11:00
Ryan c12b997679
Tidy up `SLEEP_LED_ENABLE` rules (#15362) 2021-12-01 21:13:00 +11:00
Joel Challis 2728603fe6
Move tmk_core/common/<plat> (#13918) 2021-11-19 10:41:02 -08:00
James Young 84ea77ead6
Remove `BOOTMAGIC_ENABLE = lite` option (#15002)
* remove BOOTMAGIC_ENABLE=lite setting

* change keyboard BOOTMAGIC_ENABLE rules

Edits keyboard-level instances of `BOOTMAGIC_ENABLE = lite` to `BOOTMAGIC_ENABLE = yes`.

* change keyboard BOOTMAGIC_ENABLE inline comments

Edits keyboard-level BOOTMAGIC_ENABLE inline comments to "Enable Bootmagic Lite".

* change keymap BOOTMAGIC_ENABLE rules

Edits keymap-level instances of `BOOTMAGIC_ENABLE = lite` to `BOOTMAGIC_ENABLE = yes`.

* change keymap BOOTMAGIC_ENABLE inline comments

Edits/adds keymap-level BOOTMAGIC_ENABLE inline comments to read "Enable Bootmagic Lite".

* change layout/user BOOTMAGIC_ENABLE rules/comments

Edits instances of `BOOTMAGIC_ENABLE = lite` to `BOOTMAGIC_ENABLE = yes`.

Edits/adds keymap-level BOOTMAGIC_ENABLE inline comments to read "Enable Bootmagic Lite".

* update non-rules.mk BOOTMAGIC_ENABLE references in keyboards/

* remove docs references to Full Bootmagic

* convert data-driven Bootmagic Lite instances

* remove Bootmagic Lite bodge from data-driven generation

* Merge remote-tracking branch 'upstream/develop' into rm/bootmagic-full_q4a

* update docs/ja/config_options.md per mtei

* update docs/faq_misc.md per mtei

Remove remaining Full Bootmagic reference.
2021-11-05 08:18:09 +11:00
James Young 843b9a7e4d
Merge remote-tracking branch 'upstream/master' into develop 2021-09-26 03:04:11 -07:00
James Young 6f36eb469d
Remove unused `IS_COMMAND()` instances and Magic Key definitions (#14610)
* Remove unused IS_COMMAND() instances from keyboard-level config.h, 0-9

* Remove unused IS_COMMAND() instances from keyboard-level config.h, A-B

* Remove unused IS_COMMAND() instances from keyboard-level config.h, C-D

* Remove unused IS_COMMAND() instances from keyboard-level config.h, E-G

* Remove unused IS_COMMAND() instances from keyboard-level config.h, handwired

* Remove unused IS_COMMAND() instances from keyboard-level config.h, H-M

* Remove unused IS_COMMAND() instances from keyboard-level config.h, N-R

* Remove unused IS_COMMAND() instances from keyboard-level config.h, S-Z

* Remove unused Magic Key definitions from keyboard-level config.h, 0-9

* Remove unused Magic Key definitions from keyboard-level config.h, A

* Remove unused Magic Key definitions from keyboard-level config.h, B

* Remove unused Magic Key definitions from keyboard-level config.h, C

* Remove unused Magic Key definitions from keyboard-level config.h, D-E

* Remove unused Magic Key definitions from keyboard-level config.h, F-H

* Remove unused Magic Key definitions from keyboard-level config.h, handwired

* Remove unused Magic Key definitions from keyboard-level config.h, I-K

* Remove unused Magic Key definitions from keyboard-level config.h, L-M

* Remove unused Magic Key definitions from keyboard-level config.h, N-R

* Remove unused Magic Key definitions from keyboard-level config.h, S-V

* Remove unused Magic Key definitions from keyboard-level config.h, W-Z

* Merge remote-tracking branch 'upstream/master' into clean/command_and_magic

* Remove remaining unused IS_COMMAND() instances from keyboard-level config.h
2021-09-26 02:57:20 -07:00
Joel Challis fa141a5a8f
Migrate STM32_EEPROM_ENABLE to use EEPROM_DRIVER (#14433) 2021-09-15 01:21:36 -07:00
QMK Bot bda8924795 Merge remote-tracking branch 'origin/master' into develop 2021-09-12 05:28:01 +00:00
Ryan 5af1799735
Remove BLUETOOTH_ENABLE from keyboard-level rules.mk (#14379) 2021-09-12 15:27:29 +10:00
fauxpark 1895151a9c Merge remote-tracking branch 'upstream/master' into develop 2021-09-12 14:10:26 +10:00
Ryan 4791cfae1a
Remove width, height and key_count from info.json (#14274) 2021-09-12 14:04:56 +10:00
QMK Bot 147289e173 Merge remote-tracking branch 'origin/master' into develop 2021-09-05 20:37:03 +00:00
Ryan fe6d6cf76d
Remove empty override functions (#14312)
* Remove empty override functions, 0-9

* Remove empty override functions, A-D

* Remove empty override functions, E-H

* Remove empty override functions, handwired

* Remove empty override functions, I-L

* Remove empty override functions, M-P

* Remove empty override functions, Q-T

* Remove empty override functions, U-Z
2021-09-05 21:36:31 +01:00
Ryan 41c50bb653
Change keyboard level include guards to `pragma once` (#14248)
* Change keyboard level include guards to `pragma once`

And clean up a lot of layout macros

* Oops

* Remove dangling endif
2021-09-01 19:03:14 +10:00
Joel Challis 58cd8c366c
Various fixes from reorg of files (#14051) 2021-08-18 09:54:41 +10:00
James Young a03aa301de
Remove Full Bootmagic (#13846)
* disambiguate Bootmagic rules in keymaps

The files edited by this commit were added at a point in time where `BOOTMAGIC_ENABLE = yes` enabled full Bootmagic.

This commit edits the files to specify that full Bootmagic is intended.

* remove BOOTMAGIC_ENABLE=full setting

* unify commented BOOTMAGIC_ENABLE rules in keyboards

Explicitly sets `BOOTMAGIC_ENABLE = no` in keyboards where the rule was commented out.

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;#[ \t]*\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-zA-Z]\+\).*;\1 = no       # Virtual DIP switch configuration;g' {} +
```

* remove commented Bootmagic rules from keymap/user level

Command:

```
find keyboards/ layouts/ users/ -type f -name 'rules.mk' -exec sed -i -e '/#.*\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*/d' {} +
```

* update keyboard BOOTMAGIC_ENABLE rule formatting

Sets the formatting of BOOTMAGIC_ENABLE rules to `BOOTMAGIC_ENABLE = [value]`, without the inline comments (which will be replaced later).

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
```

* update keyboards' BOOTMAGIC_ENABLE settings

Updates keyboard `rules.mk` files to use `BOOTMAGIC_ENABLE = lite` where `BOOTMAGIC_ENABLE = full` was being used.

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = \)full;\1lite;g' '{}' +
```

* update keymap/user BOOTMAGIC_ENABLE settings

Updates keymap/user `rules.mk` files to use `BOOTMAGIC_ENABLE = lite` where `BOOTMAGIC_ENABLE = full` was being used.

Commands:

```
find keyboards/ -type f -name 'rules.mk' -and -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE[ \t=]\+\)full;\1lite;g' '{}' +
find layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE[ \t=]\+\)full;\1lite;g' '{}' +
```

* remove and replace inline comments in keyboards and keymap/user files

Removes and replaces the inline comments, which have been updated to read `Enable Bootmagic Lite`.

Commands:

```
find keyboards/ -type f -name 'rules.mk' -and -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
find layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = lite\);\1     # Enable Bootmagic Lite;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = yes\);\1      # Enable Bootmagic Lite;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = no\);\1       # Enable Bootmagic Lite;g' '{}' +
```

* rename improperly named makefiles

Some files intended to be used as makefiles had improper names causing them to not be used as intended when building.

This commit corrects the filenames of the affected files.

* update renamed file with new rule formatting

* update QMK's template files

Updates QMK's `rules.mk` templates to use the new inline comment.

* update QMK Docs

- remove documentation of full Bootmagic
- update links to Bootmagic Lite doc
- add doc for Magic Keycodes

* rules.mk patch for coarse/ixora and coarse/vinta
2021-08-06 23:59:56 -07:00
Ryan cb23fe9fc1
Move RGBLight code into its own folder (#13312) 2021-06-28 15:15:24 +10:00