summaryrefslogtreecommitdiff
path: root/firmware/target/arm/imx233
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/imx233')
-rw-r--r--firmware/target/arm/imx233/audio-imx233.c12
-rw-r--r--firmware/target/arm/imx233/audio-imx233.h6
-rw-r--r--firmware/target/arm/imx233/button-imx233.c4
-rw-r--r--firmware/target/arm/imx233/button-imx233.h6
4 files changed, 13 insertions, 15 deletions
diff --git a/firmware/target/arm/imx233/audio-imx233.c b/firmware/target/arm/imx233/audio-imx233.c
index 273844ef30..40218f4aa0 100644
--- a/firmware/target/arm/imx233/audio-imx233.c
+++ b/firmware/target/arm/imx233/audio-imx233.c
@@ -22,7 +22,7 @@
22#include "audio-imx233.h" 22#include "audio-imx233.h"
23#include "pinctrl-imx233.h" 23#include "pinctrl-imx233.h"
24 24
25void __attribute__((weak)) imx233_audio_preinit(void) 25void imx233_audio_preinit(void)
26{ 26{
27#ifdef IMX233_AUDIO_HP_GATE_BANK 27#ifdef IMX233_AUDIO_HP_GATE_BANK
28 imx233_pinctrl_acquire(IMX233_AUDIO_HP_GATE_BANK, IMX233_AUDIO_HP_GATE_PIN, "hp_gate"); 28 imx233_pinctrl_acquire(IMX233_AUDIO_HP_GATE_BANK, IMX233_AUDIO_HP_GATE_PIN, "hp_gate");
@@ -38,12 +38,12 @@ void __attribute__((weak)) imx233_audio_preinit(void)
38#endif 38#endif
39} 39}
40 40
41void __attribute__((weak)) imx233_audio_postinit(void) 41void imx233_audio_postinit(void)
42{ 42{
43 imx233_audio_enable_hp(true); 43 imx233_audio_enable_hp(true);
44} 44}
45// enable/disable the HP audio gate (typically using a GPIO) 45// enable/disable the HP audio gate (typically using a GPIO)
46void __attribute__((weak)) imx233_audio_enable_hp(bool en) 46void imx233_audio_enable_hp(bool en)
47{ 47{
48#ifdef IMX233_AUDIO_HP_GATE_BANK 48#ifdef IMX233_AUDIO_HP_GATE_BANK
49# ifdef IMX233_AUDIO_HP_GATE_INVERTED 49# ifdef IMX233_AUDIO_HP_GATE_INVERTED
@@ -55,7 +55,7 @@ void __attribute__((weak)) imx233_audio_enable_hp(bool en)
55#endif 55#endif
56} 56}
57// enable/disable the speaker audio gate (typically using a GPIO) 57// enable/disable the speaker audio gate (typically using a GPIO)
58void __attribute__((weak)) imx233_audio_enable_spkr(bool en) 58void imx233_audio_enable_spkr(bool en)
59{ 59{
60#ifdef IMX233_AUDIO_SPKR_GATE_BANK 60#ifdef IMX233_AUDIO_SPKR_GATE_BANK
61# ifdef IMX233_AUDIO_SPKR_GATE_INVERTED 61# ifdef IMX233_AUDIO_SPKR_GATE_INVERTED
@@ -112,14 +112,14 @@ static void select_audio_path(void)
112 } 112 }
113} 113}
114 114
115void __attribute__((weak)) audio_input_mux(int source, unsigned flags) 115void audio_input_mux(int source, unsigned flags)
116{ 116{
117 input_source = source; 117 input_source = source;
118 input_flags = flags; 118 input_flags = flags;
119 select_audio_path(); 119 select_audio_path();
120} 120}
121 121
122void __attribute__((weak)) audio_set_output_source(int source) 122void audio_set_output_source(int source)
123{ 123{
124 output_source = source; 124 output_source = source;
125 select_audio_path(); 125 select_audio_path();
diff --git a/firmware/target/arm/imx233/audio-imx233.h b/firmware/target/arm/imx233/audio-imx233.h
index 2596e81bac..860a9c710f 100644
--- a/firmware/target/arm/imx233/audio-imx233.h
+++ b/firmware/target/arm/imx233/audio-imx233.h
@@ -24,9 +24,7 @@
24#include "audio.h" 24#include "audio.h"
25#include "audio-target.h" 25#include "audio-target.h"
26 26
27/* target can override those functions to provide hooks to the audio code 27/* target can control those functions by using the following defines
28 * alternativelly, the default implementation provide support for GPIO
29 * controlled gates using the following defines
30 * NOTE by default gates are enabled by setting GPIO to 1 (except if inverted) 28 * NOTE by default gates are enabled by setting GPIO to 1 (except if inverted)
31 * 29 *
32 * IMX233_AUDIO_HP_GATE_BANK (gpio bank) 30 * IMX233_AUDIO_HP_GATE_BANK (gpio bank)
@@ -37,7 +35,7 @@
37 * IMX233_AUDIO_SPKR_GATE_PIN (gpio pin) 35 * IMX233_AUDIO_SPKR_GATE_PIN (gpio pin)
38 * IMX233_AUDIO_SPKR_GATE_INVERTED (define if inverted) 36 * IMX233_AUDIO_SPKR_GATE_INVERTED (define if inverted)
39 * 37 *
40 * target can override those to control microphone parameters 38 * target can set those to control microphone parameters
41 * NOTE by default, mic select is 1, mic bias is 0 and mic resistor is 2KOhm 39 * NOTE by default, mic select is 1, mic bias is 0 and mic resistor is 2KOhm
42 * IMX233_AUDIO_MIC_SELECT (mic bias pin: 0=lradc0, 1=lradc1) 40 * IMX233_AUDIO_MIC_SELECT (mic bias pin: 0=lradc0, 1=lradc1)
43 * IMX233_AUDIO_MIC_BIAS (mic bias, 0=1.21V, 1=1.46, ..., 7=2.96V (0.25mV inc) 41 * IMX233_AUDIO_MIC_BIAS (mic bias, 0=1.21V, 1=1.46, ..., 7=2.96V (0.25mV inc)
diff --git a/firmware/target/arm/imx233/button-imx233.c b/firmware/target/arm/imx233/button-imx233.c
index a77d3d76c9..9300eec161 100644
--- a/firmware/target/arm/imx233/button-imx233.c
+++ b/firmware/target/arm/imx233/button-imx233.c
@@ -180,7 +180,7 @@ bool imx233_button_read_hold(void)
180 return imx233_button_read_btn(hold_idx); 180 return imx233_button_read_btn(hold_idx);
181} 181}
182 182
183bool __attribute__((weak)) button_hold(void) 183bool button_hold(void)
184{ 184{
185 bool hold_button = imx233_button_read_hold(); 185 bool hold_button = imx233_button_read_hold();
186#ifndef BOOTLOADER 186#ifndef BOOTLOADER
@@ -202,7 +202,7 @@ bool imx233_button_read_jack(void)
202 return imx233_button_read_btn(jack_idx); 202 return imx233_button_read_btn(jack_idx);
203} 203}
204 204
205bool __attribute__((weak)) headphones_inserted(void) 205bool headphones_inserted(void)
206{ 206{
207 return imx233_button_read_jack(); 207 return imx233_button_read_jack();
208} 208}
diff --git a/firmware/target/arm/imx233/button-imx233.h b/firmware/target/arm/imx233/button-imx233.h
index 9e244e01ac..33e15a2a97 100644
--- a/firmware/target/arm/imx233/button-imx233.h
+++ b/firmware/target/arm/imx233/button-imx233.h
@@ -160,8 +160,8 @@ struct imx233_button_map_t
160 * - last entry: 160 * - last entry:
161 * IMX233_BUTTON_(END, END(), "") 161 * IMX233_BUTTON_(END, END(), "")
162 * 162 *
163 * The driver also provides default implementations for headphones_inserted() 163 * The driver also provides an implementations for headphones_inserted()
164 * and button_hold() which can be overriden since they have weak linkage. 164 * and button_hold() using the table information.
165 * 165 *
166 * The button-target.h header can also define IMX233_BUTTON_LRADC_MARGIN 166 * The button-target.h header can also define IMX233_BUTTON_LRADC_MARGIN
167 * to control the error margin allowed for button using LRADC. The default 167 * to control the error margin allowed for button using LRADC. The default
@@ -193,4 +193,4 @@ bool imx233_button_read_btn(int idx);
193 * Argument is an index into the imx233_button_map table */ 193 * Argument is an index into the imx233_button_map table */
194int imx233_button_read_raw(int idx); 194int imx233_button_read_raw(int idx);
195 195
196#endif /* __button_imx233__ */ \ No newline at end of file 196#endif /* __button_imx233__ */