summaryrefslogtreecommitdiff
path: root/platforms
diff options
context:
space:
mode:
authorDrashna Jaelre <drashna@live.com>2024-03-06 03:02:37 -0800
committerGitHub <noreply@github.com>2024-03-06 22:02:37 +1100
commit83e6ddbbb4c8e715bfe419c4d7fc0ae305ea5bd5 (patch)
tree28fd4e4bbbb83fc41e3800c5b95369592c6e9942 /platforms
parent045e5c9729f22a8ab8a3f22fe9c0e6b51d1940fe (diff)
[Audio] Add support for audio shutdown pin (#22731)
Co-authored-by: Ryan <fauxpark@gmail.com>
Diffstat (limited to 'platforms')
-rw-r--r--platforms/avr/drivers/audio_pwm_hardware.c6
-rw-r--r--platforms/chibios/drivers/audio_dac_additive.c6
-rw-r--r--platforms/chibios/drivers/audio_dac_basic.c6
-rw-r--r--platforms/chibios/drivers/audio_pwm_hardware.c6
-rw-r--r--platforms/chibios/drivers/audio_pwm_software.c6
-rw-r--r--platforms/test/drivers/audio_pwm_hardware.c6
6 files changed, 18 insertions, 18 deletions
diff --git a/platforms/avr/drivers/audio_pwm_hardware.c b/platforms/avr/drivers/audio_pwm_hardware.c
index d484fba00f..16264cf0a2 100644
--- a/platforms/avr/drivers/audio_pwm_hardware.c
+++ b/platforms/avr/drivers/audio_pwm_hardware.c
@@ -213,7 +213,7 @@ void channel_2_stop(void) {
213} 213}
214#endif 214#endif
215 215
216void audio_driver_initialize(void) { 216void audio_driver_initialize_impl(void) {
217#ifdef AUDIO1_PIN_SET 217#ifdef AUDIO1_PIN_SET
218 channel_1_stop(); 218 channel_1_stop();
219 gpio_set_pin_output(AUDIO1_PIN); 219 gpio_set_pin_output(AUDIO1_PIN);
@@ -254,7 +254,7 @@ void audio_driver_initialize(void) {
254#endif 254#endif
255} 255}
256 256
257void audio_driver_stop(void) { 257void audio_driver_stop_impl(void) {
258#ifdef AUDIO1_PIN_SET 258#ifdef AUDIO1_PIN_SET
259 channel_1_stop(); 259 channel_1_stop();
260#endif 260#endif
@@ -264,7 +264,7 @@ void audio_driver_stop(void) {
264#endif 264#endif
265} 265}
266 266
267void audio_driver_start(void) { 267void audio_driver_start_impl(void) {
268#ifdef AUDIO1_PIN_SET 268#ifdef AUDIO1_PIN_SET
269 channel_1_start(); 269 channel_1_start();
270 if (playing_note) { 270 if (playing_note) {
diff --git a/platforms/chibios/drivers/audio_dac_additive.c b/platforms/chibios/drivers/audio_dac_additive.c
index d6fde42b68..8e29053301 100644
--- a/platforms/chibios/drivers/audio_dac_additive.c
+++ b/platforms/chibios/drivers/audio_dac_additive.c
@@ -303,7 +303,7 @@ static const DACConfig dac_conf = {.init = AUDIO_DAC_OFF_VALUE, .datamode = DAC_
303 */ 303 */
304static const DACConversionGroup dac_conv_cfg = {.num_channels = 1U, .end_cb = dac_end, .error_cb = dac_error, .trigger = DAC_TRG(0b000)}; 304static const DACConversionGroup dac_conv_cfg = {.num_channels = 1U, .end_cb = dac_end, .error_cb = dac_error, .trigger = DAC_TRG(0b000)};
305 305
306void audio_driver_initialize(void) { 306void audio_driver_initialize_impl(void) {
307 if ((AUDIO_PIN == A4) || (AUDIO_PIN_ALT == A4)) { 307 if ((AUDIO_PIN == A4) || (AUDIO_PIN_ALT == A4)) {
308 palSetLineMode(A4, PAL_MODE_INPUT_ANALOG); 308 palSetLineMode(A4, PAL_MODE_INPUT_ANALOG);
309 dacStart(&DACD1, &dac_conf); 309 dacStart(&DACD1, &dac_conf);
@@ -350,11 +350,11 @@ void audio_driver_initialize(void) {
350 gptStart(&GPTD6, &gpt6cfg1); 350 gptStart(&GPTD6, &gpt6cfg1);
351} 351}
352 352
353void audio_driver_stop(void) { 353void audio_driver_stop_impl(void) {
354 state = OUTPUT_SHOULD_STOP; 354 state = OUTPUT_SHOULD_STOP;
355} 355}
356 356
357void audio_driver_start(void) { 357void audio_driver_start_impl(void) {
358 gptStartContinuous(&GPTD6, 2U); 358 gptStartContinuous(&GPTD6, 2U);
359 359
360 for (uint8_t i = 0; i < AUDIO_MAX_SIMULTANEOUS_TONES; i++) { 360 for (uint8_t i = 0; i < AUDIO_MAX_SIMULTANEOUS_TONES; i++) {
diff --git a/platforms/chibios/drivers/audio_dac_basic.c b/platforms/chibios/drivers/audio_dac_basic.c
index 9a3f3fea1f..99b938e610 100644
--- a/platforms/chibios/drivers/audio_dac_basic.c
+++ b/platforms/chibios/drivers/audio_dac_basic.c
@@ -190,7 +190,7 @@ static void gpt_audio_state_cb(GPTDriver *gptp) {
190 } 190 }
191} 191}
192 192
193void audio_driver_initialize(void) { 193void audio_driver_initialize_impl(void) {
194 if ((AUDIO_PIN == A4) || (AUDIO_PIN_ALT == A4)) { 194 if ((AUDIO_PIN == A4) || (AUDIO_PIN_ALT == A4)) {
195 palSetPadMode(GPIOA, 4, PAL_MODE_INPUT_ANALOG); 195 palSetPadMode(GPIOA, 4, PAL_MODE_INPUT_ANALOG);
196 dacStart(&DACD1, &dac_conf_ch1); 196 dacStart(&DACD1, &dac_conf_ch1);
@@ -223,7 +223,7 @@ void audio_driver_initialize(void) {
223 gptStart(&AUDIO_STATE_TIMER, &gptStateUpdateCfg); 223 gptStart(&AUDIO_STATE_TIMER, &gptStateUpdateCfg);
224} 224}
225 225
226void audio_driver_stop(void) { 226void audio_driver_stop_impl(void) {
227 if ((AUDIO_PIN == A4) || (AUDIO_PIN_ALT == A4)) { 227 if ((AUDIO_PIN == A4) || (AUDIO_PIN_ALT == A4)) {
228 gptStopTimer(&GPTD6); 228 gptStopTimer(&GPTD6);
229 229
@@ -241,7 +241,7 @@ void audio_driver_stop(void) {
241 gptStopTimer(&AUDIO_STATE_TIMER); 241 gptStopTimer(&AUDIO_STATE_TIMER);
242} 242}
243 243
244void audio_driver_start(void) { 244void audio_driver_start_impl(void) {
245 if ((AUDIO_PIN == A4) || (AUDIO_PIN_ALT == A4)) { 245 if ((AUDIO_PIN == A4) || (AUDIO_PIN_ALT == A4)) {
246 dacStartConversion(&DACD1, &dac_conv_grp_ch1, (dacsample_t *)dac_buffer_1, AUDIO_DAC_BUFFER_SIZE); 246 dacStartConversion(&DACD1, &dac_conv_grp_ch1, (dacsample_t *)dac_buffer_1, AUDIO_DAC_BUFFER_SIZE);
247 } 247 }
diff --git a/platforms/chibios/drivers/audio_pwm_hardware.c b/platforms/chibios/drivers/audio_pwm_hardware.c
index 21b5c6892c..1ba7ec13bc 100644
--- a/platforms/chibios/drivers/audio_pwm_hardware.c
+++ b/platforms/chibios/drivers/audio_pwm_hardware.c
@@ -87,7 +87,7 @@ static void audio_callback(virtual_timer_t *vtp, void *p) {
87 chSysUnlockFromISR(); 87 chSysUnlockFromISR();
88} 88}
89 89
90void audio_driver_initialize(void) { 90void audio_driver_initialize_impl(void) {
91 pwmStart(&AUDIO_PWM_DRIVER, &pwmCFG); 91 pwmStart(&AUDIO_PWM_DRIVER, &pwmCFG);
92 92
93 // connect the AUDIO_PIN to the PWM hardware 93 // connect the AUDIO_PIN to the PWM hardware
@@ -100,7 +100,7 @@ void audio_driver_initialize(void) {
100 chVTObjectInit(&audio_vt); 100 chVTObjectInit(&audio_vt);
101} 101}
102 102
103void audio_driver_start(void) { 103void audio_driver_start_impl(void) {
104 channel_1_stop(); 104 channel_1_stop();
105 channel_1_start(); 105 channel_1_start();
106 106
@@ -115,7 +115,7 @@ void audio_driver_start(void) {
115 } 115 }
116} 116}
117 117
118void audio_driver_stop(void) { 118void audio_driver_stop_impl(void) {
119 channel_1_stop(); 119 channel_1_stop();
120 chVTReset(&audio_vt); 120 chVTReset(&audio_vt);
121} 121}
diff --git a/platforms/chibios/drivers/audio_pwm_software.c b/platforms/chibios/drivers/audio_pwm_software.c
index 663a9eca16..f48323900b 100644
--- a/platforms/chibios/drivers/audio_pwm_software.c
+++ b/platforms/chibios/drivers/audio_pwm_software.c
@@ -121,7 +121,7 @@ GPTConfig gptCFG = {
121 .callback = gpt_callback, 121 .callback = gpt_callback,
122}; 122};
123 123
124void audio_driver_initialize(void) { 124void audio_driver_initialize_impl(void) {
125 pwmStart(&AUDIO_PWM_DRIVER, &pwmCFG); 125 pwmStart(&AUDIO_PWM_DRIVER, &pwmCFG);
126 126
127 palSetLineMode(AUDIO_PIN, PAL_MODE_OUTPUT_PUSHPULL); 127 palSetLineMode(AUDIO_PIN, PAL_MODE_OUTPUT_PUSHPULL);
@@ -138,7 +138,7 @@ void audio_driver_initialize(void) {
138 gptStart(&AUDIO_STATE_TIMER, &gptCFG); 138 gptStart(&AUDIO_STATE_TIMER, &gptCFG);
139} 139}
140 140
141void audio_driver_start(void) { 141void audio_driver_start_impl(void) {
142 channel_1_stop(); 142 channel_1_stop();
143 channel_1_start(); 143 channel_1_start();
144 144
@@ -147,7 +147,7 @@ void audio_driver_start(void) {
147 } 147 }
148} 148}
149 149
150void audio_driver_stop(void) { 150void audio_driver_stop_impl(void) {
151 channel_1_stop(); 151 channel_1_stop();
152 gptStopTimer(&AUDIO_STATE_TIMER); 152 gptStopTimer(&AUDIO_STATE_TIMER);
153} 153}
diff --git a/platforms/test/drivers/audio_pwm_hardware.c b/platforms/test/drivers/audio_pwm_hardware.c
index 336e4f5844..3a0384117a 100644
--- a/platforms/test/drivers/audio_pwm_hardware.c
+++ b/platforms/test/drivers/audio_pwm_hardware.c
@@ -15,6 +15,6 @@
15 15
16#include "audio.h" 16#include "audio.h"
17 17
18void audio_driver_initialize(void) {} 18void audio_driver_initialize_impl(void) {}
19void audio_driver_start() {} 19void audio_driver_start_impl() {}
20void audio_driver_stop() {} 20void audio_driver_stop_impl() {}