Commit Graph
188 Commits
Author SHA1 Message Date
QMK Bot ef9c3810c1 Merge remote-tracking branch 'origin/develop' into xap 2025-06-27 07:18:04 +00:00
Joel Challis bc5c5e3251 Align sleep_led logic (#25395) 2025-06-27 08:17:28 +01:00
zvecr a9f676948b Merge remote-tracking branch 'origin/develop' into xap 2025-05-12 12:06:53 +01:00
Joel Challis 88c094908b Add raw_hid support to host driver (#25255) 2025-05-12 08:38:48 +10:00
QMK Bot 595e339f57 Merge remote-tracking branch 'origin/develop' into xap 2024-10-18 07:57:41 +00:00
Stefan Kerkmann 3f9d464412 [Core] usb_device_state: consolidate usb state handling across implementations (#24258)
* usb_device_state: add idle_rate, led and protocol

Previously all usb drivers and platform implementations (expect for our
oddball atsam) tracked the same two global variables:

- keyboard_protocol: to indicate if we are in report or boot protocol
- keyboard_idle: for the idle_rate of the keyboard endpoint

And a local variable that was exposed trough some indirection:

- keyboard_led_state: for the currently set indicator leds (caps lock etc.)

These have all been moved into the usb_device_state struct wich is
accessible by getters and setters.

This reduces code duplication and centralizes the state management
across platforms and drivers.

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>

* usb_device_state: reset protocol on reset

The usb hid specification section 7.2.6 states:

When initialized, all devices default to report protocol. However the
host should not make any assumptions about the device’s state and should
set the desired protocol whenever initializing a device.

Thus on reset we should always do exactly that.

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>

* keyboards: fix oversize warnings

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>

---------

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>
2024-10-18 09:57:08 +02:00
QMK Bot d88eda5b37 Merge remote-tracking branch 'origin/develop' into xap 2024-07-05 11:08:24 +00:00
Joel Challis d0e89aecca Align LUFA suspend logic (#24055) 2024-07-05 12:02:39 +01: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
zvecr d364cbefa0 Fix LUFA builds 2024-03-14 11:45:14 +00: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 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
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 62522a1684 Merge remote-tracking branch 'origin/develop' into xap 2023-07-07 11:24:42 +00:00
Ryan 30de598650 tmk_core: remove direct quantum.h includes (#21465) 2023-07-07 21:24:07 +10: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 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 f202d4a291 Merge remote-tracking branch 'origin/develop' into xap 2023-01-20 16:21:59 +00:00
Ryan cf935d97ae Fix functions with empty params (#19647)
* Fix functions with empty params

* Found a bunch more
2023-01-20 16:21:17 +00:00
zvecr 2f7be506de Remove assumption on XAP interface number 2023-01-16 02:03:41 +00: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
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
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 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
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
Drashna Jael're 5db8ab38d9 Merge remote-tracking branch 'origin/develop' into xap 2022-09-29 13:30:12 -07:00
Ryan be8907d634 Further refactoring of joystick feature (#18437) 2022-09-27 18:37:13 +10: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
zvecr 194d6d65be format 2022-04-05 19:17:57 +01:00
zvecr c1b57354f6 Stub out more of broadcast messages 2022-04-05 18:54:28 +01:00
zvecr 51e09235a2 clang 2022-03-30 02:28:03 +01:00
zvecr 7f128c5286 Remove some assumptions on packet format 2022-03-30 02:09:19 +01:00