Age | Commit message (Collapse) | Author |
|
* feat: tentative fix for keyboard crash during esd testing
* feat: adds support for the GD32 voyager
* feat: adds voyager's dfu suffix
* fix: instability issues over i2c
* fix: more robust right side scan
* fix: tentative delay after init
* Revert "fix: tentative delay after init"
This reverts commit b0a6461cf1cef60574eac1647fd14e1fe63a020c.
* fix: scan left side in between right scan process
* fix: resets matrix + layer state when reconnecting the right side
* chore: comments and code cleanup
* fix: restore previous control flow
* fix: decouple led driver reinit from io expander reinit
* feat: reinit led drivers independtly
* fix: prevents slamming the led driver over i2c
* Revert "fix: prevents slamming the led driver over i2c"
This reverts commit 48b8c809ea7a99ad2c3e941b83313787985c95e0.
* Revert "feat: reinit led drivers independtly"
This reverts commit 6405e6b3673478af1d98244c4df6ab73b95b18e1.
* fix: reboot on io expander
* fix: wait time after reading the io expander
* chore: code cleanup and some refactors.
* feat: adds led brightness and status led control over hid
* fix: remove stray printf
* fix: compilation error on ergodox
* fix: gd32 eeprom fix
* fix: caps lock crash
* fix: soft reset to bootloader key.
* chore: move the app address define where it should be
* fix: cleanup + debounce default
* feat: tentatively set gd32 clock to 98Mhz
* feat: realign to latest chibios contrib
* chore: points to ZSA's chibios contrib fork
---------
Co-authored-by: Florian Didron <0x6664@hey.com>
|
|
|
|
* wmic deprecated?
* Update platforms/avr/flash.mk
* Update platforms/avr/flash.mk
|
|
|
|
|
|
|
|
|
|
|
|
|
|
...by adding the missing STM32 DMA defines.
|
|
|
|
Co-authored-by: Mariappan Ramasamy <947300+Mariappan@users.noreply.github.com>
Co-authored-by: Mariappan Ramasamy <maari@basis-ai.com>
Co-authored-by: Sadek Baroudi <sadekbaroudi@gmail.com>
|
|
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: yiancar <yiancar@gmail.com>
|
|
Co-authored-by: Joy <chang.li@westberrytech.com>
|
|
Co-authored-by: Joy <chang.li@westberrytech.com>
|
|
|
|
|
|
|
|
Unfortunately, the crippled versions of “Bluepill” boards with
STM32F103C6xx chips instead of STM32F103C8xx are now sold all over the
place, sometimes advertised in a confusing way to make the difference
not noticeable until too late. Add minimal support for these MCUs in
the common “Bluepill with stm32duino” configuration, so that it could be
possible to make something useful from those boards (although fitting
QMK into the available 24 KiB of flash may be rather hard).
(In fact, I'm not sure whether the “STM32” part of the chip name is
actually correct for those boards of uncertain origin, so the onekey
board name is `bluepill_f103c6`; another reason for that name is to
match the existing `blackpill_f401` and `blackpill_f411`.)
The EEPROM emulation support is not included on purpose, because
enabling it without having a working firmware size check would be
irresponsible with such flash size (the chance that someone would build
a firmware where the EEPROM backing store ends up overlapping some
firmware code is really high). Other than that, enabling the EEPROM
emulation code is mostly trivial (the `wear_leveling` driver with the
`embedded_flash` backing store even works without any custom
configuration, although its code is significantly larger than the
`vendor` driver, which may also be important for such flash size).
|
|
|
|
|
|
|
|
|
|
|
|
msg_t is MSG_OK in the success case and either MSG_RESET or MSG_TIMEOUT
in case of errors. So actually use them in the comparison.
|
|
From the ChibiOS HAL I2C driver pages:
After a timeout the driver must be stopped and restarted because the bus is in
an uncertain state.
This commit does that stopping explicitly on any error that occurred, not only
timeouts. As all the i2c functions restart the peripheral if necessary it is
safe to do so.
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
|
|
|
|
|
|
* Fixup read address for EFL driver.
* Fixup sequencing of SPI.
* Lock during init of EFL backing store.
|
|
|
|
|
|
|
|
* Use polled waiting on platforms that support it
Due to context switching overhead waiting a very short amount of time on
a sleeping thread is often not accurate and in fact not usable for timing
critical usage i.e. in a driver. Thus we use polled waiting for ranges
in the us range on platforms that support it instead. The fallback is
the thread sleeping mechanism.
This includes:
* ARM platforms with CYCCNT register (ARMv7, ARMv8) this is
incremented at CPU clock frequency
* GD32VF103 RISC-V port with CSR_MCYCLE register this is incremented at
CPU clock frequency
* RP2040 ARMv6 port which uses the integrated timer peripheral which is
incremented with a fixed 1MHz frequency
* Use wait_us() instead of chSysPolledDelayX
...as it is powered by busy waiting now.
* Add chibios waiting methods test bench
|
|
|
|
|
|
mpaland printf implementation was abandoned in ~2019 and the fork by
eyalroz is now regarded to be the goto replacement of it. So this commit
incoporates the changes needed to use this fork in QMK.
Note that pointer ptrdiff_t is always supported since commit
51c90f93a97fdaef895783ecbe24569be0db7cb8
|
|
|
|
|
|
* Tentative Teensy 3.5 support
* Set firmware format to .hex for ARM Teensys
* Got to "device descriptor failed" by comparing with Teensy 3.6 code
* Drop down to 96MHz...
* Bump back up to 120MHz
|
|
|
|
|
|
* Disable RESET keycode because of naming conflicts
* Add Pico SDK as submodule
* Add RP2040 build support to QMK
* Adjust USB endpoint structs for RP2040
* Add RP2040 bootloader and double-tap reset routine
* Add generic and pro micro RP2040 boards
* Add RP2040 onekey keyboard
* Add WS2812 PIO DMA enabled driver and documentation
Supports regular and open-drain output configuration. RP2040 GPIOs are
sadly not 5V tolerant, so this is a bit use-less or needs extra hardware
or you take the risk to fry your hardware.
* Adjust SIO Driver for RP2040
* Adjust I2C Driver for RP2040
* Adjust SPI Driver for RP2040
* Add PIO serial driver and documentation
* Add general RP2040 documentation
* Apply suggestions from code review
Co-authored-by: Nick Brassel <nick@tzarc.org>
Co-authored-by: Nick Brassel <nick@tzarc.org>
|
|
|
|
|
|
|
|
|
|
* avr i2c_master: Fix 1ms timeout
i2c_start() produces a minimum time_slice of 1ms for use as timeout
value.
The timer granularity is 1ms, it is entirely possible for timer_count
to tick up immediately after the last timer read and falsely trigger
timeout with a '>= 1' comparison.
* avr/drivers/i2c_master: Use timer_elapsed()
|
|
|
|
|
|
(#16669)
|