Browse Source

V4L/DVB (8111): ivtv/cx18: fix compile error when CONFIG_VIDEO_ADV_DEBUG is not defined.

Thanks to Randy Dunlap for reporting this.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Hans Verkuil 17 years ago
parent
commit
36ecd4955a
2 changed files with 54 additions and 47 deletions
  1. 23 19
      drivers/media/video/cx18/cx18-ioctl.c
  2. 31 28
      drivers/media/video/ivtv/ivtv-ioctl.c

+ 23 - 19
drivers/media/video/cx18/cx18-ioctl.c

@@ -113,25 +113,6 @@ u16 cx18_get_service_set(struct v4l2_sliced_vbi_format *fmt)
 	return set;
 }
 
-static int cx18_cxc(struct cx18 *cx, unsigned int cmd, void *arg)
-{
-	struct v4l2_register *regs = arg;
-	unsigned long flags;
-
-	if (!capable(CAP_SYS_ADMIN))
-		return -EPERM;
-	if (regs->reg >= CX18_MEM_OFFSET + CX18_MEM_SIZE)
-		return -EINVAL;
-
-	spin_lock_irqsave(&cx18_cards_lock, flags);
-	if (cmd == VIDIOC_DBG_G_REGISTER)
-		regs->val = read_enc(regs->reg);
-	else
-		write_enc(regs->val, regs->reg);
-	spin_unlock_irqrestore(&cx18_cards_lock, flags);
-	return 0;
-}
-
 static int cx18_g_fmt_vid_cap(struct file *file, void *fh,
 				struct v4l2_format *fmt)
 {
@@ -292,6 +273,26 @@ static int cx18_g_chip_ident(struct file *file, void *fh,
 	return -EINVAL;
 }
 
+#ifdef CONFIG_VIDEO_ADV_DEBUG
+static int cx18_cxc(struct cx18 *cx, unsigned int cmd, void *arg)
+{
+	struct v4l2_register *regs = arg;
+	unsigned long flags;
+
+	if (!capable(CAP_SYS_ADMIN))
+		return -EPERM;
+	if (regs->reg >= CX18_MEM_OFFSET + CX18_MEM_SIZE)
+		return -EINVAL;
+
+	spin_lock_irqsave(&cx18_cards_lock, flags);
+	if (cmd == VIDIOC_DBG_G_REGISTER)
+		regs->val = read_enc(regs->reg);
+	else
+		write_enc(regs->val, regs->reg);
+	spin_unlock_irqrestore(&cx18_cards_lock, flags);
+	return 0;
+}
+
 static int cx18_g_register(struct file *file, void *fh,
 				struct v4l2_register *reg)
 {
@@ -319,6 +320,7 @@ static int cx18_s_register(struct file *file, void *fh,
 	return cx18_call_i2c_client(cx, reg->match_chip, VIDIOC_DBG_S_REGISTER,
 					reg);
 }
+#endif
 
 static int cx18_g_priority(struct file *file, void *fh, enum v4l2_priority *p)
 {
@@ -810,8 +812,10 @@ void cx18_set_funcs(struct video_device *vdev)
 	vdev->vidioc_try_fmt_sliced_vbi_cap  = cx18_try_fmt_sliced_vbi_cap;
 	vdev->vidioc_g_sliced_vbi_cap        = cx18_g_sliced_vbi_cap;
 	vdev->vidioc_g_chip_ident            = cx18_g_chip_ident;
+#ifdef CONFIG_VIDEO_ADV_DEBUG
 	vdev->vidioc_g_register              = cx18_g_register;
 	vdev->vidioc_s_register              = cx18_s_register;
+#endif
 	vdev->vidioc_default                 = cx18_default;
 	vdev->vidioc_queryctrl               = cx18_queryctrl;
 	vdev->vidioc_querymenu               = cx18_querymenu;

+ 31 - 28
drivers/media/video/ivtv/ivtv-ioctl.c

@@ -314,34 +314,6 @@ static int ivtv_video_command(struct ivtv *itv, struct ivtv_open_id *id,
 	return 0;
 }
 
-static int ivtv_itvc(struct ivtv *itv, unsigned int cmd, void *arg)
-{
-	struct v4l2_register *regs = arg;
-	unsigned long flags;
-	volatile u8 __iomem *reg_start;
-
-	if (!capable(CAP_SYS_ADMIN))
-		return -EPERM;
-	if (regs->reg >= IVTV_REG_OFFSET && regs->reg < IVTV_REG_OFFSET + IVTV_REG_SIZE)
-		reg_start = itv->reg_mem - IVTV_REG_OFFSET;
-	else if (itv->has_cx23415 && regs->reg >= IVTV_DECODER_OFFSET &&
-			regs->reg < IVTV_DECODER_OFFSET + IVTV_DECODER_SIZE)
-		reg_start = itv->dec_mem - IVTV_DECODER_OFFSET;
-	else if (regs->reg >= 0 && regs->reg < IVTV_ENCODER_SIZE)
-		reg_start = itv->enc_mem;
-	else
-		return -EINVAL;
-
-	spin_lock_irqsave(&ivtv_cards_lock, flags);
-	if (cmd == VIDIOC_DBG_G_REGISTER) {
-		regs->val = readl(regs->reg + reg_start);
-	} else {
-		writel(regs->val, regs->reg + reg_start);
-	}
-	spin_unlock_irqrestore(&ivtv_cards_lock, flags);
-	return 0;
-}
-
 static int ivtv_g_fmt_sliced_vbi_out(struct file *file, void *fh, struct v4l2_format *fmt)
 {
 	struct ivtv *itv = ((struct ivtv_open_id *)fh)->itv;
@@ -715,6 +687,34 @@ static int ivtv_g_chip_ident(struct file *file, void *fh, struct v4l2_chip_ident
 	return -EINVAL;
 }
 
+#ifdef CONFIG_VIDEO_ADV_DEBUG
+static int ivtv_itvc(struct ivtv *itv, unsigned int cmd, void *arg)
+{
+	struct v4l2_register *regs = arg;
+	unsigned long flags;
+	u8 __iomem *reg_start;
+
+	if (!capable(CAP_SYS_ADMIN))
+		return -EPERM;
+	if (regs->reg >= IVTV_REG_OFFSET && regs->reg < IVTV_REG_OFFSET + IVTV_REG_SIZE)
+		reg_start = itv->reg_mem - IVTV_REG_OFFSET;
+	else if (itv->has_cx23415 && regs->reg >= IVTV_DECODER_OFFSET &&
+			regs->reg < IVTV_DECODER_OFFSET + IVTV_DECODER_SIZE)
+		reg_start = itv->dec_mem - IVTV_DECODER_OFFSET;
+	else if (regs->reg >= 0 && regs->reg < IVTV_ENCODER_SIZE)
+		reg_start = itv->enc_mem;
+	else
+		return -EINVAL;
+
+	spin_lock_irqsave(&ivtv_cards_lock, flags);
+	if (cmd == VIDIOC_DBG_G_REGISTER)
+		regs->val = readl(regs->reg + reg_start);
+	else
+		writel(regs->val, regs->reg + reg_start);
+	spin_unlock_irqrestore(&ivtv_cards_lock, flags);
+	return 0;
+}
+
 static int ivtv_g_register(struct file *file, void *fh, struct v4l2_register *reg)
 {
 	struct ivtv *itv = ((struct ivtv_open_id *)fh)->itv;
@@ -736,6 +736,7 @@ static int ivtv_s_register(struct file *file, void *fh, struct v4l2_register *re
 		return ivtv_i2c_id(itv, reg->match_chip, VIDIOC_DBG_S_REGISTER, reg);
 	return ivtv_call_i2c_client(itv, reg->match_chip, VIDIOC_DBG_S_REGISTER, reg);
 }
+#endif
 
 static int ivtv_g_priority(struct file *file, void *fh, enum v4l2_priority *p)
 {
@@ -1896,8 +1897,10 @@ void ivtv_set_funcs(struct video_device *vdev)
 	vdev->vidioc_try_fmt_sliced_vbi_out = ivtv_try_fmt_sliced_vbi_out;
 	vdev->vidioc_g_sliced_vbi_cap 	    = ivtv_g_sliced_vbi_cap;
 	vdev->vidioc_g_chip_ident 	    = ivtv_g_chip_ident;
+#ifdef CONFIG_VIDEO_ADV_DEBUG
 	vdev->vidioc_g_register 	    = ivtv_g_register;
 	vdev->vidioc_s_register 	    = ivtv_s_register;
+#endif
 	vdev->vidioc_default 		    = ivtv_default;
 	vdev->vidioc_queryctrl 		    = ivtv_queryctrl;
 	vdev->vidioc_querymenu 		    = ivtv_querymenu;