Commit graph

156 commits

Author SHA1 Message Date
Ryan 5e4b076af3
Remove legacy keycodes, part 5 (#18710)
* `KC_SLCK` -> `KC_SCRL`
* `KC_NLCK` -> `KC_NUM`
2022-10-15 22:29:43 +01:00
Ryan 8833b28361
Remove UNICODE_KEY_OSX and UC_OSX (#18290) 2022-09-06 18:07:08 +01:00
Marek Kraus 0237ff0c62
[Core] Rework PS/2 driver selection (#17892)
* [Core] Rework PS/2 driver selection

Enabling and selecting PS/2 driver was using old approach,
so it was reworked to current approach, inspired by Serial
and WS2812 driver selections.

* [Keyboard] Update keyboards using PS/2 to use new PS/2 driver selection

* [Docs] Update PS/2 documentation to use new PS/2 driver selection

* Fix indentation

* [Core] Add PS2 to data driver

* Fix oversight in property name

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Add PS/2 pins to data driven mappings

Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-08-31 09:16:07 +02: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
Joel Challis bbc3bc55f2
RESET -> QK_BOOT user keymaps (#17940) 2022-08-21 23:55:30 +01:00
Nick Brassel 154d35ac14
Remove UNUSED_PINS (#17931) 2022-08-06 23:23:35 +10:00
QMK Bot 06fe4b16d2 Merge remote-tracking branch 'origin/master' into develop 2022-07-30 07:32:18 +00:00
Ryan 2d778d2ff2
Move keyboard USB IDs and strings to data driven: handwired (#17822) 2022-07-30 17:31:44 +10:00
Joel Challis c3f1ba7dd1
Remove full bootmagic config (#17702) 2022-07-19 02:28:23 +01:00
QMK Bot a1fb1405e4 Merge remote-tracking branch 'origin/master' into develop 2022-07-17 12:03:31 +00:00
Joel Challis 37cd5ad810
Remove full bootmagic config (#17701) 2022-07-17 13:02:56 +01:00
Drashna Jaelre 0da6562c4d
Make default layer size 16-bit (#15286)
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2022-06-19 07:37:51 +10:00
Joel Challis b7771ec25b
RESET -> QK_BOOT default keymaps (#17037) 2022-05-15 20:26:27 +01:00
Ryan 764dc18a81
Remove NO_ACTION_MACRO and NO_ACTION_FUNCTION from keyboard config.h (#16655) 2022-03-15 13:56:58 +00:00
Ryan bd70f5261c
Remove matrix_key_count() (#16603)
* Remove `matrix_key_count()`

* Remove `matrix_bitpop()`
2022-03-10 12:18:07 +00:00
QMK Bot 2d4a69cfc6 Merge remote-tracking branch 'origin/master' into develop 2022-02-11 12:38:20 +00:00
Ryan 5f10387c41
handwired/promethium: fix missing include (#16317) 2022-02-11 12:37:36 +00:00
Ryan 7d685956cc
Rename AdafruitBLE to BluefruitLE (#16127) 2022-01-30 17:29:42 +00:00
fauxpark c394bf1c98 Merge remote-tracking branch 'upstream/master' into develop 2021-12-09 17:24:05 +11:00
Ryan a8d440e4e0
Tidy up NKRO_ENABLE rules (#15382) 2021-12-09 16:05:44 +11:00
Drashna Jael're af936c6ae6
Merge remote-tracking branch 'origin/master' into develop 2021-12-08 08:17:55 -08:00
Ryan 7f90cb1781
Remove references to Makefile in keyboard-level rules.mk (#15427) 2021-12-07 23:40:26 +00:00
fauxpark 0b241ea4f7 Merge remote-tracking branch 'upstream/master' into develop 2021-12-02 03:26:54 +11:00
Ryan c12b997679
Tidy up SLEEP_LED_ENABLE rules (#15362) 2021-12-01 21:13:00 +11:00
Stefan Kerkmann c1297ceb97
[Core] Remove matrix_is_modified() and debounce_is_active() (#15349) 2021-11-29 08:22:10 -08:00
Joel Challis 84d5198ef9
Align PS/2 GPIO defines (#14745)
* Align PS/2 GPIO

* Align PS/2 GPIO

* refactor more keyboards

* Remove more defines

* Put back avr/chibios split

* format
2021-10-20 20:07:40 +01:00
QMK Bot 1667f1375b Merge remote-tracking branch 'origin/master' into develop 2021-09-30 14:49:11 +00:00
James Young 292b7b3835
Remove firmware size impact notes from <keyboard>/rules.mk (#14652) 2021-09-30 15:48:36 +01:00
QMK Bot e5d48f6d16 Merge remote-tracking branch 'origin/master' into develop 2021-09-30 09:17:50 +00:00
Ryan 0b37e07f90
Remove redundant MIDI_ENABLE = no in keyboard-level rules.mk (#14649) 2021-09-30 19:17:20 +10:00
James Young 922c8071e4
Merge remote-tracking branch 'upstream/master' into develop 2021-09-29 23:23:10 -07:00
Ryan 36bc3c867e
Remove redundant UNICODE_ENABLE = no in keyboard-level rules.mk (#14633) 2021-09-30 08:14:21 +10: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
fauxpark 94572d74b5 Merge remote-tracking branch 'upstream/master' into develop 2021-09-21 20:19:07 +10:00
Ryan 6b74e48f81
Remove audio pin references in rules.mk (#14532) 2021-09-21 20:04:03 +10:00
Ryan bcf4551f74
Move Bluetooth config to common_features.mk (#14404)
* Move Bluetooth config to common_features.mk

* Update common_features.mk

Co-authored-by: Drashna Jaelre <drashna@live.com>

Co-authored-by: Drashna Jaelre <drashna@live.com>
2021-09-12 08:22:03 -07: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 e6ff638abf Merge remote-tracking branch 'origin/master' into develop 2021-09-10 03:36:14 +00:00
Ryan 7eea780a7d
Remove bootloader listings from rules.mk (#14330) 2021-09-10 13:35:46 +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
James Young 4b453dca92
Remove MIDI Configuration boilerplate (#11151)
* remove keyboard-level instances of `MIDI_ENABLE = no`

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e  '/^[ #]*MIDI_ENABLE[ \t]*=[ \t]*no/d' {} +
```

Co-Authored-By: Nick Brassel <nick@tzarc.org>

* fix case-sensitivity issues on MIDI_ENABLE

Change instances of `MIDI_ENABLE = YES` to `MIDI_ENABLE = yes`.

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;MIDI_ENABLE[ \t]*=[ \t]*[Yy][Ee][Ss];MIDI_ENABLE = yes;g' {} +
```

* replace `# MIDI controls` with `# MIDI support`

Replace `# MIDI controls` with `# MIDI support` in keyboard-level `rules.mk` files.

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;#[ \t]*MIDI[ \t]*\(controls\|support\).*;# MIDI support;g' {} +
```

* align inline comments

Aligns the inline comments to the length used by the QMK AVR rules.mk template.

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;MIDI_ENABLE *= *yes.*;MIDI_ENABLE = yes           # MIDI support;g'  {} +
```

* remove commented instances of `MIDI_ENABLE` from keyboard `rules.mk` files

Commands:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;#\([ \t]*MIDI_ENABLE\) = yes; \1 = no ;' {} +
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;^\([ \t]*\)\(MIDI_ENABLE = no\);\2\1;' {} +
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e '/^[ #]\+MIDI_ENABLE *= *no/d' {} +
```

* remove MIDI configuration boilerplate from keyboard config.h files

Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-08-16 06:51:13 +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
Drashna Jaelre 21e0a9780d
[Keyboard] Fix matrix issues with Promethium (#13648) 2021-07-22 21:02:50 -07:00
Zach White adf0d70da4
first pass: matrix consistency improvements (#13471) 2021-07-11 08:41:57 -07:00
Ryan 44260c3414
Remove API_SYSEX_ENABLEs from rules.mk (#13389) 2021-06-30 23:30:42 -07:00
Drashna Jaelre 7161d65070
Remove FAUXCLICKY feature (deprecated) (#11829) 2021-02-09 09:49:05 -08:00