diff options
author | Bertrik Sikken <bertrik@sikken.nl> | 2010-11-11 21:13:29 +0000 |
---|---|---|
committer | Bertrik Sikken <bertrik@sikken.nl> | 2010-11-11 21:13:29 +0000 |
commit | de870b3ee049262f984254305c7a062a1cdf3026 (patch) | |
tree | f9636eb3e4634ac223a0c5a6dadeb4e1a25b61db /firmware/drivers/tuner/tea5760uk.c | |
parent | b787c0dd05ef4ddd6727a86b06d2491be8600f07 (diff) | |
download | rockbox-de870b3ee049262f984254305c7a062a1cdf3026.tar.gz rockbox-de870b3ee049262f984254305c7a062a1cdf3026.zip |
Signal strength meter for FM radio - FS#8151 by Przemysław Hołubowski
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28559 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers/tuner/tea5760uk.c')
-rw-r--r-- | firmware/drivers/tuner/tea5760uk.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/firmware/drivers/tuner/tea5760uk.c b/firmware/drivers/tuner/tea5760uk.c index 20234e28ed..c1dff598b3 100644 --- a/firmware/drivers/tuner/tea5760uk.c +++ b/firmware/drivers/tuner/tea5760uk.c | |||
@@ -30,6 +30,10 @@ | |||
30 | 30 | ||
31 | #define I2C_ADR 0x22 | 31 | #define I2C_ADR 0x22 |
32 | 32 | ||
33 | /* define RSSI range */ | ||
34 | #define RSSI_MIN 4 | ||
35 | #define RSSI_MAX 46 | ||
36 | |||
33 | static bool tuner_present = false; | 37 | static bool tuner_present = false; |
34 | static unsigned char write_bytes[7] = { | 38 | static unsigned char write_bytes[7] = { |
35 | 0x00, /* INTREG LSB */ | 39 | 0x00, /* INTREG LSB */ |
@@ -138,6 +142,19 @@ int tea5760_get(int setting) | |||
138 | case RADIO_STEREO: | 142 | case RADIO_STEREO: |
139 | val = read_bytes[9] >> 2; | 143 | val = read_bytes[9] >> 2; |
140 | break; | 144 | break; |
145 | |||
146 | case RADIO_RSSI: | ||
147 | val = (read_bytes[9] >> 4) & 0x0F; | ||
148 | val = 4 + (28 * val + 5) / 10; | ||
149 | break; | ||
150 | |||
151 | case RADIO_RSSI_MIN: | ||
152 | val = RSSI_MIN; | ||
153 | break; | ||
154 | |||
155 | case RADIO_RSSI_MAX: | ||
156 | val = RSSI_MAX; | ||
157 | break; | ||
141 | } | 158 | } |
142 | 159 | ||
143 | return val; | 160 | return val; |