aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPrashant Laddha <prladdha@cisco.com>2015-02-04 04:07:32 -0500
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2015-03-02 12:53:04 -0500
commitd585c1e14a84f08a4a714553d9fc459ee697ff95 (patch)
treedbc16d8257dff37067deb5292934d763f36c17a0
parent4e30a37345e6f723553d457becc423efa4bf2703 (diff)
[media] vivid sdr: fix broken sine tone generated for sdr FM
FM (frequency modulated) signal for SDR is generated by varying the phase, where phase variation is proportional to input signal. It is seen that, the larger phase increments leads to discontinuities in the signal recovered after demodulation. Reducing the extent of phase variation with respect to input signal, equivalent to reducing the modulation index. Tested using FM receiver flow graph in gnuradio-companion. Cc: Antti Palosaari <crope@iki.fi> Signed-off-by: Prashant Laddha <prladdha@cisco.com> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
-rw-r--r--drivers/media/platform/vivid/vivid-sdr-cap.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/media/platform/vivid/vivid-sdr-cap.c b/drivers/media/platform/vivid/vivid-sdr-cap.c
index 5e089cb58a38..caf131666e37 100644
--- a/drivers/media/platform/vivid/vivid-sdr-cap.c
+++ b/drivers/media/platform/vivid/vivid-sdr-cap.c
@@ -454,7 +454,7 @@ void vivid_sdr_cap_process(struct vivid_dev *dev, struct vivid_buffer *buf)
454 FIXP_2PI) >> (31 - FIXP_N); 454 FIXP_2PI) >> (31 - FIXP_N);
455 455
456 dev->sdr_fixp_src_phase += src_phase_step; 456 dev->sdr_fixp_src_phase += src_phase_step;
457 dev->sdr_fixp_mod_phase += mod_phase_step; 457 dev->sdr_fixp_mod_phase += mod_phase_step / 4;
458 458
459 /* 459 /*
460 * Transfer phases to [0 / 2xPI] in order to avoid variable 460 * Transfer phases to [0 / 2xPI] in order to avoid variable