Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge upstream/master #21

Open
wants to merge 10,000 commits into
base: anne_pro
Choose a base branch
from

Conversation

TinfoilSubmarine
Copy link

Sorry for noise, but I think this may be a better option than rebasing the entire patchset.

I had to make a few updates to get it compiling. It still needs more work on the new JSON stuff, but it builds and works on my board.

Something must have been changed/fixed in chibios and EEPROM works now, so I also enabled that.

joe-scotto and others added 30 commits October 10, 2024 20:27
* Separate RGBLight/RGB Matrix keycode handling

* Remove `_DISABLE_KEYCODES` handling

* Update RGB Matrix keycode docs

* Update underglow keycodes for previously migrated boards

* Update keycodes for boards with custom handling

* Fix typos

* Fix bad merge
quantum: util: add bit and bitmask helpers

These helpers are handy and can prevent off-by-one errors when working
with registers and general low level bit manipulation tasks. The macros
themself are inspired by the bits.h macros from the linux kernel source
code.

Signed-off-by: Stefan Kerkmann <[email protected]>
Co-authored-by: Pascal Getreuer <[email protected]>
Co-authored-by: Joel Challis <[email protected]>
Co-authored-by: jack <[email protected]>
Co-authored-by: Ryan <[email protected]>
…ementations (qmk#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 <[email protected]>

* 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 <[email protected]>

* keyboards: fix oversize warnings

Signed-off-by: Stefan Kerkmann <[email protected]>

---------

Signed-off-by: Stefan Kerkmann <[email protected]>
Update readme.md

remove orphan layout
@TinfoilSubmarine
Copy link
Author

TinfoilSubmarine commented Feb 12, 2025

I've made some additional commits the last few days, mostly related to getting everything up-to-date with new JSON requirements. I also found a bug in QMK's implementation of EEPROM for STM32L[01]xx. For certain lower-end devices from the line-up (referred to as "Cat.1 devices" in their docs), only non-null writes to EEPROM are permitted for all write types except full word writes. I've made a fix that does word-aligned writes to remedy this.

EDIT: Almost forgot: I also was able to get this working with L152 code with one small include_next tweak patch to ChibiOS to use a lower-end L152 (the equivalent one from your existing code, STM32L152xB). So this code won't currently work unless the patch is manually done. Until this is remedied, anyone testing can just drop that commit.

@TinfoilSubmarine TinfoilSubmarine force-pushed the anne_pro branch 4 times, most recently from 2ec2d0e to df20384 Compare February 13, 2025 17:57
@TinfoilSubmarine TinfoilSubmarine force-pushed the anne_pro branch 10 times, most recently from 90b0bf1 to b0c879c Compare February 14, 2025 18:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.