Skip to contentSkip to conversation

Remove VIDEO_V4L1 Kconfig option

PATCH In review Mauro Carvalho Chehab 2 participants 13 messages Dec 27, 2010 1 message not in the archive

Subsystems (4)
lore
Share & tools
lore
#1 lore raw

PATCH 1/6 Remove VIDEO_V4L1 Kconfig option

In reply to a message not in the archive

There's no sense on keeping VIDEO_V4L1 Kconfig option just because of two deprecated drivers moved to staging scheduled to die on 2.6.39.

drivers/media/Kconfig +0 -14
index 9ea1a6d..147c92b 100644
@@ -40,20 +40,6 @@ config VIDEO_V4L2_COMMON
 	depends on (I2C || I2C=n) && VIDEO_DEV
 	default (I2C || I2C=n) && VIDEO_DEV
 
-config VIDEO_ALLOW_V4L1
-	bool "Enable Video For Linux API 1 (DEPRECATED)"
-	depends on VIDEO_DEV && VIDEO_V4L2_COMMON
-	default VIDEO_DEV && VIDEO_V4L2_COMMON
-	---help---
-	  Enables drivers based on the legacy V4L1 API.
-
-	  This api were developed to be used at Kernel 2.2 and 2.4, but
-	  lacks support for several video standards. There are several
-	  drivers at kernel that still depends on it.
-
-	  If you are unsure as to whether this is required, answer Y.
-
-
 #
 # DVB Core
 #
drivers/media/video/Kconfig +0 -5
index b7b7b59..5116b4d 100644
@@ -7,11 +7,6 @@ config VIDEO_V4L2
 	depends on VIDEO_DEV && VIDEO_V4L2_COMMON
 	default VIDEO_DEV && VIDEO_V4L2_COMMON
 
-config VIDEO_V4L1
-	tristate
-	depends on VIDEO_DEV && VIDEO_V4L2_COMMON && VIDEO_ALLOW_V4L1
-	default VIDEO_DEV && VIDEO_V4L2_COMMON && VIDEO_ALLOW_V4L1
-
 config VIDEOBUF_GEN
 	tristate
 
drivers/staging/se401/Kconfig +1 -1
index 586fc04..ee7313e 100644
@@ -1,6 +1,6 @@
 config USB_SE401
 	tristate "USB SE401 Camera support (DEPRECATED)"
-	depends on VIDEO_V4L1
+	depends on VIDEO_DEV && VIDEO_V4L2_COMMON
 	---help---
 	  Say Y here if you want to connect this type of camera to your
 	  computer's USB port. See <file:Documentation/video4linux/se401.txt>
drivers/staging/usbvideo/Kconfig +1 -1
index aae863e..d9fc867 100644
@@ -3,7 +3,7 @@ config VIDEO_USBVIDEO
 
 config USB_VICAM
 	tristate "USB 3com HomeConnect (aka vicam) support (DEPRECATED)"
-	depends on VIDEO_V4L1 && EXPERIMENTAL
+	depends on VIDEO_DEV && VIDEO_V4L2_COMMON
 	select VIDEO_USBVIDEO
 	---help---
 	  Say Y here if you have 3com homeconnect camera (vicam).
include/linux/videodev.h +0 -4
index 8a7aead..f11efbe 100644
@@ -16,8 +16,6 @@
 #include <linux/ioctl.h>
 #include <linux/videodev2.h>
 
-#if defined(CONFIG_VIDEO_V4L1) || defined(CONFIG_VIDEO_V4L1_MODULE) || !defined(__KERNEL__)
-
 #define VID_TYPE_CAPTURE	1	/* Can capture */
 #define VID_TYPE_TUNER		2	/* Can tune */
 #define VID_TYPE_TELETEXT	4	/* Does teletext */
@@ -311,8 +309,6 @@ struct video_code
 #define VID_PLAY_RESET			13
 #define VID_PLAY_END_MARK		14
 
-#endif /* CONFIG_VIDEO_V4L1 */
-
 #endif /* __LINUX_VIDEODEV_H */
 
 /*
Signature · 1 line
1.7.3.4
#13 lore raw

PATCH 6/6 omap_vout: Remove an obsolete comment

In reply to a message not in the archive

This comment mentions a field that doesn't exist, and talks about videodev.h that got removed. So, it doesn't make any sense to keep it.

drivers/media/video/omap/omap_vout.c +0 -1
index 15f8793..83de97a 100644
@@ -2230,7 +2230,6 @@ static int __init omap_vout_setup_video_data(struct omap_vout_device *vout)
 
 	strlcpy(vfd->name, VOUT_NAME, sizeof(vfd->name));
 
-	/* need to register for a VID_HARDWARE_* ID in videodev.h */
 	vfd->fops = &omap_vout_fops;
 	vfd->v4l2_dev = &vout->vid_dev->v4l2_dev;
 	mutex_init(&vout->lock);
Signature · 1 line
1.7.3.4
#12 lore raw

PATCH 5/6 Remove the old V4L1 v4lgrab.c file

In reply to a message not in the archive

This example file uses the old V4L1 API. It also doesn't use libv4l. So, it is completely obsolete. A good example already exists at v4l-utils (v4l2grab.c):
http://git.linuxtv.org/v4l-utils.git

 delete mode 100644 Documentation/video4linux/v4lgrab.c
