diff options
author | Nick Brassel <nick@tzarc.org> | 2020-12-05 21:13:58 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-05 21:13:58 +1100 |
commit | f1fef16e4dfce9c7659f23ce727d8564a5e420ce (patch) | |
tree | a99e116b273f6c02b5ee48d4dd52c777a196096c /keyboards/keebwerk/mega/chconf.h | |
parent | 684773f2d4b2b28b1d0f81aa1c4dbd938017d3e9 (diff) |
ChibiOS upgrade: keyboard conf migrations (phase 1) (#10418)
* ChibiOS conf upgrade for acheron/arctic
acheron/arctic - 8d3d233f15bf5d396e29abb94f943a89b0b828d1
* ChibiOS conf upgrade for acheron/austin
acheron/austin - beabc6204533de80704684de9ff7790895f319e1
* ChibiOS conf upgrade for acheron/keebspcb
acheron/keebspcb - e14a96e99aab54aefebc1d3d24d64b0082db7842
* ChibiOS conf upgrade for aeboards/ext65/rev2
aeboards/ext65/rev2 - 0b97daef994903585be2768b6aaffc4da97ec617
* ChibiOS conf upgrade for ai03/vega
ai03/vega - 7e5f208278309681fd1db8b2629890b813fdf938
* ChibiOS conf upgrade for at_at/660m
at_at/660m - e30393b6546454f9939c1187aa9c6539f1ef76c1
* ChibiOS conf upgrade for bt66tech/bt66tech60
bt66tech/bt66tech60 - a7f4e8a224132830447d12c92d146997f9b56b7d
* ChibiOS conf upgrade for cannonkeys/an_c
cannonkeys/an_c - e7320dc09377fdad749e382b3986f2241633214b
* ChibiOS conf upgrade for cannonkeys/atlas
cannonkeys/atlas - 063a8eaea7e68607b725ad06777c49d34686b433
* ChibiOS conf upgrade for cannonkeys/chimera65
cannonkeys/chimera65 - 01ce66c862a5cd98183b10e992939a55038779bc
* ChibiOS conf upgrade for cannonkeys/db60
cannonkeys/db60 - 45636d0b3cf951cef51a5b19678e2da549efd14f
* ChibiOS conf upgrade for cannonkeys/devastatingtkl
cannonkeys/devastatingtkl - 709e0155c421991fad283d38c28f850320ed4730
* ChibiOS conf upgrade for cannonkeys/instant60
cannonkeys/instant60 - 7e530e10794183d684a328f01b9b0743907440c7
* ChibiOS conf upgrade for cannonkeys/instant65
cannonkeys/instant65 - c8de288708d0586337cb7137ae54d97e1ddc90a6
* ChibiOS conf upgrade for cannonkeys/iron165
cannonkeys/iron165 - 3a3c0273e227fd15ab3527e4aa557b94d0b69248
* ChibiOS conf upgrade for cannonkeys/obliterated75
cannonkeys/obliterated75 - cdf834802ae77b1bbd4876eb8c34c19a83ad95cd
* ChibiOS conf upgrade for cannonkeys/ortho48
cannonkeys/ortho48 - 3432ff13c83a6358eca44b37f72b18882eeda699
* ChibiOS conf upgrade for cannonkeys/ortho60
cannonkeys/ortho60 - 95be42a23798cc8f9b04175d4892b712d871a52d
* ChibiOS conf upgrade for cannonkeys/ortho75
cannonkeys/ortho75 - e1149893fd01e853124808b45d521b61a7638eb9
* ChibiOS conf upgrade for cannonkeys/practice60
cannonkeys/practice60 - 6e4da87f0a766cf2665e9b4aa8e3ab33017cf745
* ChibiOS conf upgrade for cannonkeys/practice65
cannonkeys/practice65 - c436c06829123503073b3a9c5a1c0acfc2dbe2e5
* ChibiOS conf upgrade for cannonkeys/rekt1800
cannonkeys/rekt1800 - 43e8e21b62531534afeaa241f4c683fbdb60a8e0
* ChibiOS conf upgrade for cannonkeys/satisfaction75
cannonkeys/satisfaction75 - 28ff9a8a11ad1de9d09ec85fab2af906b7c27d6a
* ChibiOS conf upgrade for cannonkeys/savage65
cannonkeys/savage65 - 53eaefae56020b536d4934686506d5d1fe51b6e0
* ChibiOS conf upgrade for cannonkeys/tmov2
cannonkeys/tmov2 - 8b1ced8ff7dc368afa268104cd5192bb1bfc8a1c
* ChibiOS conf upgrade for chavdai40
chavdai40/rev1 - b166af66b084077764b705c9428725cde0b0ce51
chavdai40/rev2 - 0048c8ec8c28f1dfa5d1a37348524899595d8325
* ChibiOS conf upgrade for cheshire/curiosity
cheshire/curiosity - f1636e53638ce2e798070e6e622fd88a08982d5a
* ChibiOS conf upgrade for clueboard/60
clueboard/60 - bb5057d4a2976b6530fe2e345a4153de2f7c042d
* ChibiOS conf upgrade for clueboard/66_hotswap/gen1
clueboard/66_hotswap/gen1 - 03fe10f4de7b67e5f1cf0a7d576f82676adf4261
* ChibiOS conf upgrade for clueboard/66/rev4
clueboard/66/rev4 - 878e38a34f97b32d9d109a6d98f98bc385d84864
* ChibiOS conf upgrade for coarse/cordillera
coarse/cordillera - 5cae5c643e96d03bddcbb73e76e225ea5f82fef3
* ChibiOS conf upgrade for converter/siemens_tastatur
converter/siemens_tastatur - 48f82cd227836878967dfa0fe0411f7d877a124c
* ChibiOS conf upgrade for ergodox_infinity
ergodox_infinity - 8df21d6129eef47d7a5ced92715e5bdbfb0151e5
* ChibiOS conf upgrade for function96
function96 - deecdcdca34c88058f820f0e2bc9f112458c85c5
* ChibiOS conf upgrade for generic_panda/panda65_01
generic_panda/panda65_01 - 8522d8107edcf71758f3be7298c0bc18fa7f6706
* ChibiOS conf upgrade for hadron/ver3
hadron/ver3 - 632af7727b767720c699abdff770edc9682928ee
* ChibiOS conf upgrade for handwired/ck4x4
handwired/ck4x4 - a4cb9b5b8c3a162083677b14b105edbc1bca2baf
* ChibiOS conf upgrade for handwired/co60/rev6
handwired/co60/rev6 - be1688eeabd83a7f576d9e4e23e24d56b8dc251b
* ChibiOS conf upgrade for handwired/co60/rev7
handwired/co60/rev7 - d196c5772859ddee695bda5b0e9f0944a0f350f8
* ChibiOS conf upgrade for handwired/onekey/blackpill_f401
handwired/onekey/blackpill_f401 - 8387bfd56888fc1605d293dc0071b4ec94b23991
* ChibiOS conf upgrade for handwired/onekey/blackpill_f411
handwired/onekey/blackpill_f411 - 855efdb2f60c384edf64773c0f4ff4b7ea8ae4c9
* ChibiOS conf upgrade for handwired/onekey/bluepill
handwired/onekey/bluepill - 60d8555b174dbdabae196a4cc5eccfee4bdd9529
* ChibiOS conf upgrade for handwired/onekey/stm32f0_disco
handwired/onekey/stm32f0_disco - 9bc12e29f5a4e4b9ec0f34987559e5e11de4bb48
* ChibiOS conf upgrade for handwired/onekey/teensy_32
handwired/onekey/teensy_32 - 17459dd8e71b3a33270037878bdbd04151af196b
* ChibiOS conf upgrade for handwired/onekey/teensy_lc
handwired/onekey/teensy_lc - 3a9aed4681c287176efe31c988340ca43ad27a9d
* ChibiOS conf upgrade for handwired/pill60/blackpill_f401
handwired/pill60/blackpill_f401 - 5b652354ae957e86e211dcef29f8f27320b31180
* ChibiOS conf upgrade for handwired/pill60/blackpill_f411
handwired/pill60/blackpill_f411 - 580255c171e95b5bca53b14a13ae018a73d18414
* ChibiOS conf upgrade for handwired/pill60/bluepill
handwired/pill60/bluepill - 29109b54137ea94ac266c604991cff87516689ff
* ChibiOS conf upgrade for handwired/riblee_f401
handwired/riblee_f401 - dc68c31d7ca8ae0fad7e7ad8bdd63406155ff363
* ChibiOS conf upgrade for handwired/riblee_f411
handwired/riblee_f411 - cf0fadff4c98d41cf9bdddbe1ead15c79be941b9
* ChibiOS conf upgrade for handwired/steamvan/rev1
handwired/steamvan/rev1 - 743b395ac87b918b6be4614c9e120e80a9f049d4
* ChibiOS conf upgrade for handwired/t111
handwired/t111 - 99b61ae5692ee4b2101673d1a896cd7a5831bcfa
* ChibiOS conf upgrade for handwired/twadlee/tp69
handwired/twadlee/tp69 - 3ab2753c40e947a726ece6c825493ebc87ecf20e
* ChibiOS conf upgrade for handwired/z150
handwired/z150 - 78808b0c8671e2386b9ba65dbd647d613d92f253
* ChibiOS conf upgrade for hs60/v2
hs60/v2/ansi - 7bcd152c269803de8f96416ba26e939c0420ceae
hs60/v2/hhkb - d77f393d2811bd104b05c4530bf1083d75856b7a
hs60/v2/iso - 5d3d20de919fca3b64cb7548cad46e8d35d7cc04
* ChibiOS conf upgrade for infinity60
infinity60 - dbcbb2f58ee499252b0879d68d9beec08a8433bc
* ChibiOS conf upgrade for k_type
k_type - 492f476177da95495442d1e173391e3c17324a70
* ChibiOS conf upgrade for keebio/bdn9/rev2
keebio/bdn9/rev2 - 4dbb5d606b3d9060ad01a437978220fe0f1fc5b2
* ChibiOS conf upgrade for keebio/choconum
keebio/choconum - 1521e634088a30114cd12b7b6bbd2cca5331c822
* ChibiOS conf upgrade for keebwerk/mega
keebwerk/mega/ansi - 10e32718c7bfff2f6bd8dd2159a15bef0f4acbf9
* ChibiOS conf upgrade for misterknife/knife66
misterknife/knife66 - cf2f3d26103036d79bf7fcec204e13899e33fbe3
* ChibiOS conf upgrade for nack
nack - ba7f421d5670e672c5c14fd5f80c0f86447c1468
* ChibiOS conf upgrade for nebula12
nebula12 - aedb11fa894dc19513462f054a9fa00f5c195adc
* ChibiOS conf upgrade for nebula68
nebula68 - 6bed6afb2fd84ef9069b757f1d1e87fc1cbe290c
* ChibiOS conf upgrade for nemui
nemui - 86ed80ea8565d7d0f39512a9032cc5e1b306fcff
* ChibiOS conf upgrade for nk65
nk65 - 75b2484741a96dcbff14e94c44443bb33ad73dce
* ChibiOS conf upgrade for nk87
nk87 - f719a739a3d2c0969c79c1ace5fe9a7d6f05cc22
* ChibiOS conf upgrade for peiorisboards/ixora
peiorisboards/ixora - b5adf1090fb4c6278d8990ce9132727a13ca3cd7
* ChibiOS conf upgrade for phoenix
phoenix - 21bfb14c52451899dadf545b78a8e88b22a420f0
* ChibiOS conf upgrade for polilla
polilla - 3ba5f326b268362c9aba570b1510e1c61009ba96
* ChibiOS conf upgrade for primekb/meridian
primekb/meridian - df266e25c682a8ed3318faa186805683014ccec4
* ChibiOS conf upgrade for projectkb/alice
projectkb/alice - eee7210f618588b2c5c6367c8a0318427d09da52
* ChibiOS conf upgrade for projectkb/signature87
projectkb/signature87 - 617430e601981f0bb5fbcce42eee53107d5161b8
* ChibiOS conf upgrade for ramonimbao/squishy65
ramonimbao/squishy65 - 88e4cd3db8db61ccf9daed5405cf5eeb32f8043e
* ChibiOS conf upgrade for ramonimbao/wete
ramonimbao/wete - f0e90d943d8749e802b6bba619ce943b568a7f65
* ChibiOS conf upgrade for rart/rartlice
rart/rartlice - f7a6b58e6cadd4102fcf5f89d054d1fbdc5809d0
* ChibiOS conf upgrade for retro_75
retro_75 - 34c7b291fb2443bf8cb69fb9ee676190c736bf00
* ChibiOS conf upgrade for rocketboard_16
rocketboard_16 - 24e6503a7a5259934a80dd96dd37d3281b4240d3
* ChibiOS conf upgrade for satt/vision
satt/vision - c926d6433d8b2dc1d74623184255016bdd36ae22
* ChibiOS conf upgrade for tkc/candybar
tkc/candybar/lefty - 2f269cbed5dcec61bb0c7904a46436f110dc0ae1
tkc/candybar/righty - 9b1448b2ccbcf8a4d1e5ad74d8ad5933003ee9a2
* ChibiOS conf upgrade for tkc/godspeed75
tkc/godspeed75 - 2cfed58d44a7eef8f341ff24e0136511e03aa78d
* ChibiOS conf upgrade for tkw/stoutgat/v2/f411
tkw/stoutgat/v2/f411 - b094651ec61c79099de3e6e4991319816ac464c1
* ChibiOS conf upgrade for viktus/styrka
viktus/styrka - f3f678ea55126c9965f24da6fffc9bbbd8b24aa9
* ChibiOS conf upgrade for vinta
vinta - e5403dc6bbf47f35a53cf43b1b1d130f05552f16
* ChibiOS conf upgrade for westfoxtrot/prophet
westfoxtrot/prophet - 0e4d6987ffa6430720804e7bc1502ab6c3dcb879
* ChibiOS conf upgrade for whitefox
whitefox - 5ca6de6fb09d8c2cfa996b65732fcd55391053ff
* ChibiOS conf upgrade for wolfmarkclub/wm1
wolfmarkclub/wm1 - 2d8294e29b08f5af5406988a284483d1694ed36c
* ChibiOS conf upgrade for xelus/kangaroo
xelus/kangaroo - f9697ba27d4e6c36a1cfd9e2657eac35dfa3be99
* ChibiOS conf upgrade for xelus/trinityxttkl
xelus/trinityxttkl - a457601b446ea9b4e9e28d2ba304a4bcdb934257
* ChibiOS conf upgrade for xelus/valor_frl_tkl
xelus/valor_frl_tkl - 27ec14b9ee0e5cb2d026af500d16b17d4c2885e2
* ChibiOS conf upgrade for zoo/wampus
zoo/wampus - 926487c1f50c1c5eb0608ca7dc1184881d54d35e
* ChibiOS conf upgrade for zvecr/split_blackpill
zvecr/split_blackpill - 02f4393d01e0a70c94af48fa979ff0229732e8ca
* ChibiOS conf upgrade for zvecr/zv48/f401
zvecr/zv48/f401 - 8b1766a24f943b9b0ba756c6fe340ba69d5e14e3
* ChibiOS conf upgrade for zvecr/zv48/f411
zvecr/zv48/f411 - 09ba645092eb7f3d41da0d5e6727f2f4f97033c0
Diffstat (limited to 'keyboards/keebwerk/mega/chconf.h')
-rw-r--r-- | keyboards/keebwerk/mega/chconf.h | 721 |
1 files changed, 26 insertions, 695 deletions
diff --git a/keyboards/keebwerk/mega/chconf.h b/keyboards/keebwerk/mega/chconf.h index aac3303705..ab7734fb0a 100644 --- a/keyboards/keebwerk/mega/chconf.h +++ b/keyboards/keebwerk/mega/chconf.h @@ -1,714 +1,45 @@ -/* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/** - * @file rt/templates/chconf.h - * @brief Configuration file template. - * @details A copy of this file must be placed in each project directory, it - * contains the application specific kernel settings. - * - * @addtogroup config - * @details Kernel related settings and hooks. - * @{ - */ - -#ifndef CHCONF_H -#define CHCONF_H - -#define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_6_0_ - -/*===========================================================================*/ -/** - * @name System timers settings - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System time counter resolution. - * @note Allowed values are 16 or 32 bits. - */ -#if !defined(CH_CFG_ST_RESOLUTION) -#define CH_CFG_ST_RESOLUTION 32 -#endif - -/** - * @brief System tick frequency. - * @details Frequency of the system timer that drives the system ticks. This - * setting also defines the system tick time unit. - */ -#if !defined(CH_CFG_ST_FREQUENCY) -#define CH_CFG_ST_FREQUENCY 100000 -#endif - -/** - * @brief Time intervals data size. - * @note Allowed values are 16, 32 or 64 bits. - */ -#if !defined(CH_CFG_INTERVALS_SIZE) -#define CH_CFG_INTERVALS_SIZE 32 -#endif - -/** - * @brief Time types data size. - * @note Allowed values are 16 or 32 bits. - */ -#if !defined(CH_CFG_TIME_TYPES_SIZE) -#define CH_CFG_TIME_TYPES_SIZE 32 -#endif - -/** - * @brief Time delta constant for the tick-less mode. - * @note If this value is zero then the system uses the classic - * periodic tick. This value represents the minimum number - * of ticks that is safe to specify in a timeout directive. - * The value one is not valid, timeouts are rounded up to - * this value. - */ -#if !defined(CH_CFG_ST_TIMEDELTA) -#define CH_CFG_ST_TIMEDELTA 2 -#endif - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel parameters and options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Round robin interval. - * @details This constant is the number of system ticks allowed for the - * threads before preemption occurs. Setting this value to zero - * disables the preemption for threads with equal priority and the - * round robin becomes cooperative. Note that higher priority - * threads can still preempt, the kernel is always preemptive. - * @note Disabling the round robin preemption makes the kernel more compact - * and generally faster. - * @note The round robin preemption is not supported in tickless mode and - * must be set to zero in that case. - */ -#if !defined(CH_CFG_TIME_QUANTUM) -#define CH_CFG_TIME_QUANTUM 0 -#endif - -/** - * @brief Managed RAM size. - * @details Size of the RAM area to be managed by the OS. If set to zero - * then the whole available RAM is used. The core memory is made - * available to the heap allocator and/or can be used directly through - * the simplified core memory allocator. - * - * @note In order to let the OS manage the whole RAM the linker script must - * provide the @p __heap_base__ and @p __heap_end__ symbols. - * @note Requires @p CH_CFG_USE_MEMCORE. - */ -#if !defined(CH_CFG_MEMCORE_SIZE) -#define CH_CFG_MEMCORE_SIZE 0 -#endif - -/** - * @brief Idle thread automatic spawn suppression. - * @details When this option is activated the function @p chSysInit() - * does not spawn the idle thread. The application @p main() - * function becomes the idle thread and must implement an - * infinite loop. - */ -#if !defined(CH_CFG_NO_IDLE_THREAD) -#define CH_CFG_NO_IDLE_THREAD FALSE -#endif - -/** @} */ - -/*===========================================================================*/ -/** - * @name Performance options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief OS optimization. - * @details If enabled then time efficient rather than space efficient code - * is used when two possible implementations exist. - * - * @note This is not related to the compiler optimization options. - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_OPTIMIZE_SPEED) -#define CH_CFG_OPTIMIZE_SPEED TRUE -#endif - -/** @} */ - -/*===========================================================================*/ -/** - * @name Subsystem options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Time Measurement APIs. - * @details If enabled then the time measurement APIs are included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_USE_TM) -#define CH_CFG_USE_TM TRUE -#endif - -/** - * @brief Threads registry APIs. - * @details If enabled then the registry APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_USE_REGISTRY) -#define CH_CFG_USE_REGISTRY TRUE -#endif - -/** - * @brief Threads synchronization APIs. - * @details If enabled then the @p chThdWait() function is included in - * the kernel. - * - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_USE_WAITEXIT) -#define CH_CFG_USE_WAITEXIT TRUE -#endif - -/** - * @brief Semaphores APIs. - * @details If enabled then the Semaphores APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_USE_SEMAPHORES) -#define CH_CFG_USE_SEMAPHORES TRUE -#endif - -/** - * @brief Semaphores queuing mode. - * @details If enabled then the threads are enqueued on semaphores by - * priority rather than in FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#if !defined(CH_CFG_USE_SEMAPHORES_PRIORITY) -#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE -#endif - -/** - * @brief Mutexes APIs. - * @details If enabled then the mutexes APIs are included in the kernel. - * - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_USE_MUTEXES) -#define CH_CFG_USE_MUTEXES TRUE -#endif - -/** - * @brief Enables recursive behavior on mutexes. - * @note Recursive mutexes are heavier and have an increased - * memory footprint. - * - * @note The default is @p FALSE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#if !defined(CH_CFG_USE_MUTEXES_RECURSIVE) -#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE -#endif - -/** - * @brief Conditional Variables APIs. - * @details If enabled then the conditional variables APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MUTEXES. - */ -#if !defined(CH_CFG_USE_CONDVARS) -#define CH_CFG_USE_CONDVARS TRUE -#endif - -/** - * @brief Conditional Variables APIs with timeout. - * @details If enabled then the conditional variables APIs with timeout - * specification are included in the kernel. +/* Copyright 2020 QMK * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_CONDVARS. - */ -#if !defined(CH_CFG_USE_CONDVARS_TIMEOUT) -#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE -#endif - -/** - * @brief Events Flags APIs. - * @details If enabled then the event flags APIs are included in the kernel. + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. * - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_USE_EVENTS) -#define CH_CFG_USE_EVENTS TRUE -#endif - -/** - * @brief Events Flags APIs with timeout. - * @details If enabled then the events APIs with timeout specification - * are included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_EVENTS. - */ -#if !defined(CH_CFG_USE_EVENTS_TIMEOUT) -#define CH_CFG_USE_EVENTS_TIMEOUT TRUE -#endif - -/** - * @brief Synchronous Messages APIs. - * @details If enabled then the synchronous messages APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_USE_MESSAGES) -#define CH_CFG_USE_MESSAGES TRUE -#endif - -/** - * @brief Synchronous Messages queuing mode. - * @details If enabled then messages are served by priority rather than in - * FIFO order. - * - * @note The default is @p FALSE. Enable this if you have special - * requirements. - * @note Requires @p CH_CFG_USE_MESSAGES. - */ -#if !defined(CH_CFG_USE_MESSAGES_PRIORITY) -#define CH_CFG_USE_MESSAGES_PRIORITY TRUE -#endif - -/** - * @brief Mailboxes APIs. - * @details If enabled then the asynchronous messages (mailboxes) APIs are - * included in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_SEMAPHORES. - */ -#if !defined(CH_CFG_USE_MAILBOXES) -#define CH_CFG_USE_MAILBOXES TRUE -#endif - -/** - * @brief Core Memory Manager APIs. - * @details If enabled then the core memory manager APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_USE_MEMCORE) -#define CH_CFG_USE_MEMCORE TRUE -#endif - -/** - * @brief Heap Allocator APIs. - * @details If enabled then the memory heap allocator APIs are included - * in the kernel. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or - * @p CH_CFG_USE_SEMAPHORES. - * @note Mutexes are recommended. + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. */ -#if !defined(CH_CFG_USE_HEAP) -#define CH_CFG_USE_HEAP TRUE -#endif -/** - * @brief Memory Pools Allocator APIs. - * @details If enabled then the memory pools allocator APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_USE_MEMPOOLS) -#define CH_CFG_USE_MEMPOOLS TRUE -#endif - -/** - * @brief Objects FIFOs APIs. - * @details If enabled then the objects FIFOs APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_USE_OBJ_FIFOS) -#define CH_CFG_USE_OBJ_FIFOS TRUE -#endif - -/** - * @brief Pipes APIs. - * @details If enabled then the pipes APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - */ -#if !defined(CH_CFG_USE_PIPES) -#define CH_CFG_USE_PIPES TRUE -#endif - -/** - * @brief Dynamic Threads APIs. - * @details If enabled then the dynamic threads creation APIs are included - * in the kernel. - * - * @note The default is @p TRUE. - * @note Requires @p CH_CFG_USE_WAITEXIT. - * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. - */ -#if !defined(CH_CFG_USE_DYNAMIC) -#define CH_CFG_USE_DYNAMIC TRUE -#endif - -/** @} */ - -/*===========================================================================*/ -/** - * @name Objects factory options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Objects Factory APIs. - * @details If enabled then the objects factory APIs are included in the - * kernel. - * - * @note The default is @p FALSE. - */ -#if !defined(CH_CFG_USE_FACTORY) -#define CH_CFG_USE_FACTORY TRUE -#endif - -/** - * @brief Maximum length for object names. - * @details If the specified length is zero then the name is stored by - * pointer but this could have unintended side effects. - */ -#if !defined(CH_CFG_FACTORY_MAX_NAMES_LENGTH) -#define CH_CFG_FACTORY_MAX_NAMES_LENGTH 8 -#endif - -/** - * @brief Enables the registry of generic objects. - */ -#if !defined(CH_CFG_FACTORY_OBJECTS_REGISTRY) -#define CH_CFG_FACTORY_OBJECTS_REGISTRY TRUE -#endif - -/** - * @brief Enables factory for generic buffers. - */ -#if !defined(CH_CFG_FACTORY_GENERIC_BUFFERS) -#define CH_CFG_FACTORY_GENERIC_BUFFERS TRUE -#endif - -/** - * @brief Enables factory for semaphores. - */ -#if !defined(CH_CFG_FACTORY_SEMAPHORES) -#define CH_CFG_FACTORY_SEMAPHORES TRUE -#endif - -/** - * @brief Enables factory for mailboxes. - */ -#if !defined(CH_CFG_FACTORY_MAILBOXES) -#define CH_CFG_FACTORY_MAILBOXES TRUE -#endif - -/** - * @brief Enables factory for objects FIFOs. - */ -#if !defined(CH_CFG_FACTORY_OBJ_FIFOS) -#define CH_CFG_FACTORY_OBJ_FIFOS TRUE -#endif - -/** - * @brief Enables factory for Pipes. - */ -#if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__) -#define CH_CFG_FACTORY_PIPES TRUE -#endif - -/** @} */ - -/*===========================================================================*/ -/** - * @name Debug options - * @{ - */ -/*===========================================================================*/ - -/** - * @brief Debug option, kernel statistics. - * - * @note The default is @p FALSE. - */ -#if !defined(CH_DBG_STATISTICS) -#define CH_DBG_STATISTICS FALSE -#endif - -/** - * @brief Debug option, system state check. - * @details If enabled the correct call protocol for system APIs is checked - * at runtime. - * - * @note The default is @p FALSE. - */ -#if !defined(CH_DBG_SYSTEM_STATE_CHECK) -#define CH_DBG_SYSTEM_STATE_CHECK FALSE -#endif - -/** - * @brief Debug option, parameters checks. - * @details If enabled then the checks on the API functions input - * parameters are activated. - * - * @note The default is @p FALSE. - */ -#if !defined(CH_DBG_ENABLE_CHECKS) -#define CH_DBG_ENABLE_CHECKS FALSE -#endif - -/** - * @brief Debug option, consistency checks. - * @details If enabled then all the assertions in the kernel code are - * activated. This includes consistency checks inside the kernel, - * runtime anomalies and port-defined checks. - * - * @note The default is @p FALSE. - */ -#if !defined(CH_DBG_ENABLE_ASSERTS) -#define CH_DBG_ENABLE_ASSERTS FALSE -#endif - -/** - * @brief Debug option, trace buffer. - * @details If enabled then the trace buffer is activated. - * - * @note The default is @p CH_DBG_TRACE_MASK_DISABLED. - */ -#if !defined(CH_DBG_TRACE_MASK) -#define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED -#endif - -/** - * @brief Trace buffer entries. - * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is - * different from @p CH_DBG_TRACE_MASK_DISABLED. - */ -#if !defined(CH_DBG_TRACE_BUFFER_SIZE) -#define CH_DBG_TRACE_BUFFER_SIZE 128 -#endif - -/** - * @brief Debug option, stack checks. - * @details If enabled then a runtime stack check is performed. - * - * @note The default is @p FALSE. - * @note The stack check is performed in a architecture/port dependent way. - * It may not be implemented or some ports. - * @note The default failure mode is to halt the system with the global - * @p panic_msg variable set to @p NULL. - */ -#if !defined(CH_DBG_ENABLE_STACK_CHECK) -#define CH_DBG_ENABLE_STACK_CHECK TRUE -#endif - -/** - * @brief Debug option, stacks initialization. - * @details If enabled then the threads working area is filled with a byte - * value when a thread is created. This can be useful for the - * runtime measurement of the used stack. - * - * @note The default is @p FALSE. - */ -#if !defined(CH_DBG_FILL_THREADS) -#define CH_DBG_FILL_THREADS FALSE -#endif - -/** - * @brief Debug option, threads profiling. - * @details If enabled then a field is added to the @p thread_t structure that - * counts the system ticks occurred while executing the thread. - * - * @note The default is @p FALSE. - * @note This debug option is not currently compatible with the - * tickless mode. - */ -#if !defined(CH_DBG_THREADS_PROFILING) -#define CH_DBG_THREADS_PROFILING FALSE -#endif - -/** @} */ - -/*===========================================================================*/ -/** - * @name Kernel hooks - * @{ - */ -/*===========================================================================*/ - -/** - * @brief System structure extension. - * @details User fields added to the end of the @p ch_system_t structure. - */ -#define CH_CFG_SYSTEM_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief System initialization hook. - * @details User initialization code added to the @p chSysInit() function - * just before interrupts are enabled globally. - */ -#define CH_CFG_SYSTEM_INIT_HOOK() { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads descriptor structure extension. - * @details User fields added to the end of the @p thread_t structure. - */ -#define CH_CFG_THREAD_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ - -/** - * @brief Threads initialization hook. - * @details User initialization code added to the @p _thread_init() function. - * - * @note It is invoked from within @p _thread_init() and implicitly from all - * the threads creation APIs. - */ -#define CH_CFG_THREAD_INIT_HOOK(tp) { \ - /* Add threads initialization code here.*/ \ -} - -/** - * @brief Threads finalization hook. - * @details User finalization code added to the @p chThdExit() API. +/* + * This file was auto-generated by: + * `qmk chibios-confupdate -i keyboards/keebwerk/mega/chconf.h -r platforms/chibios/common/configs/chconf.h` */ -#define CH_CFG_THREAD_EXIT_HOOK(tp) { \ - /* Add threads finalization code here.*/ \ -} -/** - * @brief Context switch hook. - * @details This hook is invoked just before switching between threads. - */ -#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* Context switch code here.*/ \ -} +#pragma once -/** - * @brief ISR enter hook. - */ -#define CH_CFG_IRQ_PROLOGUE_HOOK() { \ - /* IRQ prologue code here.*/ \ -} +#define CH_CFG_USE_MESSAGES_PRIORITY TRUE -/** - * @brief ISR exit hook. - */ -#define CH_CFG_IRQ_EPILOGUE_HOOK() { \ - /* IRQ epilogue code here.*/ \ -} +#define CH_CFG_USE_MEMCORE TRUE -/** - * @brief Idle thread enter hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to activate a power saving mode. - */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ - /* Idle-enter code here.*/ \ -} +#define CH_CFG_USE_FACTORY TRUE -/** - * @brief Idle thread leave hook. - * @note This hook is invoked within a critical zone, no OS functions - * should be invoked from here. - * @note This macro can be used to deactivate a power saving mode. - */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ - /* Idle-leave code here.*/ \ -} +#define CH_CFG_FACTORY_OBJECTS_REGISTRY TRUE -/** - * @brief Idle Loop hook. - * @details This hook is continuously invoked by the idle thread loop. - */ -#define CH_CFG_IDLE_LOOP_HOOK() { \ - /* Idle loop code here.*/ \ -} +#define CH_CFG_FACTORY_GENERIC_BUFFERS TRUE -/** - * @brief System tick event hook. - * @details This hook is invoked in the system tick handler immediately - * after processing the virtual timers queue. - */ -#define CH_CFG_SYSTEM_TICK_HOOK() { \ - /* System tick event code here.*/ \ -} +#define CH_CFG_FACTORY_SEMAPHORES TRUE -/** - * @brief System halt hook. - * @details This hook is invoked in case to a system halting error before - * the system is halted. - */ -#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \ - /* System halt code here.*/ \ -} +#define CH_CFG_FACTORY_MAILBOXES TRUE -/** - * @brief Trace hook. - * @details This hook is invoked each time a new record is written in the - * trace buffer. - */ -#define CH_CFG_TRACE_HOOK(tep) { \ - /* Trace code here.*/ \ -} +#define CH_CFG_FACTORY_OBJ_FIFOS TRUE -/** @} */ +#define CH_CFG_FACTORY_PIPES TRUE -/*===========================================================================*/ -/* Port-specific settings (override port settings defaulted in chcore.h). */ -/*===========================================================================*/ +#define CH_DBG_ENABLE_STACK_CHECK TRUE -#endif /* CHCONF_H */ +#include_next <chconf.h> -/** @} */ |