aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil@xs4all.nl>2007-02-23 19:16:01 -0500
committerMauro Carvalho Chehab <mchehab@infradead.org>2007-03-01 10:09:46 -0500
commitf3502b8a1995aceb2242389aa6dbea1a6756f78b (patch)
treea57fe743b7990e9274835768f08005a580c99f01
parentada6ecd2bf1d97e1f3bac6d5af4c7c4390a0a5af (diff)
V4L/DVB (5305): Mark VIDIOC_DBG_S/G_REGISTER as experimental
Move VIDIOC_DBG_S/G_REGISTER from the internal ioctl list to the public ioctls, but mark it as experimental for now. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
-rw-r--r--drivers/media/video/v4l2-common.c12
-rw-r--r--include/linux/videodev2.h16
2 files changed, 13 insertions, 15 deletions
diff --git a/drivers/media/video/v4l2-common.c b/drivers/media/video/v4l2-common.c
index 57aaed3239d6..54747606eae1 100644
--- a/drivers/media/video/v4l2-common.c
+++ b/drivers/media/video/v4l2-common.c
@@ -376,7 +376,10 @@ static const char *v4l2_ioctls[] = {
376 [_IOC_NR(VIDIOC_ENUM_FRAMEINTERVALS)] = "VIDIOC_ENUM_FRAMEINTERVALS", 376 [_IOC_NR(VIDIOC_ENUM_FRAMEINTERVALS)] = "VIDIOC_ENUM_FRAMEINTERVALS",
377 [_IOC_NR(VIDIOC_G_ENC_INDEX)] = "VIDIOC_G_ENC_INDEX", 377 [_IOC_NR(VIDIOC_G_ENC_INDEX)] = "VIDIOC_G_ENC_INDEX",
378 [_IOC_NR(VIDIOC_ENCODER_CMD)] = "VIDIOC_ENCODER_CMD", 378 [_IOC_NR(VIDIOC_ENCODER_CMD)] = "VIDIOC_ENCODER_CMD",
379 [_IOC_NR(VIDIOC_TRY_ENCODER_CMD)] = "VIDIOC_TRY_ENCODER_CMD" 379 [_IOC_NR(VIDIOC_TRY_ENCODER_CMD)] = "VIDIOC_TRY_ENCODER_CMD",
380
381 [_IOC_NR(VIDIOC_DBG_S_REGISTER)] = "VIDIOC_DBG_S_REGISTER",
382 [_IOC_NR(VIDIOC_DBG_G_REGISTER)] = "VIDIOC_DBG_G_REGISTER",
380#endif 383#endif
381}; 384};
382#define V4L2_IOCTLS ARRAY_SIZE(v4l2_ioctls) 385#define V4L2_IOCTLS ARRAY_SIZE(v4l2_ioctls)
@@ -401,9 +404,6 @@ static const char *v4l2_int_ioctls[] = {
401 [_IOC_NR(TUNER_SET_STANDBY)] = "TUNER_SET_STANDBY", 404 [_IOC_NR(TUNER_SET_STANDBY)] = "TUNER_SET_STANDBY",
402 [_IOC_NR(TDA9887_SET_CONFIG)] = "TDA9887_SET_CONFIG", 405 [_IOC_NR(TDA9887_SET_CONFIG)] = "TDA9887_SET_CONFIG",
403 406
404 [_IOC_NR(VIDIOC_DBG_S_REGISTER)] = "VIDIOC_DBG_S_REGISTER",
405 [_IOC_NR(VIDIOC_DBG_G_REGISTER)] = "VIDIOC_DBG_G_REGISTER",
406
407 [_IOC_NR(VIDIOC_INT_S_TUNER_MODE)] = "VIDIOC_INT_S_TUNER_MODE", 407 [_IOC_NR(VIDIOC_INT_S_TUNER_MODE)] = "VIDIOC_INT_S_TUNER_MODE",
408 [_IOC_NR(VIDIOC_INT_RESET)] = "VIDIOC_INT_RESET", 408 [_IOC_NR(VIDIOC_INT_RESET)] = "VIDIOC_INT_RESET",
409 [_IOC_NR(VIDIOC_INT_AUDIO_CLOCK_FREQ)] = "VIDIOC_INT_AUDIO_CLOCK_FREQ", 409 [_IOC_NR(VIDIOC_INT_AUDIO_CLOCK_FREQ)] = "VIDIOC_INT_AUDIO_CLOCK_FREQ",
@@ -956,8 +956,6 @@ u32 v4l2_ctrl_next(const u32 * const * ctrl_classes, u32 id)
956int v4l2_chip_match_i2c_client(struct i2c_client *c, u32 match_type, u32 match_chip) 956int v4l2_chip_match_i2c_client(struct i2c_client *c, u32 match_type, u32 match_chip)
957{ 957{
958 switch (match_type) { 958 switch (match_type) {
959 case V4L2_CHIP_MATCH_ALWAYS:
960 return 1;
961 case V4L2_CHIP_MATCH_I2C_DRIVER: 959 case V4L2_CHIP_MATCH_I2C_DRIVER:
962 return (c != NULL && c->driver != NULL && c->driver->id == match_chip); 960 return (c != NULL && c->driver != NULL && c->driver->id == match_chip);
963 case V4L2_CHIP_MATCH_I2C_ADDR: 961 case V4L2_CHIP_MATCH_I2C_ADDR:
@@ -970,8 +968,6 @@ int v4l2_chip_match_i2c_client(struct i2c_client *c, u32 match_type, u32 match_c
970int v4l2_chip_match_host(u32 match_type, u32 match_chip) 968int v4l2_chip_match_host(u32 match_type, u32 match_chip)
971{ 969{
972 switch (match_type) { 970 switch (match_type) {
973 case V4L2_CHIP_MATCH_ALWAYS:
974 return 1;
975 case V4L2_CHIP_MATCH_HOST: 971 case V4L2_CHIP_MATCH_HOST:
976 return match_chip == 0; 972 return match_chip == 0;
977 default: 973 default:
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
index 854875869dbd..441b877bf150 100644
--- a/include/linux/videodev2.h
+++ b/include/linux/videodev2.h
@@ -1352,14 +1352,15 @@ struct v4l2_streamparm
1352 1352
1353/* 1353/*
1354 * A D V A N C E D D E B U G G I N G 1354 * A D V A N C E D D E B U G G I N G
1355 *
1356 * NOTE: EXPERIMENTAL API
1355 */ 1357 */
1356 1358
1357/* VIDIOC_DBG_G_REGISTER and VIDIOC_DBG_S_REGISTER */ 1359/* VIDIOC_DBG_G_REGISTER and VIDIOC_DBG_S_REGISTER */
1358 1360
1359#define V4L2_CHIP_MATCH_ALWAYS 0 /* Match always (match_chip is not used) */ 1361#define V4L2_CHIP_MATCH_HOST 0 /* Match against chip ID on host (0 for the host) */
1360#define V4L2_CHIP_MATCH_HOST 1 /* Match against chip ID on host (0 for the host) */ 1362#define V4L2_CHIP_MATCH_I2C_DRIVER 1 /* Match against I2C driver ID */
1361#define V4L2_CHIP_MATCH_I2C_DRIVER 2 /* Match against I2C driver ID */ 1363#define V4L2_CHIP_MATCH_I2C_ADDR 2 /* Match against I2C 7-bit address */
1362#define V4L2_CHIP_MATCH_I2C_ADDR 3 /* Match against I2C 7-bit address */
1363 1364
1364struct v4l2_register { 1365struct v4l2_register {
1365 __u32 match_type; /* Match type */ 1366 __u32 match_type; /* Match type */
@@ -1437,10 +1438,11 @@ struct v4l2_register {
1437#define VIDIOC_G_ENC_INDEX _IOR ('V', 76, struct v4l2_enc_idx) 1438#define VIDIOC_G_ENC_INDEX _IOR ('V', 76, struct v4l2_enc_idx)
1438#define VIDIOC_ENCODER_CMD _IOWR ('V', 77, struct v4l2_encoder_cmd) 1439#define VIDIOC_ENCODER_CMD _IOWR ('V', 77, struct v4l2_encoder_cmd)
1439#define VIDIOC_TRY_ENCODER_CMD _IOWR ('V', 78, struct v4l2_encoder_cmd) 1440#define VIDIOC_TRY_ENCODER_CMD _IOWR ('V', 78, struct v4l2_encoder_cmd)
1441
1442/* Experimental, only implemented if CONFIG_VIDEO_ADV_DEBUG is defined */
1443#define VIDIOC_DBG_S_REGISTER _IOW ('V', 79, struct v4l2_register)
1444#define VIDIOC_DBG_G_REGISTER _IOWR ('V', 80, struct v4l2_register)
1440#endif 1445#endif
1441/* only implemented if CONFIG_VIDEO_ADV_DEBUG is defined */
1442#define VIDIOC_DBG_S_REGISTER _IOW ('d', 100, struct v4l2_register)
1443#define VIDIOC_DBG_G_REGISTER _IOWR('d', 101, struct v4l2_register)
1444 1446
1445#ifdef __OLD_VIDIOC_ 1447#ifdef __OLD_VIDIOC_
1446/* for compatibility, will go away some day */ 1448/* for compatibility, will go away some day */