summaryrefslogtreecommitdiff
path: root/drivers/media/radio/CG2900/cg2900_fm_driver.c
diff options
context:
space:
mode:
authorAnupam Roy <anupam.roy@stericsson.com>2012-02-06 10:25:38 +0530
committerPhilippe Langlais <philippe.langlais@stericsson.com>2012-05-22 11:06:03 +0200
commit7433881f47bafb6cb765a8e3b1e422449ac9d2ea (patch)
tree58c138700b1093fe03246f54c3eb73127da7d6f8 /drivers/media/radio/CG2900/cg2900_fm_driver.c
parentd49bd9347fcf6da0addeb8b36aeb13dceeecfa72 (diff)
CG2900 FM Radio: Implement FMR_RP_Stereo_SetControl_BlendingRSSI
This implementation controls the stereo-threshold level by adjusting the min and max RSSI levels. The threshold for switching is optimized(lowered), which was by default a bit too high. ST-Ericsson Linux next: NA ST-Ericsson ID: 410120 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I35e4202de8066dff80f371285eb298caa23b9656 Signed-off-by: Anupam Roy <anupam.roy@stericsson.com> Change-Id: Ibcec6ec65aef6f324810504415b530564ac942b2 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/49998 Reviewed-by: Anurag GUPTA-1 <anurag.gupta@stericsson.com> Reviewed-by: Hemant GUPTA <hemant.gupta@stericsson.com>
Diffstat (limited to 'drivers/media/radio/CG2900/cg2900_fm_driver.c')
-rw-r--r--drivers/media/radio/CG2900/cg2900_fm_driver.c38
1 files changed, 38 insertions, 0 deletions
diff --git a/drivers/media/radio/CG2900/cg2900_fm_driver.c b/drivers/media/radio/CG2900/cg2900_fm_driver.c
index 37fb664d04b..95680534e11 100644
--- a/drivers/media/radio/CG2900/cg2900_fm_driver.c
+++ b/drivers/media/radio/CG2900/cg2900_fm_driver.c
@@ -2326,6 +2326,44 @@ error:
return err;
}
+int fmd_rx_set_stereo_ctrl_blending_rssi(
+ u16 min_rssi,
+ u16 max_rssi)
+{
+ int err;
+ int io_result;
+ u16 parameters[CMD_RP_STEREO_SET_CONTROL_BLENDING_RSSI_PARAM_LEN];
+
+ if (fmd_go_cmd_busy()) {
+ err = -EBUSY;
+ goto error;
+ }
+
+ if (!fmd_state_info.fmd_initialized) {
+ err = -ENOEXEC;
+ goto error;
+ }
+
+ parameters[0] = min_rssi;
+ parameters[1] = max_rssi;
+
+ io_result = fmd_send_cmd_and_read_resp(
+ CMD_FMR_RP_STEREO_SET_CONTROL_BLENDING_RSSI,
+ CMD_RP_STEREO_SET_CONTROL_BLENDING_RSSI_PARAM_LEN,
+ parameters,
+ NULL,
+ NULL);
+
+ if (io_result != 0) {
+ err = io_result;
+ goto error;
+ }
+ err = 0;
+
+error:
+ return err;
+}
+
int fmd_rx_get_stereo_mode(
u8 *mode
)