diff options
author | Drashna Jaelre <drashna@live.com> | 2019-07-16 01:40:54 -0700 |
---|---|---|
committer | skullydazed <skullydazed@users.noreply.github.com> | 2019-07-16 01:40:54 -0700 |
commit | f6c7e114260890292dcd12645db7fecd64167973 (patch) | |
tree | 0edeec134b20c100e793886d7b5b55f0e1917c19 /quantum | |
parent | 97a3f806c4740213d7b133f0be7c2f51d228593b (diff) | |
download | qmk_firmware-f6c7e114260890292dcd12645db7fecd64167973.tar.gz |
Remove the need to specify NUM_OF_ENCODERS for the Encoder feature (#6328)
* Remove the need to set NUM_OF_ENCODERS
Instead, calculate the size of the array, and use that instead
* Add hack for split common support
* Remove NUM_OF_ENCODERS from keyboard config
Can be reverted, if needed
Diffstat (limited to 'quantum')
-rw-r--r-- | quantum/encoder.c | 10 | ||||
-rw-r--r-- | quantum/split_common/transport.c | 2 |
2 files changed, 6 insertions, 6 deletions
diff --git a/quantum/encoder.c b/quantum/encoder.c index ddf6234ab..31f00c346 100644 --- a/quantum/encoder.c +++ b/quantum/encoder.c @@ -25,16 +25,14 @@ #define ENCODER_RESOLUTION 4 #endif -#ifndef NUMBER_OF_ENCODERS - #error "Number of encoders not defined by NUMBER_OF_ENCODERS" -#endif - #if !defined(ENCODERS_PAD_A) || !defined(ENCODERS_PAD_B) #error "No encoder pads defined by ENCODERS_PAD_A and ENCODERS_PAD_B" #endif -static pin_t encoders_pad_a[NUMBER_OF_ENCODERS] = ENCODERS_PAD_A; -static pin_t encoders_pad_b[NUMBER_OF_ENCODERS] = ENCODERS_PAD_B; + +#define NUMBER_OF_ENCODERS (sizeof(encoders_pad_a)/sizeof(pin_t)) +static pin_t encoders_pad_a[] = ENCODERS_PAD_A; +static pin_t encoders_pad_b[] = ENCODERS_PAD_B; static int8_t encoder_LUT[] = { 0, -1, 1, 0, 1, 0, 0, -1, -1, 0, 0, 1, 0, 1, -1, 0 }; diff --git a/quantum/split_common/transport.c b/quantum/split_common/transport.c index b32d48eb8..ba21d0c7b 100644 --- a/quantum/split_common/transport.c +++ b/quantum/split_common/transport.c @@ -17,6 +17,8 @@ #ifdef ENCODER_ENABLE # include "encoder.h" +static pin_t encoders_pad[] = ENCODERS_PAD_A; +# define NUMBER_OF_ENCODERS (sizeof(encoders_pad)/sizeof(pin_t)) #endif #if defined(USE_I2C) || defined(EH) |