14 Commits (miryoku-merge-master)

Author SHA1 Message Date
Nick Brassel f6dd8dea2e
Remove usages of config_common.h from config.h files. (#19714) 3 years ago
Joel Challis 0730740add
Add mmoskal/uf2-stm32f103 bootloader support (#19594) 3 years ago
Stefan Kerkmann 3f5dc47296
[Core] Use polled waiting on ChibiOS platforms that support it (#17607)
* 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
3 years ago
Stefan Kerkmann d717396708
[Core] Add Raspberry Pi RP2040 support (#14877)
* 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>
3 years ago
Thomas Preisner bbab8eb993
Make bootloader_jump for dualbank STM32 respect STM32_BOOTLOADER_DUAL_BANK_DELAY (#17178) 4 years ago
Drashna Jaelre 787a68948f
[Core] Add Reboot keycode to core (#15990) 4 years ago
QMK Bot c3a03b6423
[CI] Format code according to conventions (#16888) 4 years ago
Joy Lee 25f849b397
Update wb32-dfu (#16438) 4 years ago
QMK Bot 63646e8906
Format code according to conventions (#16322) 4 years ago
Nick Brassel 0be2eaf174
Create a build error if no bootloader is specified. (#16181)
* Create a build error if no bootloader is specified.

* Update builddefs/bootloader.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
4 years ago
Dasky 08a42dc72c
Fix broken bootloader builds in develop. (#15880) 4 years ago
Ryan 5fb93934d0
Fixes for bootloader refactor build failures (#15638) 4 years ago
QMK Bot be2265d0d1
Format code according to conventions (#15593) 4 years ago
Ryan 6bc870d899
Refactor `bootloader_jump()` implementations (#15450)
* Refactor `bootloader_jump()` implementations

* Fix tests?

* Rename `atmel-samba` to `md-boot`
4 years ago