Documentation/video4linux/v4lgrab.c deleted +0 -201
deleted file mode 100644
index c8ded17..0000000
@@ -1,201 +0,0 @@
-/* Simple Video4Linux image grabber. */
-/*
- *	Video4Linux Driver Test/Example Framegrabbing Program
- *
- *	Compile with:
- *		gcc -s -Wall -Wstrict-prototypes v4lgrab.c -o v4lgrab
- *	Use as:
- *		v4lgrab >image.ppm
- *
- *	Copyright (C) 1998-05-03, Phil Blundell <[email protected]>
- *	Copied from http://www.tazenda.demon.co.uk/phil/vgrabber.c
- *	with minor modifications (Dave Forrest, [email protected]).
- *
- *
- *	For some cameras you may need to pre-load libv4l to perform
- *	the necessary decompression, e.g.:
- *
- *	export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so
- *	./v4lgrab >image.ppm
- *
- *	see http://hansdegoede.livejournal.com/3636.html for details.
- *
- */
-
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <stdio.h>
-#include <sys/ioctl.h>
-#include <stdlib.h>
-
-#include <linux/types.h>
-#include <linux/videodev.h>
-
-#define VIDEO_DEV "/dev/video0"
-
-/* Stole this from tvset.c */
-
-#define READ_VIDEO_PIXEL(buf, format, depth, r, g, b)                   \
-{                                                                       \
-	switch (format)                                                 \
-	{                                                               \
-		case VIDEO_PALETTE_GREY:                                \
-			switch (depth)                                  \
-			{                                               \
-				case 4:                                 \
-				case 6:                                 \
-				case 8:                                 \
-					(r) = (g) = (b) = (*buf++ << 8);\
-					break;                          \
-									\
-				case 16:                                \
-					(r) = (g) = (b) =               \
-						*((unsigned short *) buf);      \
-					buf += 2;                       \
-					break;                          \
-			}                                               \
-			break;                                          \
-									\
-									\
-		case VIDEO_PALETTE_RGB565:                              \
-		{                                                       \
-			unsigned short tmp = *(unsigned short *)buf;    \
-			(r) = tmp&0xF800;                               \
-			(g) = (tmp<<5)&0xFC00;                          \
-			(b) = (tmp<<11)&0xF800;                         \
-			buf += 2;                                       \
-		}                                                       \
-		break;                                                  \
-									\
-		case VIDEO_PALETTE_RGB555:                              \
-			(r) = (buf[0]&0xF8)<<8;                         \
-			(g) = ((buf[0] << 5 | buf[1] >> 3)&0xF8)<<8;    \
-			(b) = ((buf[1] << 2 ) & 0xF8)<<8;               \
-			buf += 2;                                       \
-			break;                                          \
-									\
-		case VIDEO_PALETTE_RGB24:                               \
-			(r) = buf[0] << 8; (g) = buf[1] << 8;           \
-			(b) = buf[2] << 8;                              \
-			buf += 3;                                       \
-			break;                                          \
-									\
-		default:                                                \
-			fprintf(stderr,                                 \
-				"Format %d not yet supported\n",        \
-				format);                                \
-	}                                                               \
-}
-
-static int get_brightness_adj(unsigned char *image, long size, int *brightness) {
-  long i, tot = 0;
-  for (i=0;i<size*3;i++)
-    tot += image[i];
-  *brightness = (128 - tot/(size*3))/3;
-  return !((tot/(size*3)) >= 126 && (tot/(size*3)) <= 130);
-}
-
-int main(int argc, char ** argv)
-{
-  int fd = open(VIDEO_DEV, O_RDONLY), f;
-  struct video_capability cap;
-  struct video_window win;
-  struct video_picture vpic;
-
-  unsigned char *buffer, *src;
-  int bpp = 24, r = 0, g = 0, b = 0;
-  unsigned int i, src_depth = 16;
-
-  if (fd < 0) {
-    perror(VIDEO_DEV);
-    exit(1);
-  }
-
-  if (ioctl(fd, VIDIOCGCAP, &cap) < 0) {
-    perror("VIDIOGCAP");
-    fprintf(stderr, "(" VIDEO_DEV " not a video4linux device?)\n");
-    close(fd);
-    exit(1);
-  }
-
-  if (ioctl(fd, VIDIOCGWIN, &win) < 0) {
-    perror("VIDIOCGWIN");
-    close(fd);
-    exit(1);
-  }
-
-  if (ioctl(fd, VIDIOCGPICT, &vpic) < 0) {
-    perror("VIDIOCGPICT");
-    close(fd);
-    exit(1);
-  }
-
-  if (cap.type & VID_TYPE_MONOCHROME) {
-    vpic.depth=8;
-    vpic.palette=VIDEO_PALETTE_GREY;    /* 8bit grey */
-    if(ioctl(fd, VIDIOCSPICT, &vpic) < 0) {
-      vpic.depth=6;
-      if(ioctl(fd, VIDIOCSPICT, &vpic) < 0) {
-	vpic.depth=4;
-	if(ioctl(fd, VIDIOCSPICT, &vpic) < 0) {
-	  fprintf(stderr, "Unable to find a supported capture format.\n");
-	  close(fd);
-	  exit(1);
-	}
-      }
-    }
-  } else {
-    vpic.depth=24;
-    vpic.palette=VIDEO_PALETTE_RGB24;
-
-    if(ioctl(fd, VIDIOCSPICT, &vpic) < 0) {
-      vpic.palette=VIDEO_PALETTE_RGB565;
-      vpic.depth=16;
-
-      if(ioctl(fd, VIDIOCSPICT, &vpic)==-1) {
-	vpic.palette=VIDEO_PALETTE_RGB555;
-	vpic.depth=15;
-
-	if(ioctl(fd, VIDIOCSPICT, &vpic)==-1) {
-	  fprintf(stderr, "Unable to find a supported capture format.\n");
-	  return -1;
-	}
-      }
-    }
-  }
-
-  buffer = malloc(win.width * win.height * bpp);
-  if (!buffer) {
-    fprintf(stderr, "Out of memory.\n");
-    exit(1);
-  }
-
-  do {
-    int newbright;
-    read(fd, buffer, win.width * win.height * bpp);
-    f = get_brightness_adj(buffer, win.width * win.height, &newbright);
-    if (f) {
-      vpic.brightness += (newbright << 8);
-      if(ioctl(fd, VIDIOCSPICT, &vpic)==-1) {
-	perror("VIDIOSPICT");
-	break;
-      }
-    }
-  } while (f);
-
-  fprintf(stdout, "P6\n%d %d 255\n", win.width, win.height);
-
-  src = buffer;
-
-  for (i = 0; i < win.width * win.height; i++) {
-    READ_VIDEO_PIXEL(src, vpic.palette, src_depth, r, g, b);
-    fputc(r>>8, stdout);
-    fputc(g>>8, stdout);
-    fputc(b>>8, stdout);
-  }
-
-  close(fd);
-  return 0;
-}
Signature · 1 line
1.7.3.4
#11 lore raw

