diff options
author | That-Canadian <Poole.Chris.11@gmail.com> | 2018-10-31 22:42:15 +0100 |
---|---|---|
committer | Drashna Jaelre <drashna@live.com> | 2018-10-31 22:42:15 +0100 |
commit | 5630ad7604f7a8243ef9b643a4409fc8f9f96ed0 (patch) | |
tree | 036737356e308d09ed2a76948d25a24239c6ae46 /quantum | |
parent | 75d657b5251c80b4d5a3de583d4ba97c10ac619f (diff) | |
download | qmk_firmware-5630ad7604f7a8243ef9b643a4409fc8f9f96ed0.tar.gz qmk_firmware-5630ad7604f7a8243ef9b643a4409fc8f9f96ed0.tar.xz |
Added JTAG disable code to the split_common (#4309)
Added JTAG disable code to the split_common slave code since the slave never calls keyboard_init(). In the future the slave should likely be modified to call keyboard_init() in some way, but without calling any of the unnecessary USB initialization code.
Diffstat (limited to 'quantum')
-rw-r--r-- | quantum/split_common/split_util.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/quantum/split_common/split_util.c b/quantum/split_common/split_util.c index 7c87de4d9..7ca68c56c 100644 --- a/quantum/split_common/split_util.c +++ b/quantum/split_common/split_util.c @@ -93,6 +93,10 @@ void split_keyboard_setup(void) { } void keyboard_slave_loop(void) { + // Disable JTAG since we skip calling keyboard_init() on the slave side + // Future fix will possible call keyboard_init() on the slave to remove this need + disable_JTAG(); + matrix_init(); //Init RGB @@ -152,3 +156,13 @@ void matrix_setup(void) { keyboard_slave_loop(); } } + +// Temporary code to disable JTAG on the slave board +void disable_JTAG(void) { + /* Copied from tmk_core/common/keybaord.c */ + // To use PORTF disable JTAG with writing JTD bit twice within four cycles. + #if (defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) || defined(__AVR_ATmega32U4__)) + MCUCR |= _BV(JTD); + MCUCR |= _BV(JTD); + #endif +} |