aboutsummaryrefslogtreecommitdiff
path: root/quantum/audio/audio_chibios.c
diff options
context:
space:
mode:
Diffstat (limited to 'quantum/audio/audio_chibios.c')
-rw-r--r--quantum/audio/audio_chibios.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/quantum/audio/audio_chibios.c b/quantum/audio/audio_chibios.c
index 1863ae140..dddb8f135 100644
--- a/quantum/audio/audio_chibios.c
+++ b/quantum/audio/audio_chibios.c
@@ -282,6 +282,12 @@ void audio_init() {
282 dacStart(&DACD2, &dac1cfg2); 282 dacStart(&DACD2, &dac1cfg2);
283 283
284 /* 284 /*
285 * Start the note timer
286 */
287 gptStart(&GPTD8, &gpt8cfg1);
288 gptStartContinuous(&GPTD8, 2U);
289
290 /*
285 * Starting GPT6/7 driver, it is used for triggering the DAC. 291 * Starting GPT6/7 driver, it is used for triggering the DAC.
286 */ 292 */
287 START_CHANNEL_1(); 293 START_CHANNEL_1();
@@ -295,10 +301,12 @@ void audio_init() {
295 301
296 audio_initialized = true; 302 audio_initialized = true;
297 303
304 stop_all_notes();
305}
306
307void audio_startup() {
298 if (audio_config.enable) { 308 if (audio_config.enable) {
299 PLAY_SONG(startup_song); 309 PLAY_SONG(startup_song);
300 } else {
301 stop_all_notes();
302 } 310 }
303} 311}
304 312
@@ -638,6 +646,9 @@ bool is_playing_notes(void) { return playing_notes; }
638bool is_audio_on(void) { return (audio_config.enable != 0); } 646bool is_audio_on(void) { return (audio_config.enable != 0); }
639 647
640void audio_toggle(void) { 648void audio_toggle(void) {
649 if (audio_config.enable) {
650 stop_all_notes();
651 }
641 audio_config.enable ^= 1; 652 audio_config.enable ^= 1;
642 eeconfig_update_audio(audio_config.raw); 653 eeconfig_update_audio(audio_config.raw);
643 if (audio_config.enable) { 654 if (audio_config.enable) {