diff options
Diffstat (limited to 'firmware/target/arm')
-rw-r--r-- | firmware/target/arm/pcm-pp.c | 13 | ||||
-rw-r--r-- | firmware/target/arm/wmcodec-pp.c | 4 |
2 files changed, 12 insertions, 5 deletions
diff --git a/firmware/target/arm/pcm-pp.c b/firmware/target/arm/pcm-pp.c index 10ac2a1d0c..e98054ab9e 100644 --- a/firmware/target/arm/pcm-pp.c +++ b/firmware/target/arm/pcm-pp.c | |||
@@ -365,7 +365,7 @@ void pcm_play_dma_init(void) | |||
365 | /* Initialize default register values. */ | 365 | /* Initialize default register values. */ |
366 | audiohw_init(); | 366 | audiohw_init(); |
367 | 367 | ||
368 | #if !defined(HAVE_WM8731) && !defined(HAVE_WM8751) | 368 | #if !defined(HAVE_WM8731) && !defined(HAVE_WM8751) && !defined(HAVE_WM8975) |
369 | /* Power on */ | 369 | /* Power on */ |
370 | audiohw_enable_output(true); | 370 | audiohw_enable_output(true); |
371 | /* Unmute the master channel (DAC should be at zero point now). */ | 371 | /* Unmute the master channel (DAC should be at zero point now). */ |
@@ -590,6 +590,13 @@ void pcm_rec_dma_start(void *addr, size_t size) | |||
590 | void pcm_rec_dma_close(void) | 590 | void pcm_rec_dma_close(void) |
591 | { | 591 | { |
592 | pcm_rec_dma_stop(); | 592 | pcm_rec_dma_stop(); |
593 | |||
594 | #if defined(IPOD_COLOR) || defined (IPOD_4G) | ||
595 | /* The usual magic from IPL - I'm guessing this configures the headphone | ||
596 | socket to be input or output - in this case, output. */ | ||
597 | GPIO_SET_BITWISE(GPIOI_OUTPUT_VAL, 0x40); | ||
598 | GPIO_SET_BITWISE(GPIOA_OUTPUT_VAL, 0x04); | ||
599 | #endif | ||
593 | } /* pcm_close_recording */ | 600 | } /* pcm_close_recording */ |
594 | 601 | ||
595 | void pcm_rec_dma_init(void) | 602 | void pcm_rec_dma_init(void) |
@@ -597,8 +604,8 @@ void pcm_rec_dma_init(void) | |||
597 | #if defined(IPOD_COLOR) || defined (IPOD_4G) | 604 | #if defined(IPOD_COLOR) || defined (IPOD_4G) |
598 | /* The usual magic from IPL - I'm guessing this configures the headphone | 605 | /* The usual magic from IPL - I'm guessing this configures the headphone |
599 | socket to be input or output - in this case, input. */ | 606 | socket to be input or output - in this case, input. */ |
600 | GPIOI_OUTPUT_VAL &= ~0x40; | 607 | GPIO_CLEAR_BITWISE(GPIOI_OUTPUT_VAL, 0x40); |
601 | GPIOA_OUTPUT_VAL &= ~0x4; | 608 | GPIO_CLEAR_BITWISE(GPIOA_OUTPUT_VAL, 0x04); |
602 | #endif | 609 | #endif |
603 | 610 | ||
604 | pcm_rec_dma_stop(); | 611 | pcm_rec_dma_stop(); |
diff --git a/firmware/target/arm/wmcodec-pp.c b/firmware/target/arm/wmcodec-pp.c index efa80f02b2..04cf238ac3 100644 --- a/firmware/target/arm/wmcodec-pp.c +++ b/firmware/target/arm/wmcodec-pp.c | |||
@@ -96,13 +96,13 @@ void audiohw_init(void) { | |||
96 | #endif /* IPOD_1G2G/3G */ | 96 | #endif /* IPOD_1G2G/3G */ |
97 | #endif | 97 | #endif |
98 | 98 | ||
99 | #if defined(HAVE_WM8731) || defined(HAVE_WM8751) | 99 | #if defined(HAVE_WM8731) || defined(HAVE_WM8751) || defined(HAVE_WM8975) |
100 | audiohw_preinit(); | 100 | audiohw_preinit(); |
101 | #endif | 101 | #endif |
102 | 102 | ||
103 | } | 103 | } |
104 | 104 | ||
105 | #if !defined(HAVE_WM8731) && !defined(HAVE_WM8751) | 105 | #if !defined(HAVE_WM8731) && !defined(HAVE_WM8751) && !defined(HAVE_WM8975) |
106 | void audiohw_postinit(void) | 106 | void audiohw_postinit(void) |
107 | { | 107 | { |
108 | } | 108 | } |