PATCH 4/6 Fix videodev.h references at the V4L DocBook

In reply to a message not in the archive
Documentation/DocBook/v4l/func-ioctl.xml +2 -3
index 00f9690..b60fd37 100644
@@ -34,8 +34,7 @@
       <varlistentry>
 	<term><parameter>request</parameter></term>
 	<listitem>
-	  <para>V4L2 ioctl request code as defined in the <link
-linkend="videodev">videodev.h</link> header file, for example
+	  <para>V4L2 ioctl request code as defined in the <filename>videodev2.h</filename> header file, for example
 VIDIOC_QUERYCAP.</para>
 	</listitem>
       </varlistentry>
@@ -57,7 +56,7 @@ file descriptor. An ioctl <parameter>request</parameter> has encoded
 in it whether the argument is an input, output or read/write
 parameter, and the size of the argument <parameter>argp</parameter> in
 bytes. Macros and defines specifying V4L2 ioctl requests are located
-in the <link linkend="videodev">videodev.h</link> header file.
+in the <filename>videodev2.h</filename> header file.
 Applications should use their own copy, not include the version in the
 kernel sources on the system they compile on. All V4L2 ioctl requests,
 their respective function and parameters are specified in <xref
Documentation/DocBook/v4l/pixfmt.xml +2 -2
index d7c4671..cfffc88 100644
@@ -142,8 +142,8 @@ leftmost pixel of the second row from the top, and so on. The last row
 has just as many pad bytes after it as the other rows.</para>
 
     <para>In V4L2 each format has an identifier which looks like
-<constant>PIX_FMT_XXX</constant>, defined in the <link
-linkend="videodev">videodev.h</link> header file. These identifiers
+<constant>PIX_FMT_XXX</constant>, defined in the <filename>videodev2.h</filename>
+header file. These identifiers
 represent <link linkend="v4l2-fourcc">four character codes</link>
 which are also listed below, however they are not the same as those
 used in the Windows world.</para>
Signature · 1 line
1.7.3.4
#3 lore raw

PATCH 3/6 Documentation/ioctl/ioctl-number.txt: Remove some now freed ioctl ranges

In reply to a message not in the archive

The V4L1 removal patches removed a few ioctls. Update it at the docspace.

Documentation/ioctl/ioctl-number.txt +0 -3
index 63ffd78..49d7f00 100644
@@ -260,14 +260,11 @@ Code  Seq#(hex)	Include File		Comments
 't'	80-8F	linux/isdn_ppp.h
 't'	90	linux/toshiba.h
 'u'	00-1F	linux/smb_fs.h		gone
-'v'	all	linux/videodev.h	conflict!
 'v'	00-1F	linux/ext2_fs.h		conflict!
 'v'	00-1F	linux/fs.h		conflict!
 'v'	00-0F	linux/sonypi.h		conflict!
-'v'	C0-CF	drivers/media/video/ov511.h	conflict!
 'v'	C0-DF	media/pwc-ioctl.h	conflict!
 'v'	C0-FF	linux/meye.h		conflict!
-'v'	C0-CF	drivers/media/video/zoran/zoran.h	conflict!
 'v'	D0-DF	drivers/media/video/cpia2/cpia2dev.h	conflict!
 'w'	all				CERN SCI driver
 'y'	00-1F				packet based user level communications
Signature · 1 line
1.7.3.4
#2 lore raw

PATCH 2/6 V4L1 removal: Remove linux/videodev.h

In reply to a message not in the archive

There's no sense on keeping it on 2.6.38, as nobody is using it anymore, at the kernel tree, and installing it at the userspace API.

As two deprecated drivers still need it, move it to their internal directories.

 create mode 100644 drivers/staging/se401/videodev.h
 create mode 100644 drivers/staging/usbvideo/videodev.h
 delete mode 100644 include/linux/videodev.h
 delete mode 100644 include/media/ovcamchip.h
Documentation/feature-removal-schedule.txt +0 -17
index d66ed2b..e348b7e 100644
@@ -97,23 +97,6 @@ Who:	Pavel Machek <[email protected]>
 
 ---------------------------
 
-What:	Video4Linux API 1 ioctls and from Video devices.
-When:	kernel 2.6.39
-Files:	include/linux/videodev.h
-Check:	include/linux/videodev.h
-Why:	V4L1 AP1 was replaced by V4L2 API during migration from 2.4 to 2.6
-	series. The old API have lots of drawbacks and don't provide enough
-	means to work with all video and audio standards. The newer API is
-	already available on the main drivers and should be used instead.
-
-	The userspace libv4l1 library can convert V4L1 calls to V4L2. This
-	replaces the kernel V4L1 compatibility module which was removed in
-	2.6.38. The last V4L1 drivers will either be converted to V4L2 or
-	removed for 2.6.39 at which point the V4L1 API will cease to exist.
-Who:	Mauro Carvalho Chehab <[email protected]>
-
----------------------------
-
 What:	Video4Linux obsolete drivers using V4L1 API
 When:	kernel 2.6.39
 Files:	drivers/staging/se401/* drivers/staging/usbvideo/*
drivers/media/video/v4l2-compat-ioctl32.c +0 -1
index 8ac89ad..38c4b3c 100644
@@ -15,7 +15,6 @@
 
 #include <linux/compat.h>
 #define __OLD_VIDIOC_ /* To allow fixing old calls*/
-#include <linux/videodev.h>
 #include <linux/videodev2.h>
 #include <linux/module.h>
 #include <linux/smp_lock.h>
drivers/staging/se401/se401.h +1 -1
index bf7d2e9..2758f47 100644
@@ -3,7 +3,7 @@
 #define __LINUX_se401_H
 
 #include <linux/uaccess.h>
