aboutsummaryrefslogtreecommitdiffstats
path: root/tmk_core/common
AgeCommit message (Collapse)Author
2020-02-21format code according to conventions [skip ci]Gravatar QMK Bot
2020-02-21uart.c fix from TMK (#7628)Gravatar Drashna Jaelre
* uart.c fix from TMK Backport from tmk/tmk_keyboard@c41e48a0ab0712d2667feb6b5dd8a4d5491cfcc5 * Avoid deadlock when uart.c is usind in ISR Backport from tmk/tmk_keyboard@55443fabb731459e21b45781c6d951edac5d75f4
2020-02-21Allow 30us matrix delay to be keyboard/user overridable (#8216)Gravatar Joel Challis
* Allow 30us matrix delay to be configurable via define * Move wait logic to matrix_common * Move wait logic to matrix_common - fix wait includes
2020-02-10Compile error if ONESHOT_TIMEOUT defined but oneshot disabled (#8100)Gravatar Ted Lin
* Compile error if ONESHOT_TIMEOUT defined but oneshot disabled When ONESHOT_TIMEOUT and NO_ACTION_ONESHOT are both defined, this code fails to compile. Wrap the one usage of ONESHOT_TIMEOUT that is inconsistent with the rest so all usages are properly wrapped by a check of NO_ACTION_ONESHOT. * Run file through clang-format Co-authored-by: Ted M Lin <tedmlin@gmail.com>
2020-02-08Remove PJRC USB stackGravatar fauxpark
2020-02-07Use function for KEYCODE2 routines instead of macro. (#8101)Gravatar Ted M Lin
* Option to use function for KEYCODE2 routines. Convert the KEYCODE2SYSTEM and KEYCODE2CONSUMER macros to functions, defaulting to using the macros. The function form allows the compiler to optimize the switch statement itself, over the macro nested ternaries. To enable this feature, #define USE_KEYCODE2_FUNCTION. Testing against a random selection of avr-based keyboards, this increased available flash by ~500 bytes. For arm-based keyboards, the available flash increased by ~400 bytes. * Replace macro with function entirely. As zvecr states, go bold and just commit to using the function instead of the macro. * Reformat whitespace now that functional review is done Verified against clang-format output.
2020-02-02Dedupe extrakey report struct, and send functions in V-USB & LUFA (#7993)Gravatar fauxpark
* Dedupe extrakey report struct, and send functions in V-USB & LUFA * Doc comment for consistency * Wrap it in ifdef to prevent unused function error * Do the same for ATSAM
2020-02-01format code according to conventions [skip ci]Gravatar QMK Bot
2020-02-01Fix timer_elapsed() overflow issue for STM32F103 and other ChibiOS boards ↵Gravatar Pavel Župa
(#7595) * fixed strange space cadet timer owerflow on STM32F103 * Moved elapsed time fix to timer.c
2020-01-24Fix printf buffer overflow when cols>16 (#7998)Gravatar Joel Challis
2020-01-24format code according to conventions [skip ci]Gravatar QMK Bot
2020-01-24Add customisable EEPROM driver selection (#7274)Gravatar Nick Brassel
- uprintf -> dprintf - Fix atsam "vendor" eeprom. - Bump Kinetis K20x to 64 bytes, too. - Rollback Kinetis to 32 bytes as partitioning can only be done once. Add warning about changing the value. - Change RAM-backed "fake" EEPROM implementations to match eeconfig's current usage. - Add 24LC128 by request.
2020-01-19Run clang-format manually to fix recently changed files (#7934)Gravatar Joel Challis
* Run clang-format manually to fix recently changed files * Run clang-format manually to fix recently changed files - revert template files * Run clang-format manually to fix recently changed files - format off for ascii_to_keycode_lut
2020-01-19Move rgblight and backlight task to common location (#7733)Gravatar Joel Challis
2020-01-17Implement and document TAPPING_FORCE_HOLD_PER_KEY (#7859)Gravatar ridingqwerty
* Implement and document TAPPING_FORCE_HOLD_PER_KEY * Added "record" parameter to "get_tapping_force_hold" * Correct typo -- remove 'IGNORE_' from 'IGNORE_TAPPING_FORCE_HOLD_PER_KEY' Co-authored-by: GeorgeKoenig <35542036+GeorgeKoenig@users.noreply.github.com>
2020-01-17Cleanup check for PERMISSIVE_HOLD (#7861)Gravatar Drashna Jaelre
* Fix bug in PERMISSIVE_HOLD check caused by #5009 (aka, me) * Remove check for per key
2020-01-17Remove `KEYMAP_SECTION_ENABLE` (#7882)Gravatar fauxpark
2020-01-10Add per-key IGNORE_MOD_TAP_INTERRUPT feature (#7838)Gravatar zk-phi
* Implement IGNORE_MOD_TAP_INTERRUPT_PER_KEY - Add configurable option IGNORE_MOD_TAP_INTERRUPT_PER_KEY - Add function get_ignore_mod_tap_interrupt iff the option is enabled Unless IGNORE_MOD_TAP_INTERRUPT_PER_KEY is defined, this patch does not affect the resulting binary. * Add documentation for IGNORE_MOD_TAP_INTERRUPT_PER_KEY
2020-01-04Move some common matrix code to a common location (#7699)Gravatar Joel Challis
* Move some common matrix code to a common location * Refactor some 'custom_matrix_helper' logic to use custom matrix lite * Fix build for kinesis/stapelberg - abuse of vpath was picking up matrix.c from core when custom matrix was enabled * Add validation for CUSTOM_MATRIX
2020-01-03VIA Configurator Refactor (#7268)Gravatar Wilba
* VIA Refactor * Remove old code * review changes * review changes * Fix cannonkeys/satisfaction75/prototype:via build * Add via.h to quantum.h * Move backlight init to after backlight config load * Merge branch 'master' into via_refactor_pr * Update user's rules.mk to new way of enabling VIA * Added id_switch_matrix_state * Review changes
2020-01-02Fix typo in action.c (#7757)Gravatar xyzz
2019-12-21Add central location for ChibiOS defines (#7542)Gravatar Joel Challis
* Add central location for chibios defines * Add central location for chibios defines - actually add files this time.... * Add Copyright header * Update include order to resolve i2cv1 build errors
2019-12-16[Core] Optimize matrix processing (#7621)Gravatar Drashna Jaelre
Backport of tmk/tmk_keyboard@ad6059adc7039a54d1db75da783068654906a679
2019-12-11Fix FORCE_NKRO handling (#7601)Gravatar Joel Challis
2019-12-11Remove mbed files (#7605)Gravatar Joel Challis
* Remove mbed files * Remove mbed files - fix comment * Remove mbed logic blocks
2019-11-22Add 4-character aliases for sendstring keycodes (#7409)Gravatar fauxpark
* Add 4-character aliases for sendstring keycodes * Remove pointless mail keycode redefinition * Forgot brightness keycodes
2019-11-17Run clang-format manually to fix recently changed filesGravatar zvecr
2019-11-08Fix LAYER_STATE_8BIT compile issues (#7304)Gravatar Joel Challis
2019-11-08Support RGBLIGHT_SLEEP when ChibiOS boards suspend (#7280)Gravatar Jonathan Rascher
Copypasta from the AVR suspend implementation with a Teensy-specific hack removed
2019-11-06New and improved lock LED callbacks (#7215)Gravatar fauxpark
* New and improved lock LED callbacks * Include stdbool * Update documentation * Use full function signatures and add keyboard-level example
2019-10-17Move tmk_core/common/backlight to quantum/backlight (#6710)Gravatar Joel Challis
* Move tmk_core/common/backlight to quantum/backlight * Add guards to backlight inclusion * Add guards to backlight inclusion * Update backlight guards on clueboard/60 * Use full paths to avoid vpath issues
2019-10-16Fix bug in `do_code16()` (#6935)Gravatar fauxpark
* Fix bug in `do_code16()` * Remove qk_ mods functions
2019-10-15Add binary support to tinyprintf (#7024)Gravatar Joel Challis
2019-10-15 Port DEBUG_MATRIX_SCAN_RATE to core (#7029)Gravatar Joel Challis
* Port DEBUG_MATRIX_SCAN_RATE to core * Remove duplicate DEBUG_MATRIX_SCAN_RATE implementations * Remove duplicate DEBUG_MATRIX_SCAN_RATE implementation from handwired/xealous * Add console logic from ergodox_ez
2019-10-05ARM - Initial backlight support (#6487)Gravatar Joel Challis
* Move AVR backlight to own file, add borrowed ARM implementation * Tiny fix for backlight custom logic * Remove duplicate board from rebase * Fix f303 onekey example * clang-format * clang-format * Remove backlight keymap debug * Initial pass of ARM backlight docs * Initial pass of ARM backlight docs - resolve todos * fix rules validation logic * Add f072 warning * Add f072 warning * tidy up breathing in backlight keymap * tidy up breathing in backlight keymap * add missing break to backlight keymap
2019-10-04Wrap util.h functions in `extern "C"` (#6762)Gravatar fauxpark
2019-09-27ARM split - Add support for dfu-util EE_HANDS flashing (#6543)Gravatar Joel Challis
* Initial stab at some fake dfu-util-split-left behaviour * Apply suggestions from code review Co-Authored-By: fauxpark <fauxpark@gmail.com> * Clang format fixes * Fake eeprom init for both left and right hand
2019-09-24ARM split - Add bootmagic/magic keycodes for setting handedness (#6545)Gravatar Joel Challis
* Add docs on bootmagic/magic keycodes for setting handedness * Clang format fixes * Maintain backwards compatibility * Maintain backwards compatibility
2019-09-23Fixing wrapping math logic for timer_expired functions (#6746)Gravatar XScorpion2
2019-09-07Banish some more magic numbers (#6662)Gravatar fauxpark
2019-08-30clang-format changesGravatar skullY
2019-08-30Have clang ignore the code in bootloader_size.cGravatar skullY
2019-08-27Decrement EECONFIG magic numberGravatar Drashna Jaelre
This will manually wipe the EEPROM. This is a hacky solution for when new ranges are added or moved around. A better (more complicated) solution would be to zero out everything, not just known ranges. But for now, this is a hacky solution that will work.
2019-08-25Added OLED Display autoscroll during periods of OLED data inactivity (#6546)Gravatar XScorpion2
* Added OLED Display autoscroll during periods of OLED data inactivity. * Fixing compile errors * Feedback from review
2019-08-21Additional changes for Layer State typedef compatibility (#5906)Gravatar Drashna Jaelre
* Additional changes for Layer State typedef compatibility * Replace biton32 with get_highest_layer in docs * Change additional layer structure code * Fix uGFX reference issue * Remove dynamic_keymap check * Where did all these extra spaces come from Co-Authored-By: fauxpark <fauxpark@gmail.com>
2019-08-21Added keycodes for swapping and unswapping the Control and OS keys (#6110)Gravatar Stephen Wanhella
* Add MAGIC_SWAP_CONTROL_LGUI and MAGIC_UNSWAP_CONTROL_LGUI keycodes Key codes to swap and unswap the control and windows/cmd keys * Fix issues with pull request #6110 Renamed swap/unswap lctl and lgui key codes, added key codes to swap/unswap rctl and rgui, and moved new bool inside keycode_config.h struct to the end * Move new keycodes to the end of the enum (#6110) * add cases for swapped control and OS keys to mod_config (#6110) * Add new keycodes to feature_bootmagic.md (#6110) * Add R+L swap codes to keep in parity with AG_* codes * Extend Magic range check to include new magic codes * Update audio docs * Combine 2 byte ranges into 1 word for EECONFG Fix names for Keymap config EEPROM * Update docs/feature_bootmagic.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Update docs/feature_bootmagic.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Update docs/feature_bootmagic.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Update docs/feature_bootmagic.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
2019-08-20Remove superfluous JTAG disable code (#6445)Gravatar fauxpark
* Remove superfluous JTAG disable code * 32A has differently named register * Accidentally some operators * 32A also has different JTAG pins * Wrap disable_jtag() in an ifndef * Document this new define * Rename the define, it conflicts with a LUFA thing Also, move the ifndef wrapping to the call in keyboard_setup()
2019-08-13Fix LT() crashing some ARM keyboards (#6529)Gravatar Joel Challis
2019-08-08Extend allowed range of tappable keycodes to include modifiers (#5809)Gravatar fauxpark
* Extend allowed range of tappable keycodes to include modifiers * Get rid of the magic numbers altogether * Remove some more magic numbers * Extract LM() functionality from ACT_LAYER_TAP * Use ACTION() macro everywhere
2019-07-22Add support for TAP_CODE_DELAY to Hold-Tap keys (#5400)Gravatar Drashna Jaelre
* Add support for TAP_CODE_DELAY to Hold-Tap keys * Better handling for tap code delay and caps version