diff options
author | fauxpark <fauxpark@gmail.com> | 2019-08-21 15:18:52 +1000 |
---|---|---|
committer | Drashna Jaelre <drashna@live.com> | 2019-08-20 22:18:52 -0700 |
commit | f2c179de58c63b2202a490d283fd8fa216680ce7 (patch) | |
tree | b6ac2946b63566f604251af6c2e160457ca5e11c /tmk_core | |
parent | 977c316eb1bdca7f0e13026936322cb9a9fcd0d2 (diff) |
Remove superfluous JTAG disable code (#6445)
* 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()
Diffstat (limited to 'tmk_core')
-rw-r--r-- | tmk_core/common/keyboard.c | 11 | ||||
-rw-r--r-- | tmk_core/common/keyboard.h | 2 |
2 files changed, 9 insertions, 4 deletions
diff --git a/tmk_core/common/keyboard.c b/tmk_core/common/keyboard.c index 85d2525480..8f0257cf66 100644 --- a/tmk_core/common/keyboard.c +++ b/tmk_core/common/keyboard.c @@ -130,10 +130,15 @@ static inline bool has_ghost_in_row(uint8_t row, matrix_row_t rowdata) #endif void disable_jtag(void) { -// To use PORTF disable JTAG with writing JTD bit twice within four cycles. -#if (defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) || defined(__AVR_ATmega32U4__)) +// To use PF4-7 (PC2-5 on ATmega32A), disable JTAG by writing JTD bit twice within four cycles. +#if (defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || \ + defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) || \ + defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__)) MCUCR |= _BV(JTD); MCUCR |= _BV(JTD); +#elif defined(__AVR_ATmega32A__) + MCUCSR |= _BV(JTD); + MCUCSR |= _BV(JTD); #endif } @@ -184,7 +189,9 @@ void keyboard_post_init_kb(void) { * FIXME: needs doc */ void keyboard_setup(void) { +#ifndef NO_JTAG_DISABLE disable_jtag(); +#endif matrix_setup(); keyboard_pre_init_kb(); } diff --git a/tmk_core/common/keyboard.h b/tmk_core/common/keyboard.h index bf8b71fb78..19f98c74ec 100644 --- a/tmk_core/common/keyboard.h +++ b/tmk_core/common/keyboard.h @@ -57,8 +57,6 @@ static inline bool IS_RELEASED(keyevent_t event) { return (!IS_NOEVENT(event) && .time = (timer_read() | 1) \ } -void disable_jtag(void); - /* it runs once at early stage of startup before keyboard_init. */ void keyboard_setup(void); /* it runs once after initializing host side protocol, debug and MCU peripherals. */ |