-#include <linux/videodev.h>
+#include "videodev.h"
 #include <media/v4l2-common.h>
 #include <media/v4l2-ioctl.h>
 #include <linux/mutex.h>
drivers/staging/se401/videodev.h new file +318 -0

318 lines not on this page · raw message

drivers/staging/usbvideo/usbvideo.h +1 -1
index c66985b..95638a0 100644
@@ -16,7 +16,7 @@
 #ifndef usbvideo_h
 #define	usbvideo_h
 
-#include <linux/videodev.h>
+#include "videodev.h"
 #include <media/v4l2-common.h>
 #include <media/v4l2-ioctl.h>
 #include <linux/usb.h>
drivers/staging/usbvideo/vicam.c +1 -1
index dc17cce..ecdb121 100644
@@ -38,7 +38,7 @@
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/init.h>
-#include <linux/videodev.h>
+#include "videodev.h"
 #include <linux/usb.h>
 #include <linux/vmalloc.h>
 #include <linux/mm.h>
drivers/staging/usbvideo/videodev.h new file +318 -0

318 lines not on this page · raw message

fs/compat_ioctl.c +1 -1
index 410ed18..3af13c2 100644
@@ -43,7 +43,7 @@
 #include <linux/tty.h>
 #include <linux/vt_kern.h>
 #include <linux/fb.h>
-#include <linux/videodev.h>
+#include <linux/videodev2.h>
 #include <linux/netdevice.h>
 #include <linux/raw.h>
 #include <linux/blkdev.h>
include/linux/Kbuild +0 -1
index 97319a8..a354c19 100644
@@ -367,7 +367,6 @@ header-y += utime.h
 header-y += utsname.h
 header-y += veth.h
 header-y += vhost.h
-header-y += videodev.h
 header-y += videodev2.h
 header-y += virtio_9p.h
 header-y += virtio_balloon.h
include/linux/videodev.h deleted +0 -318

318 lines not on this page · raw message

include/media/ovcamchip.h deleted +0 -90

90 lines not on this page · raw message

Signature · 1 line
1.7.3.4
Reviewed-by on v1 3/6
#4 lore raw

Re: [PATCH 3/6] Documentation/ioctl/ioctl-number.txt: Remove some now freed ioctl ranges

In reply to Mauro Carvalho Chehab
Quoted 14 lines · On Monday, December 27, 2010 12:38:39 Mauro Carvalho Chehab wrote:

The V4L1 removal patches removed a few ioctls. Update it at the docspace.

Documentation/ioctl/ioctl-number.txt +0 -1
index 63ffd78..49d7f00 100644
@@ -260,14 +260,11 @@ Code  Seq#(hex)	Include File		Comments
 't'	80-8F	linux/isdn_ppp.h
 't'	90	linux/toshiba.h
 'u'	00-1F	linux/smb_fs.h		gone
-'v'	all	linux/videodev.h	conflict!

Documentation/ioctl/ioctl-number.txt Code Seq#(hex) Include File Comments · line 270

Quoted 10 lines
Documentation/ioctl/ioctl-number.txt +0 -2
 'v'	00-1F	linux/ext2_fs.h		conflict!
 'v'	00-1F	linux/fs.h		conflict!
 'v'	00-0F	linux/sonypi.h		conflict!
-'v'	C0-CF	drivers/media/video/ov511.h	conflict!
 'v'	C0-DF	media/pwc-ioctl.h	conflict!
 'v'	C0-FF	linux/meye.h		conflict!
-'v'	C0-CF	drivers/media/video/zoran/zoran.h	conflict!
 'v'	D0-DF	drivers/media/video/cpia2/cpia2dev.h	conflict!
 'w'	all				CERN SCI driver
 'y'	00-1F				packet based user level communications

There is also a line for media/ovcamchip.h in this file that can be removed. The media/rds.h line can also be removed (this is kernel internal only). Ditto for media/bt819.h.

All other patches in this series:

BTW, it is probably also a good idea to move the dabusb driver to staging and mark it for removal in 2.6.39.

Regards,

Hans

Signature · 1 line
Hans Verkuil - video4linux developer - sponsored by Cisco
#5 lore raw

Re: [PATCH 3/6] Documentation/ioctl/ioctl-number.txt: Remove some now freed ioctl ranges

Em 27-12-2010 10:01, Hans Verkuil escreveu:

Quoted 19 lines · On Monday, December 27, 2010 12:38:39 Mauro Carvalho Chehab wrote:
Quoted 18 lines

The V4L1 removal patches removed a few ioctls. Update it at the docspace.

Documentation/ioctl/ioctl-number.txt +0 -2
index 63ffd78..49d7f00 100644
@@ -260,14 +260,11 @@ Code  Seq#(hex)	Include File		Comments
 't'	80-8F	linux/isdn_ppp.h
 't'	90	linux/toshiba.h
 'u'	00-1F	linux/smb_fs.h		gone
-'v'	all	linux/videodev.h	conflict!
 'v'	00-1F	linux/ext2_fs.h		conflict!
 'v'	00-1F	linux/fs.h		conflict!
 'v'	00-0F	linux/sonypi.h		conflict!
-'v'	C0-CF	drivers/media/video/ov511.h	conflict!
 'v'	C0-DF	media/pwc-ioctl.h	conflict!
Quoted 8 lines

Documentation/ioctl/ioctl-number.txt Code Seq#(hex) Include File Comments · line 270

Quoted 6 lines
Documentation/ioctl/ioctl-number.txt +0 -1
 'v'	C0-FF	linux/meye.h		conflict!
-'v'	C0-CF	drivers/media/video/zoran/zoran.h	conflict!
 'v'	D0-DF	drivers/media/video/cpia2/cpia2dev.h	conflict!
 'w'	all				CERN SCI driver
 'y'	00-1F				packet based user level communications

There is also a line for media/ovcamchip.h in this file that can be removed.

