Commit Graph
479 Commits
Author SHA1 Message Date
QMK Bot 9e9e2c775a Merge remote-tracking branch 'origin/develop' into xap 2022-12-08 17:11:29 +00:00
QMK Bot 1786932d9f [CI] Format code according to conventions (#19265) 2022-12-09 04:10:52 +11:00
QMK Bot 93e253d941 Merge remote-tracking branch 'origin/develop' into xap 2022-12-08 17:09:14 +00:00
a23333eb58 Return USB HID GET_REPORT requests (#14814)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-12-09 04:08:36 +11:00
QMK Bot 1af901f991 Merge remote-tracking branch 'origin/develop' into xap 2022-12-08 16:46:05 +00:00
85ee55ff3b Detect host OS based on USB fingerprint (#18463)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-12-09 03:45:30 +11:00
QMK Bot 527975a37b Merge remote-tracking branch 'origin/develop' into xap 2022-12-08 15:57:08 +00:00
lokher 0d7edbbcbe Fixed NKRO issue caused by HID_SET_PROTOCOL on Chibios platform (#17588) 2022-12-09 02:56:36 +11:00
QMK Bot 397fd1c48e Merge remote-tracking branch 'origin/develop' into xap 2022-12-02 22:07:48 +00:00
Joel Challis 4540f52e98 Revert WB32 ISO workaround (#19224) 2022-12-03 09:07:16 +11:00
Nick Brassel 1d0787d861 Merge remote-tracking branch 'upstream/develop' into xap 2022-11-27 04:39:46 +11:00
Ryan 1e95f7be8f Joystick feature improvements (#19052) 2022-11-27 03:14:45 +11:00
zvecr ff2f0d943b ChibiOS - Non blocking xap_send_base 2022-11-23 21:27:17 +00:00
zvecr 8aa871573b Merge remote-tracking branch 'origin/develop' into xap 2022-11-13 02:00:54 +00:00
Ryan 6cc9513ab0 Digitizer feature improvements (#19034) 2022-11-12 23:28:11 +00:00
QMK Bot 8c4ff20201 Merge remote-tracking branch 'origin/develop' into xap 2022-10-22 17:16:46 +00:00
Sergey Vlasov 1ea54e5052 ChibiOS USB: Add a dummy IN callback to work around LLD bugs (#18811)
In #18631 some IN notification callbacks that were doing nothing were
removed, which should be a valid thing to do (ChibiOS HAL checks the
`in_cb` and `out_cb` pointers for being non-NULL before invoking those
optional callbacks).  However, it turned out that some less popular USB
LLDs (KINETIS and MIMXRT1062) have their own checks for those pointers,
and (incorrectly) skip the ChibiOS callback handling when those pointers
are NULL, which breaks the code for the `USB_USE_WAIT` configuration
option (the waiting thread never gets resumed if the corresponding
callback pointer is NULL).

Add those dummy callbacks again (but use a single function for all of
them instead of individual ones for each endpoint); this restores the
KINETIS and MIMXRT1062 boards to the working state while the LLDs are
getting fixed.
2022-10-22 18:16:09 +01:00
QMK Bot 7bc4c16673 Merge remote-tracking branch 'origin/develop' into xap 2022-10-19 06:18:30 +00:00
Nick Brassel f99b9ba270 Widen the ARM Cortex-M family support. Allow USB peripheral change. (#18767) 2022-10-19 17:17:49 +11:00
QMK Bot ba7ac46cfd Merge remote-tracking branch 'origin/develop' into xap 2022-10-15 16:54:31 +00:00
Ryan 19e2dd742b LUFA: Consolidate report sending code (#18629) 2022-10-15 12:53:57 -04:00
QMK Bot 9e93a37c5c Merge remote-tracking branch 'origin/develop' into xap 2022-10-12 23:29:25 +00:00
RyanandSergey Vlasov 2078a56369 Fix joystick functionality for ChibiOS and OTG (Blackpill) (#18631)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2022-10-13 10:28:49 +11:00
QMK Bot 9b870630b1 Merge remote-tracking branch 'origin/develop' into xap 2022-10-09 20:09:00 +00:00
nezumee d6d6cdcb4f Make MIDI output endpoint use the out direction (#18654) 2022-10-09 21:08:27 +01:00
QMK Bot cd1cbddd70 Merge remote-tracking branch 'origin/develop' into xap 2022-10-07 02:35:35 +00:00
Ryan 6dbbeea46a Refactor send_extra (#18615) 2022-10-06 19:35:01 -07:00
Stefan Kerkmann 907640e40e [Bug] XAP: Fix unaligned memory access in config blob handler and USB task loop condition (#18612)
* Fix unaligned memory access in config blob handler

data* points in the middle of an u8 array, casting this to an u16* and
dereferencing it leads to an unaligned memory access - which hardfaults
on Cortex M0 mcus e.g. RP2040s.

* Actually read until there is no more data to be read
2022-10-05 20:26:53 +01:00
QMK Bot 2ce2b84d72 Merge remote-tracking branch 'origin/develop' into xap 2022-10-04 22:19:54 +00:00
Ryan 09d3e27710 Refactor more host code (programmable button & digitizer) (#18565) 2022-10-05 09:19:12 +11:00
QMK Bot 08708002aa Merge remote-tracking branch 'origin/develop' into xap 2022-10-02 13:36:04 +00:00
Stefan Kerkmann 6f13a76530 [Core] ChibiOS: Fix USB bus disconnect handling (#18566) 2022-10-02 15:35:33 +02:00
Drashna Jael're 5db8ab38d9 Merge remote-tracking branch 'origin/develop' into xap 2022-09-29 13:30:12 -07:00
Ryan f80058d96e Start Bluetooth API (#18366) 2022-09-29 18:38:09 +01:00
Ryan be8907d634 Further refactoring of joystick feature (#18437) 2022-09-27 18:37:13 +10:00
QMK Bot 166b18dfe1 Merge remote-tracking branch 'origin/develop' into xap 2022-09-17 05:48:41 +00:00
Joshua Diamond a26f1ddafa Chromeos keycodes (#18212) 2022-09-17 15:48:09 +10:00
QMK Bot ffbc30e943 Merge remote-tracking branch 'origin/develop' into xap 2022-09-12 22:59:18 +00:00
Joshua Diamond 23e12497b2 Merge remote-tracking branch 'origin/master' into develop 2022-09-12 18:57:58 -04:00
Joel Challis 16c2b528df GMMK2: Fix 'ISO' within product name (#18322) 2022-09-10 13:31:46 +01:00
QMK Bot 2471270b91 Merge remote-tracking branch 'origin/develop' into xap 2022-09-07 18:59:58 +00:00
Ryan f7d2b001bc Move Bluetooth-related function calls up to host/keyboard level (#18274)
* Move Bluetooth-related function calls up to host/keyboard level

* Remove pointless set_output() call

* Move bluetooth (rn42) init to end of keyboard_init()

* Enable SPI/UART for ChibiOS targets

* Some more slight tweaks
2022-09-07 19:59:24 +01:00
QMK Bot a1da56d6bf Merge remote-tracking branch 'origin/develop' into xap 2022-09-02 20:51:11 +00:00
Ryan f76b55d5ad Adjust EXTRAKEY_ENABLE ifdefs for send_extra() (#18249) 2022-09-02 21:50:36 +01:00
QMK Bot ac46d4a756 Merge remote-tracking branch 'origin/develop' into xap 2022-09-02 19:38:58 +00:00
Ryan 09d668eb0e Simplify extrakeys sending at the host driver level (#18230)
* Simplify extrakeys sending at the host driver level

* There are two arguments here

* Wrong syntax

* Adjust keyboards which use a custom host driver
2022-09-02 20:38:27 +01:00
QMK Bot ea36c25732 Merge remote-tracking branch 'origin/develop' into xap 2022-08-30 08:20:35 +00:00
Jeff EplerandStefan Kerkmann 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 986b77bff6 Merge remote-tracking branch 'origin/develop' into xap 2022-08-29 19:20:28 +00:00
QMK Bot 1a33b5a479 Merge remote-tracking branch 'origin/master' into develop 2022-08-29 19:19:56 +00:00