Commit Graph
100 Commits
Author SHA1 Message Date
Nick Brassel 3b14383f48 Fix line endings. 2022-07-02 22:20:30 +10:00
Nick Brassel a9af4c928e Merge remote-tracking branch 'upstream/master' into develop 2022-07-02 21:13:06 +10:00
Nick BrasselandGitHub 5846b40f74 RP2040 emulated EEPROM. (#17519) 2022-07-02 15:18:50 +10:00
Nick BrasselandGitHub 9f1c4f304d Fixup #17438 (#17533) 2022-07-02 14:29:45 +10:00
Nick BrasselandGitHub c8fbfca1b6 [QP] Explicit buffer alignment. (#17532) 2022-07-02 13:22:46 +10:00
Nick BrasselandGitHub b67ae67687 [QP] Add ILI9488 support. (#17438) 2022-07-02 13:20:45 +10:00
Nick BrasselandGitHub 34e244cecf Wear-leveling EEPROM drivers: embedded_flash, spi_flash, legacy (#17376) 2022-06-30 07:42:23 +10:00
Nick BrasselandGitHub 2b094d4112 Enable dependabot for actions. 2022-06-29 08:46:47 +10:00
Nick BrasselandGitHub 1e402060a6 Bump revision for auto-tagging.
Seems there was an error, but it wasn't failing the actions run.

https://github.com/anothrNick/github-tag-action/releases/tag/1.39.0
2022-06-29 08:13:38 +10:00
01ecf332ff Generic wear-leveling algorithm (#16996)
* Initial import of wear-leveling algorithm.

* Alignment.

* Docs tweaks.

* Lock/unlock.

* Update quantum/wear_leveling/wear_leveling_internal.h

Co-authored-by: Stefan Kerkmann <karlk90@pm.me>

* More tests, fix issue with consolidation when unlocked.

* More tests.

* Review comments.

* Add plumbing for FNV1a.

* Another test checking that checksum mismatch clears the cache.

* Check that the write log still gets played back.

Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-06-27 07:18:21 +10:00
Nick BrasselandGitHub a8677ed296 Fix up Djinn fuse handling. (#17465) 2022-06-24 14:11:06 +10:00
Nick BrasselandGitHub 589e756e98 Fixup SPI mode 3 => 0 on tzarc/djinn. (#17440) 2022-06-21 10:56:47 +10:00
Nick BrasselandGitHub aa06893b58 Add Djinn. (#17382)
* Add Djinn.

* Review comments.

* Further cleanup.
2022-06-20 14:20:56 +10:00
Nick BrasselandGitHub b5104c3a93 Fixup stale labels lists. (#17415) 2022-06-18 17:33:55 +10:00
Nick BrasselandGitHub 999b91fbd9 SPI Bugfix for ChibiOS 21.11.1 -- also rollback AW20216 mode change issue. (#17371) 2022-06-17 08:03:38 +10:00
Nick BrasselandGitHub 5ccb2fd003 Swap to actions/stale. (#17404) 2022-06-17 07:16:01 +10:00
Nick BrasselandGitHub fa8fb60279 Dump out the largest symbols in flash and in RAM. (#17397) 2022-06-16 09:55:15 +10:00
Nick BrasselandGitHub 15dab01e6a Inform people that things may not work. (#17391) 2022-06-14 20:15:01 +10:00
Nick Brassel f18afffc8d actions/stale: 150 operations, oldest-first. 2022-06-13 11:15:24 +10:00
Nick Brassel 856029f7c5 Swap to 1000 stale actions while debugging. 2022-06-13 11:05:25 +10:00
Nick BrasselandGitHub 9d07ab88af Fixup stale action. (#17373) 2022-06-13 10:55:16 +10:00
Nick BrasselandGitHub f7ab10a3c1 Add stale action. (#17372)
* Add stale action.

* Allow for manual trigger.
2022-06-13 10:43:52 +10:00
Nick BrasselandGitHub 1d75e20cd8 Add WB32 evaluation board onekey targets. (#17330) 2022-06-08 10:47:56 +10:00
Nick BrasselandGitHub 1085500e89 Rework paths for eeprom locations. (#17326)
* Rework paths for eeprom locations.

* File relocation.

* Wrong file move.

* Fixup test paths.
2022-06-08 09:42:35 +10:00
Nick BrasselandGitHub 08c556b78b Add keymap wrappers for introspection into the keymap. (#17229)
* Introspection handlers for keymaps.

* Renaming.
2022-06-05 10:26:02 +10:00
Nick BrasselandGitHub 8545473307 Removes terminal from QMK. (#17258) 2022-05-30 22:38:08 -07:00
Nick BrasselandGitHub 89a5d5aea0 Fixup command sequencing for master/develop. (#17227) 2022-05-29 09:07:11 +10:00
Nick Brassel 87c3a53716 Branch point after 2022-05-28 Breaking Change. 2022-05-29 08:16:00 +10:00
Nick Brassel 103c08cc75 Merge branch 'master' into develop 2022-05-29 08:13:56 +10:00
Nick Brassel b835171008 Merge branch 'develop' -- breaking changes 2022-05-28. 2022-05-29 07:57:11 +10:00
Nick Brassel 0c8f78020d Merge point for 2022-05-28 Breaking Change 2022-05-29 07:53:50 +10:00
Nick BrasselandGitHub d0af56da33 Breaking changes for 2022q2. (#17221) 2022-05-29 07:50:21 +10:00
Nick BrasselandGitHub 5816288926 Warn about LTO with arm_atsam, not ChibiOS. (#17106) 2022-05-16 15:29:55 +10:00
Nick BrasselandGitHub be9fa68785 Also format *.hpp files. (#16997) 2022-05-04 05:48:41 +10:00
Nick BrasselandGitHub a727bd6463 Update ChibiOS-Contrib (#16915) 2022-04-22 09:14:00 +01:00
Nick BrasselandGitHub c76a23c37a Fix build. (#16891) 2022-04-19 20:00:37 +01:00
Nick BrasselandGitHub 6819420b0e Preinstall python dependencies before executing qmk. (#16874) 2022-04-18 15:46:52 +01:00
f50a623909 Fixup AVR builds. (#16875)
* Fixup AVR builds.

* Update platforms/avr/hardware_id.c

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

Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-04-18 15:39:45 +01:00
Nick BrasselandGitHub df95495d5b Fix #16859. (#16865) 2022-04-17 00:09:37 +01:00
Nick BrasselandGitHub 1f2b1dedcc Quantum Painter (#10174)
* Install dependencies before executing unit tests.

* Split out UTF-8 decoder.

* Fixup python formatting rules.

* Add documentation for QGF/QFF and the RLE format used.

* Add CLI commands for converting images and fonts.

* Add stub rules.mk for QP.

* Add stream type.

* Add base driver and comms interfaces.

* Add support for SPI, SPI+D/C comms drivers.

* Include <qp.h> when enabled.

* Add base support for SPI+D/C+RST panels, as well as concrete implementation of ST7789.

* Add support for GC9A01.

* Add support for ILI9341.

* Add support for ILI9163.

* Add support for SSD1351.

* Implement qp_setpixel, including pixdata buffer management.

* Implement qp_line.

* Implement qp_rect.

* Implement qp_circle.

* Implement qp_ellipse.

* Implement palette interpolation.

* Allow for streams to work with either flash or RAM.

* Image loading.

* Font loading.

* QGF palette loading.

* Progressive decoder of pixel data supporting Raw+RLE, 1-,2-,4-,8-bpp monochrome and palette-based images.

* Image drawing.

* Animations.

* Font rendering.

* Check against 256 colours, dump out the loaded palette if debugging enabled.

* Fix build.

* AVR is not the intended audience.

* `qmk format-c`

* Generation fix.

* First batch of docs.

* More docs and examples.

* Review comments.

* Public API documentation.
2022-04-13 18:00:18 +10:00
Nick BrasselandGitHub ec4f655333 Add warning for CTCP/CONVERT_TO_PROTON_C. (#16782) 2022-04-03 19:17:38 +01:00
Nick BrasselandGitHub edd1f33013 Missed some erroneous prints. (#16597) 2022-03-10 05:43:12 +11:00
Nick BrasselandGitHub 77180a6649 Fixup builds. (#16596) 2022-03-09 17:09:38 +00:00
Nick BrasselandGitHub 5d67c4d908 Fix missing definition for non-encoder case. (#16593) 2022-03-09 21:06:33 +11:00
Nick BrasselandGitHub 8d5eacb7dd Add support for encoder mapping. (#13286) 2022-03-09 19:29:00 +11:00
Nick BrasselandGitHub 2f6751e48a Asymmetric encoders, encoder tests. (#16068) 2022-03-08 16:58:05 +11:00
Nick BrasselandGitHub 44f1bd9b3a ChibiOS 21.11.1 update. (#16251)
* ChibiOS 21.11.1 update.

* `uf2-tinyuf2` => `tinyuf2`

* Updated chibios-contrib, fixup preprocessor for tinyuf2 bootloader.

* Fixup keychron L433 boards.

* Makefile cleanup.

* RISC-V build fixes.

* Fixup RISC-V build.
2022-03-07 21:04:22 +11:00
Nick BrasselandGitHub ae6f471f1c Modify the output of the size checks. (#16290) 2022-02-10 08:50:55 +11:00
c2c2f30f9f Remove parent-relative paths from keyboards. (#16282)
* Remove parent-relative paths from keyboards.

* Update keyboards/capsunlocked/cu75/rules.mk

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

Co-authored-by: Ryan <fauxpark@gmail.com>
2022-02-10 07:02:53 +11:00
Nick Brassel a2ffdb4abd Merge remote-tracking branch 'upstream/master' into develop 2022-02-09 16:00:09 +11:00
Nick BrasselandGitHub efdaa7f972 Add support for driving unselected row/col. (#16278) 2022-02-09 15:50:13 +11:00
Nick BrasselandGitHub a239051c4a Misc size regression script improvements. (#16268)
* Misc size regression script improvements.

- Sets environment variable SIZE_REGRESSION_EXECUTING during execution
  so hook scripts like `post-checkout` may skip processing.
- Forces checkout of the target branch, including removal of all
  temporary object files in the process.
- Prints out a warning on exit stating that the git repository is in an
  indeterminate state, and the user needs to swap back to whatever
  intended branch they were working with originally.

* Remove `git clean`
2022-02-08 16:25:55 +00:00
Nick BrasselandGitHub a86d6fffc9 Fixup bootloaders. (#16256) 2022-02-06 19:09:21 -08:00
Nick BrasselandGitHub d31dd6d2a0 Followup to #16220, more test error output. (#16221) 2022-02-05 12:51:23 +11:00
Nick BrasselandGitHub e987ce1652 Standardise error output. (#16220) 2022-02-04 17:32:31 -08:00
Nick BrasselandGitHub 8fd8b2dc92 Skip categorisation of PR if it's only for code formatting. (#16215) 2022-02-05 07:36:57 +11:00
Nick BrasselandGitHub 1fffcbc298 Revert "[Core] Add Pixel Flow RGB matrix effect (#15829)" (#16209)
This reverts commit e8fa329073.
2022-02-05 05:57:21 +11:00
Nick BrasselandGitHub 3403f5813c Point out that deferred execution needs to be enabled in rules.mk (#16196) 2022-02-04 03:44:51 +00:00
Nick BrasselandGitHub db43e45077 Ensure version.h is recreated each build. (#16188) 2022-02-04 07:36:02 +11:00
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>
2022-02-03 19:22:49 +11:00
Nick Brassel 3897eaac30 Fixup line endings for kt60-M. 2022-02-03 03:19:08 +11:00
Nick BrasselandGitHub 1bdc1c23c7 Fixup builds so that teensy EEPROM knows which MCU it's targeting. (#16168) 2022-02-02 16:21:07 +11:00
Nick BrasselandGitHub d6d48aa2aa Remove old .gitignore entry. Add more macOS junk exclusions. (#16167) 2022-02-02 15:36:37 +11:00
Nick BrasselandGitHub 6e2b03cf69 Fixup multibuild filegen (#16166)
* Add env variable support to multibuild.

* Generate version.h in build-specific location.
2022-02-02 15:30:22 +11:00
Nick BrasselandGitHub e22efc037a Don't make EEPROM size assumptions with dynamic keymaps. (#16054)
* Don't make EEPROM size assumptions with dynamic keymaps.

* Add support for checking against emulated flash, error out if someone attempts to build a board without specifying EEPROM size.

* Reorder defines so that MCU is considered last.

* Refactor EEPROM definitions for simplicity.

* Fix max sizing of kabedon/kabedon980.

* Fix max sizing of mechlovin/olly/jf.

* Fix unit tests.

* Review comments, add messages with values during build failures.
2022-02-02 15:04:37 +11:00
Nick BrasselandGitHub 9af9af73f4 Fix up default folder locations. (#16135) 2022-01-30 21:48:05 +00:00
Nick BrasselandGitHub 5f23345886 Add a script that simplifies running commands under docker. (#16028) 2022-01-24 23:58:53 +00:00
Nick BrasselandGitHub 8f22819d47 Default EEPROM implementation should be transient when not implemented. Removed the equivalent eeprom_teensy fallback. (#16020) 2022-01-24 14:18:05 +00:00
Nick BrasselandGitHub 7d6e15423b Add some clarity regarding new board definitions (#16018) 2022-01-23 22:15:09 +00:00
Nick BrasselandGitHub 77062e9a36 Add L432, L442. (#16016) 2022-01-24 08:49:36 +11:00
Nick BrasselandGitHub 91e50209e7 Fixup build. (#15931) 2022-01-19 11:21:08 +11:00
Nick BrasselandGitHub 557fbbd6af Yet another bad DEFAULT_FOLDER fix. (#15904) 2022-01-16 20:12:58 +00:00
Nick BrasselandGitHub d02be63000 Revert "update keyboard_aliases.json (#15649)" (#15903)
This reverts commit b24603ab7d.
2022-01-17 06:58:48 +11:00
Nick BrasselandGitHub be1dcb9185 Fix CI. (#15828)
* Fix CI.
2022-01-11 14:20:33 +11:00
Nick BrasselandGitHub 0c402157fc Advanced deferred_exec for core-side code. (#15579) 2022-01-10 18:26:46 +00:00
Nick BrasselandGitHub 7b151143f7 eol=lf, where appropriate (#15752) 2022-01-05 21:56:31 +00:00
Nick BrasselandGitHub 4d96e53222 More GPIO compilation fixes. (#15592) 2021-12-26 21:36:52 -08:00
Nick Brassel 8503c97b96 Merge remote-tracking branch 'upstream/master' into develop 2021-12-27 15:18:08 +11:00
Nick Brassel c53ee0b3ce Fixup line endings 2021-12-27 15:15:49 +11:00
Nick Brassel bbd8f8e584 Fixup line endings 2021-12-27 15:11:47 +11:00
Nick BrasselandGitHub 3a3272a3d6 Defer pin operations to gpio.h (#15589) 2021-12-27 13:27:38 +11:00
Nick BrasselandGitHub 6e40dfa022 Add open-drain GPIO support. (#15282)
* Add open-drain GPIO support.

* `qmk format-c`

* Wording.

* Remove port GPIO implementations as the only board that uses it has its own internal defs anyway. Will wait for first-class handling of ports in core before reimplementing.
2021-12-27 11:52:10 +11:00
Nick BrasselandGitHub 7b018f097d Use the PR title rather than parsing the commit message. (#15537) 2021-12-22 05:44:47 +11:00
Nick BrasselandGitHub 30f0bbe079 Add support for 21.11.x, remove 21.6.x as ChibiOS "canceled" it. (#15435) 2021-12-09 07:42:21 +11:00
Nick BrasselandGitHub 81550527c4 Fixup paths for ramonimbao/wete/v2. (#15360) 2021-11-30 02:10:50 -08:00
Nick Brassel 51db8baf77 Start develop for 2022q1. 2021-11-28 11:16:20 +11:00
Nick BrasselandGitHub 88fe5c16a5 Changelog 2021q4 (#15325)
* Changelog.

* Remove the asymmetric encoder PR from listing due to revert.

* More docs

* More docs

* More docs

* Links to changelog, updated schedule, slotted in 2 weeks of testing at the end so that there's no ambiguity with PR merge dates.

* Clarify keyboard moves.

* Fix dates

* Sidebar

* Fixup dates.

* Fixup dates.

* Wording.
2021-11-28 10:41:48 +11:00
Nick BrasselandGitHub e156d5c13b Fix build. (#15322) 2021-11-28 05:52:17 +11:00
Nick BrasselandGitHub 94d7cc3712 WB32F3G71 config migration with removal of unnecessary items. (#15309)
* Config migration with removal of unnecessary items.

* Removed as per suggestion.
2021-11-27 10:35:24 +11:00
Nick BrasselandGitHub b04f66f245 Add script for performing compilation size regression investigations. (#15303)
* Add script for performing compilation size regression investigations.

* Print deltas

* Correct scoping.

* Concurrency control

* Job count control, skip zeros (unless no build output), fix usage.

* Add usage under -h arg.

* Updated usage output.

* Copyright header.
2021-11-27 09:11:03 +11:00
Nick BrasselandGitHub 08b7f8b30a More headroom. (#15302) 2021-11-25 13:11:18 -08:00
Nick BrasselandGitHub 27086ad80f More headroom. (#15301) 2021-11-26 07:53:48 +11:00
Nick Brassel 7746aefe94 Revert "[Tests] Increase QMK test coverage (#13789)"
This reverts commit b6054c0206.
2021-11-23 09:54:04 +11:00
8cefe141f8 CI: Create GitHub Actions unit test workflow (#15223)
* Create GitHub Actions unit test workflow

* Create GitHub Actions unit test workflow - checkout submodules

* Create GitHub Actions unit test workflow - update job name

* Develop branch.

* Update .github/workflows/unit_test.yml

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

* Update .github/workflows/unit_test.yml

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

* builddefs

Co-authored-by: zvecr <git@zvecr.com>
2021-11-20 09:04:11 +11:00
Nick BrasselandGitHub b9148eb1bd [cli] Export list of develop PRs to be merged into master (#13944)
* Add developer-only command for exporting the list of PRs associated with a merge to `develop`.

* qmk pytest

* Imports.

* Remove dependencies from requirements file, manually handle.

* Reduce complexity, qmk generate-api taking too long so relying on CI
2021-11-18 17:05:08 +00:00
Nick Brassel 45f4f446fb Merge remote-tracking branch 'upstream/master' into develop 2021-11-18 07:38:06 +11:00
36d123e9c5 Add support for deferred executors. (#14859)
* Add support for deferred executors.

* More docs.

* Include from quantum.h

* Cleanup.

* Parameter checks

* Comments.

* qmk format-c

* I accidentally a few words.

* API name change.

* Apply suggestions from code review

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>

* Review comments.

* qmk format-c

* Review comments.

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2021-11-15 18:21:09 +00:00
Nick Brassel 92e9bbd9b9 Merge remote-tracking branch 'upstream/master' into develop 2021-11-05 08:55:55 +11:00
Nick BrasselandGitHub c8da63382c Fixup actions. (#15057) 2021-11-04 21:49:09 +00:00
Nick BrasselandGitHub 5da04fb45b Update to ChibiOS 20.3.4, support builds against trunk (#14208)
* Add support for building against ChibiOS svn/trunk.

* Swap to 21.6.x

* Update to latest branch revision as released version is broken.

* Updated configs.

* Conf updates.

* Updated ChibiOS

* Convert STM32L422 to actual L422 ChibiOS platform.

* Downgrade to 20.3.4 as ChibiOS 21.6.x is being aborted.

* Rollback L422-based boards.
2021-11-03 08:26:40 +11:00