Ok, I'll do that.

Quoted 1 line

The media/rds.h line can also be removed (this is kernel internal only).

There are two rds.h, related to V4L:
./include/linux/rds.h
./include/media/rds.h

One of them is at the public api:

include/linux/Kbuild:header-y += rds.h

Btw, that's weird:

$ git grep RDS_CMD_OPEN
drivers/media/video/saa6588.c:    case RDS_CMD_OPEN:
include/media/rds.h:#define RDS_CMD_OPEN  _IOW('R',1,int)

as saa6588 is a subdev.

IMO, we should remove or rename the internal header first.

Quoted 1 line

Ditto for media/bt819.h.

There are also some issues there related to videodev2 stuff.

I prefer to apply the path as-is (just removing the ovcamchip.h) and, on some later cleanup, check and fix the remaining stuff.

Quoted 4 lines

All other patches in this series:

Thanks!

Quoted 3 lines

BTW, it is probably also a good idea to move the dabusb driver to staging and mark it for removal in 2.6.39.

Not sure about that. I don't see any good reason to remove dabusb driver, as nobody reported that it is broken.

Quoted 5 lines

Regards,

Hans

#10 lore raw

Re: [PATCH 3/6] Documentation/ioctl/ioctl-number.txt: Remove some now freed ioctl ranges

In reply to Hans Verkuil

Em 27-12-2010 10:01, Hans Verkuil escreveu:

Quoted 5 lines · On Monday, December 27, 2010 12:38:39 Mauro Carvalho Chehab wrote:
Quoted 4 lines

The V4L1 removal patches removed a few ioctls. Update it at the docspace.

Reviewed version, removing also ovcamchip.h.

Cheers,
Mauro

commit 49962bb3d96c7b174198dc6fe7103426512ac2aa

Author: Mauro Carvalho Chehab <[email protected]>
Date:   Mon Dec 27 09:13:12 2010 -0200

Documentation/ioctl/ioctl-number.txt: Remove some now freed ioctl ranges

The V4L1 removal patches removed a few ioctls. Update it at the docspace.

Documentation/ioctl/ioctl-number.txt +0 -4
index 63ffd78..b2400d7 100644
@@ -260,14 +260,11 @@ Code  Seq#(hex)	Include File		Comments
 't'	80-8F	linux/isdn_ppp.h
 't'	90	linux/toshiba.h
 'u'	00-1F	linux/smb_fs.h		gone
-'v'	all	linux/videodev.h	conflict!
 'v'	00-1F	linux/ext2_fs.h		conflict!
 'v'	00-1F	linux/fs.h		conflict!
 'v'	00-0F	linux/sonypi.h		conflict!
-'v'	C0-CF	drivers/media/video/ov511.h	conflict!
 'v'	C0-DF	media/pwc-ioctl.h	conflict!
 'v'	C0-FF	linux/meye.h		conflict!
-'v'	C0-CF	drivers/media/video/zoran/zoran.h	conflict!
 'v'	D0-DF	drivers/media/video/cpia2/cpia2dev.h	conflict!
 'w'	all				CERN SCI driver
 'y'	00-1F				packet based user level communications
@@ -278,7 +275,6 @@ Code  Seq#(hex)	Include File		Comments
 					<mailto:[email protected]>
 'z'	10-4F	drivers/s390/crypto/zcrypt_api.h	conflict!
 0x80	00-1F	linux/fb.h
-0x88	00-3F	media/ovcamchip.h
 0x89	00-06	arch/x86/include/asm/sockios.h
 0x89	0B-DF	linux/sockios.h
 0x89	E0-EF	linux/sockios.h		SIOCPROTOPRIVATE range
#6 lore raw

Re: [PATCH 3/6] Documentation/ioctl/ioctl-number.txt: Remove some now freed ioctl ranges

In reply to Mauro Carvalho Chehab
Quoted 29 lines · On Monday, December 27, 2010 14:03:03 Mauro Carvalho Chehab wrote:

Em 27-12-2010 10:01, Hans Verkuil escreveu:

Quoted 19 lines · On Monday, December 27, 2010 12:38:39 Mauro Carvalho Chehab wrote:
Quoted 18 lines

The V4L1 removal patches removed a few ioctls. Update it at the docspace.

Documentation/ioctl/ioctl-number.txt +0 -2
index 63ffd78..49d7f00 100644
@@ -260,14 +260,11 @@ Code  Seq#(hex)	Include File		Comments
 't'	80-8F	linux/isdn_ppp.h
 't'	90	linux/toshiba.h
 'u'	00-1F	linux/smb_fs.h		gone
-'v'	all	linux/videodev.h	conflict!
 'v'	00-1F	linux/ext2_fs.h		conflict!
 'v'	00-1F	linux/fs.h		conflict!
 'v'	00-0F	linux/sonypi.h		conflict!
-'v'	C0-CF	drivers/media/video/ov511.h	conflict!
 'v'	C0-DF	media/pwc-ioctl.h	conflict!
Quoted 8 lines

Documentation/ioctl/ioctl-number.txt Code Seq#(hex) Include File Comments · line 270

Quoted 6 lines
Documentation/ioctl/ioctl-number.txt +0 -1
 'v'	C0-FF	linux/meye.h		conflict!
-'v'	C0-CF	drivers/media/video/zoran/zoran.h	conflict!
 'v'	D0-DF	drivers/media/video/cpia2/cpia2dev.h	conflict!
 'w'	all				CERN SCI driver
 'y'	00-1F				packet based user level communications

There is also a line for media/ovcamchip.h in this file that can be removed.

Quoted 6 lines

Ok, I'll do that.

Quoted 1 line

The media/rds.h line can also be removed (this is kernel internal only).

There are two rds.h, related to V4L:
./include/linux/rds.h

Not related to V4L, this is something from Oracle. It is this header that is public, not the media/rds.h header.

Quoted 8 lines

./include/media/rds.h

One of them is at the public api:

include/linux/Kbuild:header-y += rds.h

Btw, that's weird:

