From 530dd446cb7bbff7b7f9a8075726bfbb4eb9a2a3 Mon Sep 17 00:00:00 2001
From: walkerstop <walkerstop@gmail.com>
Date: Fri, 13 Apr 2018 00:53:29 -0700
Subject: Fix incorrect port direction setting in my previous pull request for
 pins B5, B6, B7 (#2739)

* Added support for audio using pins C4, C5, B6, B7

* Fixed bug where port direction wasn't set correctly for B5, B6, B7 audio ports
---
 quantum/audio/audio.c | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

(limited to 'quantum/audio')

diff --git a/quantum/audio/audio.c b/quantum/audio/audio.c
index 3c6d18c4f6..c948a60d6c 100644
--- a/quantum/audio/audio.c
+++ b/quantum/audio/audio.c
@@ -76,7 +76,7 @@
 
 #if defined(B5_AUDIO)
     #define BPIN_AUDIO
-    #define BPIN_SET_DIRECTION DDRC |= _BV(PORTB5);
+    #define BPIN_SET_DIRECTION DDRB |= _BV(PORTB5);
     #define INIT_AUDIO_COUNTER_1 TCCR1A = (0 << COM1A1) | (0 << COM1A0) | (1 << WGM11) | (0 << WGM10);
     #define ENABLE_AUDIO_COUNTER_1_ISR TIMSK1 |= _BV(OCIE1A)
     #define DISABLE_AUDIO_COUNTER_1_ISR TIMSK1 &= ~_BV(OCIE1A)
@@ -88,7 +88,7 @@
 #endif
 #if defined(B6_AUDIO)
     #define BPIN_AUDIO
-    #define BPIN_SET_DIRECTION DDRC |= _BV(PORTB6);
+    #define BPIN_SET_DIRECTION DDRB |= _BV(PORTB6);
     #define INIT_AUDIO_COUNTER_1 TCCR1A = (0 << COM1B1) | (0 << COM1B0) | (1 << WGM11) | (0 << WGM10);
     #define ENABLE_AUDIO_COUNTER_1_ISR TIMSK1 |= _BV(OCIE1B)
     #define DISABLE_AUDIO_COUNTER_1_ISR TIMSK1 &= ~_BV(OCIE1B)
@@ -100,7 +100,7 @@
 #endif
 #if defined(B7_AUDIO)
     #define BPIN_AUDIO
-    #define BPIN_SET_DIRECTION DDRC |= _BV(PORTB7);
+    #define BPIN_SET_DIRECTION DDRB |= _BV(PORTB7);
     #define INIT_AUDIO_COUNTER_1 TCCR1A = (0 << COM1C1) | (0 << COM1C0) | (1 << WGM11) | (0 << WGM10);
     #define ENABLE_AUDIO_COUNTER_1_ISR TIMSK1 |= _BV(OCIE1C)
     #define DISABLE_AUDIO_COUNTER_1_ISR TIMSK1 &= ~_BV(OCIE1C)
@@ -187,16 +187,11 @@ void audio_init()
         // Set audio ports as output
         #ifdef CPIN_AUDIO
           CPIN_SET_DIRECTION
+          DISABLE_AUDIO_COUNTER_3_ISR;
         #endif
         #ifdef BPIN_AUDIO
           BPIN_SET_DIRECTION
-        #endif
-
-        #ifdef CPIN_AUDIO
-            DISABLE_AUDIO_COUNTER_3_ISR;
-        #endif
-        #ifdef BPIN_AUDIO
-            DISABLE_AUDIO_COUNTER_1_ISR;
+          DISABLE_AUDIO_COUNTER_1_ISR;
         #endif
 
         // TCCR3A / TCCR3B: Timer/Counter #3 Control Registers TCCR3A/TCCR3B, TCCR1A/TCCR1B
-- 
cgit v1.2.3