From ed4d7a33bdeba5ce11512ee617398a2840797203 Mon Sep 17 00:00:00 2001 From: Linus Nielsen Feltzing Date: Fri, 21 Jul 2006 08:42:28 +0000 Subject: Patch #5347 by Rani Hod - Adds FM radio and recording features to the iAudio X5. Also includes a rewrite of the Coldfire I2C driver to include both read and write. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10272 a1c6a512-1295-4272-9138-f99709370657 --- firmware/sound.c | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) (limited to 'firmware/sound.c') diff --git a/firmware/sound.c b/firmware/sound.c index 057cfc0995..5e4cd5db48 100644 --- a/firmware/sound.c +++ b/firmware/sound.c @@ -111,7 +111,11 @@ static const struct sound_settings_info sound_settings_table[] = { [SOUND_LEFT_GAIN] = {"dB", 1, 1,-128, 96, 0, NULL}, [SOUND_RIGHT_GAIN] = {"dB", 1, 1,-128, 96, 0, NULL}, [SOUND_MIC_GAIN] = {"dB", 1, 1,-128, 108, 16, NULL}, -#endif +#elif defined(HAVE_TLV320) + [SOUND_LEFT_GAIN] = {"dB", 1, 1, 0, 31, 23, NULL}, + [SOUND_RIGHT_GAIN] = {"dB", 1, 1, 0, 31, 23, NULL}, + [SOUND_MIC_GAIN] = {"dB", 1, 1, 0, 1, 1, NULL}, + #endif }; const char *sound_unit(int setting) @@ -901,6 +905,25 @@ int sound_val2phys(int setting, int value) break; } return result; +#elif defined(HAVE_TLV320) + int result = 0; + + switch(setting) + { + case SOUND_LEFT_GAIN: + case SOUND_RIGHT_GAIN: + result = (value - 23) * 15; /* (x - 23)/1.5 *10 */ + break; + + case SOUND_MIC_GAIN: + result = value * 200; /* 0 or 20 dB */ + break; + + default: + result = value; + break; + } + return result; #else (void)setting; return value; -- cgit v1.2.3