Quoted 7 lines
$ git grep RDS_CMD_OPEN
drivers/media/video/saa6588.c:    case RDS_CMD_OPEN:
include/media/rds.h:#define RDS_CMD_OPEN  _IOW('R',1,int)

as saa6588 is a subdev.

IMO, we should remove or rename the internal header first.

media/rds.h should be renamed to media/saa6588.h. It is also included in drivers/media/radio/si470x/radio-si470x.h, but that's obsolete and can be removed.

Quoted 6 lines
Quoted 1 line

Ditto for media/bt819.h.

There are also some issues there related to videodev2 stuff.

I prefer to apply the path as-is (just removing the ovcamchip.h) and, on some later cleanup, check and fix the remaining stuff.

I can make a patch fixing the rds.h header usage. It's all internal stuff and the weird naming is just historical and should be changed.

Quoted 5 lines
Quoted 4 lines

All other patches in this series:

Quoted 7 lines

Thanks!

Quoted 3 lines

BTW, it is probably also a good idea to move the dabusb driver to staging and mark it for removal in 2.6.39.

Not sure about that. I don't see any good reason to remove dabusb driver, as nobody reported that it is broken.

Nobody has the hardware :-)

I know you have asked the authors about a possible removal of this driver a few months ago. Did you get any reply from them?

It seems to be a demonstration driver only and I've never seen anyone with the hardware.

Regards,

Hans

Quoted 11 lines
Quoted 5 lines

Regards,

Hans

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

Signature · 1 line
Hans Verkuil - video4linux developer - sponsored by Cisco
#7 lore raw

Re: [PATCH 3/6] Documentation/ioctl/ioctl-number.txt: Remove some now freed ioctl ranges

Em 27-12-2010 11:23, Hans Verkuil escreveu:

Quoted 32 lines · On Monday, December 27, 2010 14:03:03 Mauro Carvalho Chehab wrote:
Quoted 31 lines

Em 27-12-2010 10:01, Hans Verkuil escreveu:

Quoted 19 lines · On Monday, December 27, 2010 12:38:39 Mauro Carvalho Chehab wrote:
Quoted 18 lines

The V4L1 removal patches removed a few ioctls. Update it at the docspace.

Documentation/ioctl/ioctl-number.txt +0 -2
index 63ffd78..49d7f00 100644
@@ -260,14 +260,11 @@ Code  Seq#(hex)	Include File		Comments
 't'	80-8F	linux/isdn_ppp.h
 't'	90	linux/toshiba.h
 'u'	00-1F	linux/smb_fs.h		gone
-'v'	all	linux/videodev.h	conflict!
 'v'	00-1F	linux/ext2_fs.h		conflict!
 'v'	00-1F	linux/fs.h		conflict!
 'v'	00-0F	linux/sonypi.h		conflict!
-'v'	C0-CF	drivers/media/video/ov511.h	conflict!
 'v'	C0-DF	media/pwc-ioctl.h	conflict!
Quoted 8 lines

Documentation/ioctl/ioctl-number.txt Code Seq#(hex) Include File Comments · line 270

Quoted 6 lines
Documentation/ioctl/ioctl-number.txt +0 -1
 'v'	C0-FF	linux/meye.h		conflict!
-'v'	C0-CF	drivers/media/video/zoran/zoran.h	conflict!
 'v'	D0-DF	drivers/media/video/cpia2/cpia2dev.h	conflict!
 'w'	all				CERN SCI driver
 'y'	00-1F				packet based user level communications

There is also a line for media/ovcamchip.h in this file that can be removed.

Ok, I'll do that.

Quoted 7 lines
Quoted 4 lines
Quoted 1 line

The media/rds.h line can also be removed (this is kernel internal only).

There are two rds.h, related to V4L:
./include/linux/rds.h

Not related to V4L, this is something from Oracle. It is this header that is public, not the media/rds.h header.

Ah, ok.

Quoted 12 lines
Quoted 12 lines

./include/media/rds.h

One of them is at the public api:

include/linux/Kbuild:header-y += rds.h

Btw, that's weird:

$ git grep RDS_CMD_OPEN
drivers/media/video/saa6588.c:    case RDS_CMD_OPEN:
include/media/rds.h:#define RDS_CMD_OPEN  _IOW('R',1,int)
Quoted 7 lines
Quoted 3 lines

as saa6588 is a subdev.

IMO, we should remove or rename the internal header first.

media/rds.h should be renamed to media/saa6588.h. It is also included in drivers/media/radio/si470x/radio-si470x.h, but that's obsolete and can be removed.

The rds file were the old RDS API, before we add it at V4L2. We should, instead, convert saa6588 to use the new way, and remove the legacy stuff.

Quoted 9 lines
Quoted 6 lines
Quoted 1 line

Ditto for media/bt819.h.

There are also some issues there related to videodev2 stuff.

I prefer to apply the path as-is (just removing the ovcamchip.h) and, on some later cleanup, check and fix the remaining stuff.

I can make a patch fixing the rds.h header usage. It's all internal stuff and the weird naming is just historical and should be changed.

It would be nice if you can do it.

Quoted 7 lines
Quoted 7 lines
Quoted 4 lines

All other patches in this series:

Thanks!

Quoted 1 line
Quoted 7 lines
Quoted 5 lines
Quoted 2 lines

BTW, it is probably also a good idea to move the dabusb driver to staging and mark it for removal in 2.6.39.

Not sure about that. I don't see any good reason to remove dabusb driver, as nobody reported that it is broken.

Nobody has the hardware :-)

This is too strong :) Are you absolutely sure that there's absolutely nobody in the World with that hardware? ;)

Quoted 3 lines

I know you have asked the authors about a possible removal of this driver a few months ago. Did you get any reply from them?

Nope.

Quoted 2 lines

It seems to be a demonstration driver only and I've never seen anyone with the hardware.

It seems so, but I can't see any technical reason for its removal. The BKL fix were applied on it, as someone wrote a patch for it.

Cheers,
Mauro

