Commit Graph
174 Commits
Author SHA1 Message Date
QMK Bot 2dd1638e74 Merge remote-tracking branch 'origin/develop' into xap 2024-07-04 02:13:30 +00:00
Drashna Jaelre bdca9318f9 Change suspend condition check order on ChibiOS (#24020) 2024-07-04 12:13:00 +10:00
Nick Brassel 22f78171a2 Merge remote-tracking branch 'upstream/develop' into xap 2024-06-04 20:27:25 +10:00
Stefan KerkmannandRyan 8253697a63 [FIX] ChibiOS: USB Digitizer and Joystick IN endpoint compilation (#23854)
Co-authored-by: Ryan <fauxpark@gmail.com>
2024-06-03 22:35:46 +10:00
Nick Brassel 6aacdb0b76 Merge remote-tracking branch 'upstream/develop' into xap 2024-05-02 20:48:16 +10:00
Joel Challis 16cca527a6 Fix WAIT_FOR_USB handling (#23598) 2024-04-24 19:33:52 +01:00
QMK Bot b7285db208 Merge remote-tracking branch 'origin/develop' into xap 2024-03-29 03:41:31 +00:00
Robin CarlierandJoel Challis 42a725e355 Remove midi_ep_task from ChibiOS (#23162)
Co-authored-by: Joel Challis <git@zvecr.com>
2024-03-28 20:40:41 -07:00
zvecr b43031ae00 Merge remote-tracking branch 'origin/develop' into xap 2024-03-14 10:59:03 +00:00
Joel Challis 63dd131d81 Refactor vusb to protocol use pre/post task (#14944) 2024-03-14 21:45:12 +11:00
zvecr 9a6f0873fb format 2024-03-13 00:40:27 +00:00
zvecr 52adf283ed Merge remote-tracking branch 'origin/develop' into xap 2024-02-29 02:07:27 +00:00
Stefan Kerkmann 0e02b0c41e [Core] Refactor ChibiOS USB endpoints to be fully async (#21656) 2024-02-28 22:00:27 +11:00
zvecr 2ae5b27fad Merge remote-tracking branch 'origin/develop' into xap 2024-01-09 14:25:05 +00:00
Joel Challis b6b3efc14b Remove console out endpoint (#22304) 2024-01-09 14:01:34 +00:00
zvecr 60cf8ba553 Merge remote-tracking branch 'origin/develop' into xap 2023-11-01 01:19:30 +00:00
Stefan Kerkmann 5856d5e13b [Maintenance] USB HID control packet as struct (#21688)
* ChibiOS: USB HID control request as dedicated struct

Instead of accessing the raw USB setup packet and documenting the values
as the corresponding USB HID control request fields we introduce a
struct that allows direct access to the fields. This is safer and self
documenting.

* Rename usb_request.h to usb_types.h

In the future all shared USB data types can live in this file.
2023-10-27 18:44:58 +02:00
QMK Bot 8f95479846 Merge remote-tracking branch 'origin/develop' into xap 2023-10-23 04:44:20 +00:00
Ryan 0c160e1fba Separate 6KRO and NKRO report structs (#22267) 2023-10-23 15:43:46 +11:00
QMK Bot e06d31ff4a Merge remote-tracking branch 'origin/develop' into xap 2023-08-27 02:52:55 +00:00
Drashna JaelreandJoel Challis 25331be316 Revert changes to ChibiOS Suspend Code (#21830)
* Partially revert #19780

* Finish

* Get teensy 3.5/3.6 board files too

* fix lint issue

* Revert "[Bug] Restore usb suspend wakeup delay (#21676)"

This reverts commit e8e989fd7a.

* Apply suggestions from code review

Co-authored-by: Joel Challis <git@zvecr.com>

---------

Co-authored-by: Joel Challis <git@zvecr.com>
2023-08-27 03:52:12 +01:00
QMK Bot ad7e73d67a Merge remote-tracking branch 'origin/develop' into xap 2023-08-02 22:43:41 +00:00
Stefan Kerkmann e8e989fd7a [Bug] Restore usb suspend wakeup delay (#21676)
* Respect USB_SUSPEND_WAKEUP_DELAY on wakeup

This delay wasn't honored after removing `restart_usb_driver` from the
suspend and wakeup handling. It is now re-introduced in the appropriate
spot, namely after issuing a remote wakeup to a sleeping host.

* Remove old, unused and commented testing code
2023-08-02 23:42:57 +01:00
QMK Bot 91d129ca45 Merge remote-tracking branch 'origin/develop' into xap 2023-06-26 21:56:42 +00:00
Stefan Kerkmann a87c74ebe1 [Bug] Fix non-functional S3 wakeup / resume from suspense (#19780)
* Update ChibiOS-Contrib for USB suspend fixes

* Remove S3 wakup workaround

ChibiOS OTGv1 driver has a remote wakeup bug that prevents the device to
resume it's operation. 02516cbc24 
introduced a hotfix that forcefully restarted the usb driver as a workaround. 
This workaround broke multiple boards which do not use this driver / 
peripheral. With the update of ChibiOS this hotfix is now obsolete.

* Remove restart_usb_driver overrides

they are no longer necessary as the workaround is not needed anymore
for stm32f4

* Remove unused RP_USB_USE_SOF_INTR defines

The SOF interrupt is enabled dynamically by the RP2040 usb driver
2023-06-26 23:55:52 +02:00
QMK Bot 78680e1f09 Merge remote-tracking branch 'origin/develop' into xap 2023-06-26 08:37:34 +00:00
Purdea Andrei 3ebdb1258b Chibios USB: Take into account if host wants remote wakeup or not (#21287)
According to the USB 2.0 spec, remote wakeup should be disabled by
default, and should only be enabled if the host explicitly requests
it. The chibios driver code already takes care of storing this
information, and returning it on GET_STATUS requests. However our
application code has been ignoring it so far.

This is a USB compliance issue, but also a bug that causes trouble
in some cases: On RP2040 targets this has been causing problems if
a key is held down while the keyboard is plugged in. The keyboard
would fail to enumerate until all keys are released. With this
change that behavior is fixed.

Note that for LUFA targets this is already done correctly.
2023-06-26 10:36:32 +02:00
QMK Bot ff8d9fa382 Merge remote-tracking branch 'origin/develop' into xap 2023-06-22 14:07:41 +00:00
Ryan aad5746682 Move protocol makefiles into their respective folders (#21332)
* Move protocol makefiles into their respective folders

* Fix USB-USB converter
2023-06-22 15:07:28 +01:00
QMK Bot 84d5af3157 Merge remote-tracking branch 'origin/develop' into xap 2023-01-17 01:55:04 +00:00
Ryan 7acc3f4449 ChibiOS: Consolidate report sending code (#19607) 2023-01-16 17:54:26 -08:00
zvecr 2f7be506de Remove assumption on XAP interface number 2023-01-16 02:03:41 +00:00
QMK Bot df2a4556b6 Merge remote-tracking branch 'origin/develop' into xap 2023-01-15 23:30:12 +00:00
Sergey Vlasov 955829bfd0 Fix joystick build for ChibiOS (#19602)
`joystick_report_t` was renamed to `report_joystick_t`, but apparently
one place in the code was missed.
2023-01-15 23:29:29 +00:00
QMK Bot 805f49299a Merge remote-tracking branch 'origin/develop' into xap 2023-01-15 08:41:36 +00:00
Ryan a92071494a usb_main.c: remove CH_KERNEL_MAJOR check (#19597) 2023-01-15 19:40:52 +11:00
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
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
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