Commit Graph

83 Commits

Author SHA1 Message Date
fe577daf96 Remove .noci functionality (#19122) 2022-11-21 02:03:38 +00:00
fe652e6247 Fix references to mouse_report_t (which doesnt exist) (#19107) 2022-11-18 15:19:45 +00:00
db2aa039f1 Remove more UNUSED_PINS defines (#18940) 2022-11-03 17:42:19 +00:00
fb400f2ac2 Enabling Pointing Device support in register code functions (#18363) 2022-09-26 20:49:32 -07:00
7113ff3a6a Merge remote-tracking branch 'origin/master' into develop 2022-09-26 06:16:20 +00:00
b521641c50 [Keyboard] Ploopy Thumb Trackball (#18214)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
Co-authored-by: ploopyco <git@ploopy.co>
2022-09-25 23:15:50 -07:00
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
fa08cb2478 [Keymap] Drashna keymap updates for 0.18.0 (#18184)
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-08-28 12:55:19 -07:00
bbc3bc55f2 RESET -> QK_BOOT user keymaps (#17940) 2022-08-21 23:55:30 +01:00
826ab5412f Merge remote-tracking branch 'origin/master' into develop 2022-08-13 18:02:19 +00:00
b1fe7621eb RFC: add a simple implementation of the ploopy optical encoder (#17912) 2022-08-13 11:01:44 -07:00
154d35ac14 Remove UNUSED_PINS (#17931) 2022-08-06 23:23:35 +10:00
61a3fe4fac Merge remote-tracking branch 'origin/master' into develop 2022-08-03 07:23:52 +00:00
b6757d2380 Move keyboard USB IDs and strings to data driven: P (#17875) 2022-08-03 17:23:15 +10:00
0e81d63b64 Merge remote-tracking branch 'origin/master' into develop 2022-07-22 13:23:36 +00:00
de10784799 Fix compilation error in Ploopy Nano maddie keymap (#17733) 2022-07-22 14:22:56 +01:00
3c58f98929 [Core] PMW33XX drivers overhaul (#17613)
* PMW33XX drivers overhaul

This combines the PMW3389 and PM3360 drivers as they only differ in the
firmware blobs and CPI get and set functions. The following changes have
been made:

* PMW3389 now gets the same multi-sensor feature that is already available on the
  PMW3360.

* Introduced a shared pmw33xx_report_t struct is now directly readable via SPI
  transactions instead of individual byte-sized reads, saving multiple
  copies and bitshift operations.

* pmw33(89/60)_get_report functions had unreachable branches in their motion
  detection logic these have been simplied as much as possible.

* The fast firmware upload option has been removed as this becomes obsolete by
  the newly introduced polled waiting functions for ChibiOS polled waiting

* PMW33(60/89)_SPI_LSBFIRST and PMW33(60/89)_SPI_MODE config options
  have been removed as they don't need to be configurable.

* All PMW3389 and PMW3360 defines have been unified to a PMW33XX prefix
  to reduce code duplication and make the defines interchangeable

* Adjust keyboards to PMW33XX naming scheme
2022-07-14 11:50:00 +02:00
ce29cb0f10 Merge remote-tracking branch 'origin/master' into develop 2022-07-02 23:15:32 +00:00
br
fbf3cbcd5c Added PLOOPY_DRAGSCROLL_H_INVERT (#17453) 2022-07-03 00:13:45 +01:00
ca0a9d243c Merge remote-tracking branch 'origin/master' into develop 2022-07-02 12:03:45 +00:00
8c4a5f9ba2 Add lkbm keymap (#17218) 2022-07-02 22:03:11 +10:00
0ab51ee29d Add support for large Mouse Reports (#16371)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-06-08 18:39:16 -07:00
7c3cb99164 [Keymap] Fix maddie layout for ploopy/trackball_nano (#17213) 2022-06-02 09:37:28 -07:00
cda343acbe [Keymap] Drashna update for post Q2 merge (#17241) 2022-05-30 22:02:55 -07:00
0d67eec5e2 Ploopy Trackball Mini: only define DPI options as needed (#16160) 2022-04-18 02:11:56 -07:00
764dc18a81 Remove NO_ACTION_MACRO and NO_ACTION_FUNCTION from keyboard config.h (#16655) 2022-03-15 13:56:58 +00:00
83a32b2574 Remove 1k USB_POLLING_INTERVAL_MS config from keyboards and default-ish keymaps (#16448)
* Remove 1k USB_POLLING_INTERVAL_MS config from keyboard level

* Remove 1k USB_POLLING_INTERVAL_MS config from default|via keymaps
2022-02-26 03:20:57 +00:00
6a8df58887 Merge remote-tracking branch 'origin/master' into develop 2022-02-15 07:02:33 +00:00
92eb067a63 Add extra braces for trackball keymaps (#16361) 2022-02-15 18:01:54 +11:00
c9f192bae8 Merge remote-tracking branch 'origin/master' into develop 2022-02-15 01:16:27 +00:00
ac8bee7091 Fix multiple definition errors for trackball "boards" with no keys (#16350) 2022-02-15 01:15:53 +00:00
52d6f07a82 Merge remote-tracking branch 'origin/master' into develop 2022-02-12 03:23:18 +00:00
uqs
40529e89de [Keymap] Add uqs' keymaps for various boards and ploopy mouse (#16265) 2022-02-11 19:22:47 -08:00
44e62a3634 Merge remote-tracking branch 'origin/master' into develop 2022-01-25 13:43:25 +00:00
ca10e4d075 [Keyboard] Fix orientation issues for Ploopy pointing devices (#16035) 2022-01-25 13:42:54 +00:00
30c201e1c5 Merge remote-tracking branch 'origin/master' into develop 2022-01-08 18:45:13 +00:00
6fe3a1af01 [Keyboard] Fix inverted ploopy trackball (#15790) 2022-01-08 10:44:37 -08:00
uqs
8b44eaa63e Update pmw3360 comments to match the datasheet better, fix delays. (#15682) 2022-01-02 00:06:17 -08:00
a8d440e4e0 Tidy up NKRO_ENABLE rules (#15382) 2021-12-09 16:05:44 +11:00
bff5807b5b [Keyboard] Fix minor typo in Ploopy Trackball Docs (#14846) 2021-12-08 09:51:34 -08:00
b66b911fa2 [Keyboard] Fix minor typo in Ploopy Trackball Mini Docs (#14845) 2021-12-07 12:01:16 -08:00
c12b997679 Tidy up SLEEP_LED_ENABLE rules (#15362) 2021-12-01 21:13:00 +11:00
eeebb1dd3a [Keyboard] Fix compilation issues for Ploopy Trackball classic (#15364) 2021-12-01 05:37:15 +11:00
62e01928cd [Keyboard] Ploopy improvements (#15348) 2021-11-29 08:23:29 -08:00
23d3ebd78a [Keyboard] Minor typo and broken link fix (#14847) 2021-11-29 00:30:26 -08:00
1e48403538 fix typos (#15316) 2021-11-28 07:02:32 +11:00
0e6548303d [Keyboard] Fix call to pointing_device_handle_buttons (#15313) 2021-11-27 07:23:02 -08:00
56e3f06a26 Rework and expand Pointing Device support (#14343)
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2021-11-14 22:03:24 -08:00
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
9200baf593 [Keyboard] Fix minor typo in Ploopy Trackball Nano Docs (#14717) 2021-10-16 09:03:12 -07:00