#8 lore raw

Re: [PATCH 3/6] Documentation/ioctl/ioctl-number.txt: Remove some now freed ioctl ranges

Quoted 57 lines · On Monday, December 27, 2010 15:02:05 Mauro Carvalho Chehab wrote:

Em 27-12-2010 11:23, Hans Verkuil escreveu:

Quoted 32 lines · On Monday, December 27, 2010 14:03:03 Mauro Carvalho Chehab wrote:
Quoted 31 lines

Em 27-12-2010 10:01, Hans Verkuil escreveu:

Quoted 19 lines · On Monday, December 27, 2010 12:38:39 Mauro Carvalho Chehab wrote:
Quoted 18 lines

The V4L1 removal patches removed a few ioctls. Update it at the docspace.

Documentation/ioctl/ioctl-number.txt +0 -2
index 63ffd78..49d7f00 100644
@@ -260,14 +260,11 @@ Code  Seq#(hex)	Include File		Comments
 't'	80-8F	linux/isdn_ppp.h
 't'	90	linux/toshiba.h
 'u'	00-1F	linux/smb_fs.h		gone
-'v'	all	linux/videodev.h	conflict!
 'v'	00-1F	linux/ext2_fs.h		conflict!
 'v'	00-1F	linux/fs.h		conflict!
 'v'	00-0F	linux/sonypi.h		conflict!
-'v'	C0-CF	drivers/media/video/ov511.h	conflict!
 'v'	C0-DF	media/pwc-ioctl.h	conflict!
Quoted 8 lines

Documentation/ioctl/ioctl-number.txt Code Seq#(hex) Include File Comments · line 270

Quoted 6 lines
Documentation/ioctl/ioctl-number.txt +0 -1
 'v'	C0-FF	linux/meye.h		conflict!
-'v'	C0-CF	drivers/media/video/zoran/zoran.h	conflict!
 'v'	D0-DF	drivers/media/video/cpia2/cpia2dev.h	conflict!
 'w'	all				CERN SCI driver
 'y'	00-1F				packet based user level communications

There is also a line for media/ovcamchip.h in this file that can be removed.

Ok, I'll do that.

Quoted 7 lines
Quoted 4 lines
Quoted 1 line

The media/rds.h line can also be removed (this is kernel internal only).

There are two rds.h, related to V4L:
./include/linux/rds.h

Not related to V4L, this is something from Oracle. It is this header that is public, not the media/rds.h header.

Ah, ok.

Quoted 14 lines
Quoted 14 lines

./include/media/rds.h

One of them is at the public api:

include/linux/Kbuild:header-y += rds.h

Btw, that's weird:

$ git grep RDS_CMD_OPEN
drivers/media/video/saa6588.c:    case RDS_CMD_OPEN:
include/media/rds.h:#define RDS_CMD_OPEN  _IOW('R',1,int)

as saa6588 is a subdev.

Quoted 8 lines
Quoted 5 lines
Quoted 1 line

IMO, we should remove or rename the internal header first.

media/rds.h should be renamed to media/saa6588.h. It is also included in drivers/media/radio/si470x/radio-si470x.h, but that's obsolete and can be removed.

The rds file were the old RDS API, before we add it at V4L2. We should, instead, convert saa6588 to use the new way, and remove the legacy stuff.

No, this was never the RDS API. It is the saa6588 kernel-internal API. There is nothing wrong with it, except for the fact that the name suggests that this is a generic RDS API, when in fact it is saa6588 specific.

Quoted 11 lines
Quoted 9 lines
Quoted 6 lines
Quoted 1 line

Ditto for media/bt819.h.

There are also some issues there related to videodev2 stuff.

I prefer to apply the path as-is (just removing the ovcamchip.h) and, on some later cleanup, check and fix the remaining stuff.

I can make a patch fixing the rds.h header usage. It's all internal stuff and the weird naming is just historical and should be changed.

It would be nice if you can do it.

Will do.

Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 5 lines

All other patches in this series:

Thanks!

Quoted 3 lines

BTW, it is probably also a good idea to move the dabusb driver to staging and mark it for removal in 2.6.39.

Quoted 7 lines
Quoted 4 lines
Quoted 2 lines

Not sure about that. I don't see any good reason to remove dabusb driver, as nobody reported that it is broken.

Nobody has the hardware :-)

This is too strong :) Are you absolutely sure that there's absolutely nobody in the World with that hardware? ;)

I did some digging and found out the following:

The hardware in question was only an engineering sample which was later licensed to Terratec for their 'Dr Box 1' product.

See:

http://www.baycom.de/wiki/index.php/Products::dabusbhw
http://www.baycom.de/wiki/index.php/Products::dabusb

The authors of the driver seemed to have developed the driver a bit more. The latest source I've been able to find it here:

http://www.baycom.de/download/dabusb/beta/dabusb-linux-i386.tgz

The driver in the kernel only supports the engineering samples. The newer driver on baycom.de also supports the Terratec product (which is no longer sold either).

Quoted 4 lines
Quoted 2 lines

I know you have asked the authors about a possible removal of this driver a few months ago. Did you get any reply from them?

Nope.

You should try again, but use their baycom email:

http://www.baycom.de/wiki/index.php/Contact

Quoted 5 lines
Quoted 2 lines

It seems to be a demonstration driver only and I've never seen anyone with the hardware.

It seems so, but I can't see any technical reason for its removal. The BKL fix were applied on it, as someone wrote a patch for it.

There are a few reasons why I would like to remove this driver:

1) The driver is for an engineering sample only which was never sold as a commercial product.
2) The DAB API is completely undocumented and was never reviewed. Should other DAB drivers ever appear, then I'd rather start from scratch defining an API then continue this dubious API.

Perhaps baycom themselves might even be interested in working with us to design something better.

Regards,

Hans

Signature · 1 line
Hans Verkuil - video4linux developer - sponsored by Cisco
#9 lore raw

Re: [PATCH 3/6] Documentation/ioctl/ioctl-number.txt: Remove some now freed ioctl ranges

