aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAntti Palosaari <crope@iki.fi>2014-02-07 00:46:16 -0500
committerMauro Carvalho Chehab <m.chehab@samsung.com>2014-03-13 09:26:49 -0400
commit9aa4357e9b10b92acb85e30834f8eb4aa7b94554 (patch)
treed32949437d778821d4e3a0b65f9d0335137bf8d0
parentde1dd3e9cff0f764f6244b515fe2a6ea15f9cfde (diff)
[media] v4l: add control for RF tuner PLL lock flag
Add volatile boolean control to indicate if tuner frequency synthesizer is locked to requested frequency. That means tuner is able to receive given frequency. Control is named as "PLL lock", since frequency synthesizers are based of phase-locked-loop. Maybe more general name could be wise still? Cc: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
-rw-r--r--drivers/media/v4l2-core/v4l2-ctrls.c5
-rw-r--r--include/uapi/linux/v4l2-controls.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/media/v4l2-core/v4l2-ctrls.c b/drivers/media/v4l2-core/v4l2-ctrls.c
index 48550b0eca2e..55c683254102 100644
--- a/drivers/media/v4l2-core/v4l2-ctrls.c
+++ b/drivers/media/v4l2-core/v4l2-ctrls.c
@@ -869,6 +869,7 @@ const char *v4l2_ctrl_get_name(u32 id)
869 case V4L2_CID_RF_TUNER_IF_GAIN: return "IF Gain"; 869 case V4L2_CID_RF_TUNER_IF_GAIN: return "IF Gain";
870 case V4L2_CID_RF_TUNER_BANDWIDTH_AUTO: return "Bandwidth, Auto"; 870 case V4L2_CID_RF_TUNER_BANDWIDTH_AUTO: return "Bandwidth, Auto";
871 case V4L2_CID_RF_TUNER_BANDWIDTH: return "Bandwidth"; 871 case V4L2_CID_RF_TUNER_BANDWIDTH: return "Bandwidth";
872 case V4L2_CID_RF_TUNER_PLL_LOCK: return "PLL Lock";
872 default: 873 default:
873 return NULL; 874 return NULL;
874 } 875 }
@@ -922,6 +923,7 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type,
922 case V4L2_CID_RF_TUNER_MIXER_GAIN_AUTO: 923 case V4L2_CID_RF_TUNER_MIXER_GAIN_AUTO:
923 case V4L2_CID_RF_TUNER_IF_GAIN_AUTO: 924 case V4L2_CID_RF_TUNER_IF_GAIN_AUTO:
924 case V4L2_CID_RF_TUNER_BANDWIDTH_AUTO: 925 case V4L2_CID_RF_TUNER_BANDWIDTH_AUTO:
926 case V4L2_CID_RF_TUNER_PLL_LOCK:
925 *type = V4L2_CTRL_TYPE_BOOLEAN; 927 *type = V4L2_CTRL_TYPE_BOOLEAN;
926 *min = 0; 928 *min = 0;
927 *max = *step = 1; 929 *max = *step = 1;
@@ -1106,6 +1108,9 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type,
1106 case V4L2_CID_DV_RX_POWER_PRESENT: 1108 case V4L2_CID_DV_RX_POWER_PRESENT:
1107 *flags |= V4L2_CTRL_FLAG_READ_ONLY; 1109 *flags |= V4L2_CTRL_FLAG_READ_ONLY;
1108 break; 1110 break;
1111 case V4L2_CID_RF_TUNER_PLL_LOCK:
1112 *flags |= V4L2_CTRL_FLAG_VOLATILE;
1113 break;
1109 } 1114 }
1110} 1115}
1111EXPORT_SYMBOL(v4l2_ctrl_fill); 1116EXPORT_SYMBOL(v4l2_ctrl_fill);
diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h
index 405279f3c326..2ac5597f3ee1 100644
--- a/include/uapi/linux/v4l2-controls.h
+++ b/include/uapi/linux/v4l2-controls.h
@@ -912,5 +912,6 @@ enum v4l2_deemphasis {
912#define V4L2_CID_RF_TUNER_MIXER_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 52) 912#define V4L2_CID_RF_TUNER_MIXER_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 52)
913#define V4L2_CID_RF_TUNER_IF_GAIN_AUTO (V4L2_CID_RF_TUNER_CLASS_BASE + 61) 913#define V4L2_CID_RF_TUNER_IF_GAIN_AUTO (V4L2_CID_RF_TUNER_CLASS_BASE + 61)
914#define V4L2_CID_RF_TUNER_IF_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 62) 914#define V4L2_CID_RF_TUNER_IF_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 62)
915#define V4L2_CID_RF_TUNER_PLL_LOCK (V4L2_CID_RF_TUNER_CLASS_BASE + 91)
915 916
916#endif 917#endif