diff options
author | Amaury Pouly <amaury.pouly@gmail.com> | 2013-07-23 14:12:08 +0200 |
---|---|---|
committer | Amaury Pouly <amaury.pouly@gmail.com> | 2013-07-23 14:12:08 +0200 |
commit | c4f2a46e0dfee336ce7016cd62608097f15367b8 (patch) | |
tree | bfb915b2336f90d43bf8af0e5ee50cffcda9daf7 | |
parent | 9faabb98d4c3bd627fd62003dd8a604575af0099 (diff) | |
download | rockbox-c4f2a46e0dfee336ce7016cd62608097f15367b8.tar.gz rockbox-c4f2a46e0dfee336ce7016cd62608097f15367b8.zip |
imx233: revert volumes to 1dB resolution
Using a better resolution causes havoc in the user interface
because it doesn't properly handle steps and people start to
believe I am responsible for all this mess.
Change-Id: I02b68dce5802692efde3da226eeeb49e4995f97a
-rw-r--r-- | firmware/drivers/audio/imx233-codec.c | 2 | ||||
-rw-r--r-- | firmware/export/imx233-codec.h | 10 |
2 files changed, 6 insertions, 6 deletions
diff --git a/firmware/drivers/audio/imx233-codec.c b/firmware/drivers/audio/imx233-codec.c index 7406a8d076..94a1218d5e 100644 --- a/firmware/drivers/audio/imx233-codec.c +++ b/firmware/drivers/audio/imx233-codec.c | |||
@@ -46,6 +46,7 @@ void audiohw_close(void) | |||
46 | imx233_audioin_close(); | 46 | imx233_audioin_close(); |
47 | } | 47 | } |
48 | 48 | ||
49 | /* volume in centibels */ | ||
49 | void audiohw_set_volume(int vol_l, int vol_r) | 50 | void audiohw_set_volume(int vol_l, int vol_r) |
50 | { | 51 | { |
51 | imx233_audioout_set_hp_vol(vol_l / 5, vol_r / 5); | 52 | imx233_audioout_set_hp_vol(vol_l / 5, vol_r / 5); |
@@ -71,6 +72,7 @@ void audiohw_disable_recording(void) | |||
71 | imx233_audioin_close(); | 72 | imx233_audioin_close(); |
72 | } | 73 | } |
73 | 74 | ||
75 | /* volume in centibels */ | ||
74 | void audiohw_set_recvol(int left, int right, int type) | 76 | void audiohw_set_recvol(int left, int right, int type) |
75 | { | 77 | { |
76 | left /= 5; | 78 | left /= 5; |
diff --git a/firmware/export/imx233-codec.h b/firmware/export/imx233-codec.h index a6f244517e..f5f58e246b 100644 --- a/firmware/export/imx233-codec.h +++ b/firmware/export/imx233-codec.h | |||
@@ -27,20 +27,18 @@ | |||
27 | #define AUDIOHW_CAPS (DEPTH_3D_CAP | BASS_CAP | TREBLE_CAP | \ | 27 | #define AUDIOHW_CAPS (DEPTH_3D_CAP | BASS_CAP | TREBLE_CAP | \ |
28 | LIN_GAIN_CAP | MIC_GAIN_CAP) | 28 | LIN_GAIN_CAP | MIC_GAIN_CAP) |
29 | 29 | ||
30 | /* Work with half dB since the i.MX233 doesn't have a better resolution */ | ||
31 | |||
32 | /* minimum is -57.5dB and max is 6dB in DAC mode | 30 | /* minimum is -57.5dB and max is 6dB in DAC mode |
33 | * and -51.5dB / 12dB in Line1 mode */ | 31 | * and -51.5dB / 12dB in Line1 mode */ |
34 | AUDIOHW_SETTING(VOLUME, "dB", 1, 5,-580, 120, -250) | 32 | AUDIOHW_SETTING(VOLUME, "dB", 0, 1, -58, 12, -25) |
35 | /* HAVE_SW_TONE_CONTROLS */ | 33 | /* HAVE_SW_TONE_CONTROLS */ |
36 | #ifdef HAVE_RECORDING | 34 | #ifdef HAVE_RECORDING |
37 | /* Depending on the input, we have three available volumes to tweak: | 35 | /* Depending on the input, we have three available volumes to tweak: |
38 | * - adc volume: -100dB -> -0.5dB in 0.5dB steps | 36 | * - adc volume: -100dB -> -0.5dB in 0.5dB steps |
39 | * - mux gain: 0dB -> 22.5dB in 1.5dB steps | 37 | * - mux gain: 0dB -> 22.5dB in 1.5dB steps |
40 | * - mic gain: 0dB -> 40dB in 10dB steps (except for 10) */ | 38 | * - mic gain: 0dB -> 40dB in 10dB steps (except for 10) */ |
41 | AUDIOHW_SETTING(LEFT_GAIN, "dB", 1, 5,-1000, 220, 0) | 39 | AUDIOHW_SETTING(LEFT_GAIN, "dB", 0, 1, -100, 22, 0) |
42 | AUDIOHW_SETTING(RIGHT_GAIN, "dB", 1, 5,-1000, 220, 0) | 40 | AUDIOHW_SETTING(RIGHT_GAIN, "dB", 0, 1, -100, 22, 0) |
43 | AUDIOHW_SETTING(MIC_GAIN, "dB", 1, 5,-1000, 600, 200) | 41 | AUDIOHW_SETTING(MIC_GAIN, "dB", 0, 1, -100, 60, 20) |
44 | #endif /* HAVE_RECORDING */ | 42 | #endif /* HAVE_RECORDING */ |
45 | /* i.MX233 has four settings: 0dB, 3dB, 4.5dB, 6dB so fake 1.5dB steps */ | 43 | /* i.MX233 has four settings: 0dB, 3dB, 4.5dB, 6dB so fake 1.5dB steps */ |
46 | AUDIOHW_SETTING(DEPTH_3D, "dB", 1,15, 0, 60, 0) | 44 | AUDIOHW_SETTING(DEPTH_3D, "dB", 1,15, 0, 60, 0) |