Em 27-12-2010 13:08, Hans Verkuil escreveu:

Quoted 139 lines · On Monday, December 27, 2010 15:02:05 Mauro Carvalho Chehab wrote:
Quoted 57 lines

Em 27-12-2010 11:23, Hans Verkuil escreveu:

Quoted 32 lines · On Monday, December 27, 2010 14:03:03 Mauro Carvalho Chehab wrote:
Quoted 31 lines

Em 27-12-2010 10:01, Hans Verkuil escreveu:

Quoted 19 lines · On Monday, December 27, 2010 12:38:39 Mauro Carvalho Chehab wrote:
Quoted 18 lines

The V4L1 removal patches removed a few ioctls. Update it at the docspace.

Documentation/ioctl/ioctl-number.txt +0 -2
index 63ffd78..49d7f00 100644
@@ -260,14 +260,11 @@ Code  Seq#(hex)	Include File		Comments
 't'	80-8F	linux/isdn_ppp.h
 't'	90	linux/toshiba.h
 'u'	00-1F	linux/smb_fs.h		gone
-'v'	all	linux/videodev.h	conflict!
 'v'	00-1F	linux/ext2_fs.h		conflict!
 'v'	00-1F	linux/fs.h		conflict!
 'v'	00-0F	linux/sonypi.h		conflict!
-'v'	C0-CF	drivers/media/video/ov511.h	conflict!
 'v'	C0-DF	media/pwc-ioctl.h	conflict!
Quoted 8 lines

Documentation/ioctl/ioctl-number.txt Code Seq#(hex) Include File Comments · line 270

Quoted 6 lines
Documentation/ioctl/ioctl-number.txt +0 -1
 'v'	C0-FF	linux/meye.h		conflict!
-'v'	C0-CF	drivers/media/video/zoran/zoran.h	conflict!
 'v'	D0-DF	drivers/media/video/cpia2/cpia2dev.h	conflict!
 'w'	all				CERN SCI driver
 'y'	00-1F				packet based user level communications

There is also a line for media/ovcamchip.h in this file that can be removed.

Ok, I'll do that.

Quoted 7 lines
Quoted 4 lines
Quoted 1 line

The media/rds.h line can also be removed (this is kernel internal only).

There are two rds.h, related to V4L:
./include/linux/rds.h

Not related to V4L, this is something from Oracle. It is this header that is public, not the media/rds.h header.

Ah, ok.

Quoted 14 lines
Quoted 14 lines

./include/media/rds.h

One of them is at the public api:

include/linux/Kbuild:header-y += rds.h

Btw, that's weird:

$ git grep RDS_CMD_OPEN
drivers/media/video/saa6588.c:    case RDS_CMD_OPEN:
include/media/rds.h:#define RDS_CMD_OPEN  _IOW('R',1,int)

as saa6588 is a subdev.

Quoted 8 lines
Quoted 5 lines
Quoted 1 line

IMO, we should remove or rename the internal header first.

media/rds.h should be renamed to media/saa6588.h. It is also included in drivers/media/radio/si470x/radio-si470x.h, but that's obsolete and can be removed.

The rds file were the old RDS API, before we add it at V4L2. We should, instead, convert saa6588 to use the new way, and remove the legacy stuff.

No, this was never the RDS API. It is the saa6588 kernel-internal API. There is nothing wrong with it, except for the fact that the name suggests that this is a generic RDS API, when in fact it is saa6588 specific.

Quoted 11 lines
Quoted 9 lines
Quoted 6 lines
Quoted 1 line

Ditto for media/bt819.h.

There are also some issues there related to videodev2 stuff.

I prefer to apply the path as-is (just removing the ovcamchip.h) and, on some later cleanup, check and fix the remaining stuff.

I can make a patch fixing the rds.h header usage. It's all internal stuff and the weird naming is just historical and should be changed.

It would be nice if you can do it.

Will do.

Quoted 11 lines
Quoted 11 lines
Quoted 11 lines
Quoted 5 lines

All other patches in this series:

Thanks!

Quoted 3 lines

BTW, it is probably also a good idea to move the dabusb driver to staging and mark it for removal in 2.6.39.

Quoted 7 lines
Quoted 4 lines
Quoted 2 lines

Not sure about that. I don't see any good reason to remove dabusb driver, as nobody reported that it is broken.

Nobody has the hardware :-)

This is too strong :) Are you absolutely sure that there's absolutely nobody in the World with that hardware? ;)

I did some digging and found out the following:

The hardware in question was only an engineering sample which was later licensed to Terratec for their 'Dr Box 1' product.

See:

http://www.baycom.de/wiki/index.php/Products::dabusbhw
http://www.baycom.de/wiki/index.php/Products::dabusb

The authors of the driver seemed to have developed the driver a bit more. The latest source I've been able to find it here:

http://www.baycom.de/download/dabusb/beta/dabusb-linux-i386.tgz

The driver in the kernel only supports the engineering samples. The newer driver on baycom.de also supports the Terratec product (which is no longer sold either).

Quoted 4 lines
Quoted 2 lines

I know you have asked the authors about a possible removal of this driver a few months ago. Did you get any reply from them?

Nope.

You should try again, but use their baycom email:

http://www.baycom.de/wiki/index.php/Contact

Quoted 5 lines
Quoted 2 lines

It seems to be a demonstration driver only and I've never seen anyone with the hardware.

It seems so, but I can't see any technical reason for its removal. The BKL fix were applied on it, as someone wrote a patch for it.

There are a few reasons why I would like to remove this driver:

Quoted 8 lines

1) The driver is for an engineering sample only which was never sold as a commercial product.
2) The DAB API is completely undocumented and was never reviewed. Should other DAB drivers ever appear, then I'd rather start from scratch defining an API then continue this dubious API.

Perhaps baycom themselves might even be interested in working with us to design something better.

Ok, I sent another email. If we don't have any answer until the first week of Jan, let's move it to staging and schedule it to die on .39.

Cheers,
Mauro