From 9a97cc155cc75571db72adf6992d11aa1de0c83a Mon Sep 17 00:00:00 2001
From: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Date: Thu, 11 Aug 2022 11:17:43 +0200
Subject: [PATCH] media: meye: deprecate this driver

Deprecate the meye driver. This driver does not use the vb2 framework
for video streaming, instead it implements its own version.

We want to get rid of these old drivers, so deprecated it for future
removal.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
 MAINTAINERS                                                 | 2 +-
 drivers/media/pci/Kconfig                                   | 1 -
 drivers/media/pci/Makefile                                  | 1 -
 drivers/staging/media/Kconfig                               | 1 +
 drivers/staging/media/Makefile                              | 1 +
 .../{media/pci => staging/media/deprecated}/meye/Kconfig    | 5 ++++-
 .../{media/pci => staging/media/deprecated}/meye/Makefile   | 0
 drivers/staging/media/deprecated/meye/TODO                  | 6 ++++++
 drivers/{media/pci => staging/media/deprecated}/meye/meye.c | 0
 drivers/{media/pci => staging/media/deprecated}/meye/meye.h | 0
 10 files changed, 13 insertions(+), 4 deletions(-)
 rename drivers/{media/pci => staging/media/deprecated}/meye/Kconfig (73%)
 rename drivers/{media/pci => staging/media/deprecated}/meye/Makefile (100%)
 create mode 100644 drivers/staging/media/deprecated/meye/TODO
 rename drivers/{media/pci => staging/media/deprecated}/meye/meye.c (100%)
 rename drivers/{media/pci => staging/media/deprecated}/meye/meye.h (100%)

diff --git a/MAINTAINERS b/MAINTAINERS
index 16ee869e6015e..47b9118ee9924 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -13775,7 +13775,7 @@ MOTION EYE VAIO PICTUREBOOK CAMERA DRIVER
 S:	Orphan
 W:	http://popies.net/meye/
 F:	Documentation/userspace-api/media/drivers/meye*
-F:	drivers/media/pci/meye/
+F:	drivers/staging/media/deprecated/meye/
 F:	include/uapi/linux/meye.h
 
 MOTORCOMM PHY DRIVER
diff --git a/drivers/media/pci/Kconfig b/drivers/media/pci/Kconfig
index 7a229dddadafa..480194543d055 100644
--- a/drivers/media/pci/Kconfig
+++ b/drivers/media/pci/Kconfig
@@ -13,7 +13,6 @@ if MEDIA_PCI_SUPPORT
 if MEDIA_CAMERA_SUPPORT
 	comment "Media capture support"
 
-source "drivers/media/pci/meye/Kconfig"
 source "drivers/media/pci/solo6x10/Kconfig"
 source "drivers/media/pci/sta2x11/Kconfig"
 source "drivers/media/pci/tw5864/Kconfig"
diff --git a/drivers/media/pci/Makefile b/drivers/media/pci/Makefile
index 00d740b953d56..8bed619b71306 100644
--- a/drivers/media/pci/Makefile
+++ b/drivers/media/pci/Makefile
@@ -32,7 +32,6 @@ obj-$(CONFIG_VIDEO_CX25821) += cx25821/
 obj-$(CONFIG_VIDEO_CX88) += cx88/
 obj-$(CONFIG_VIDEO_DT3155) += dt3155/
 obj-$(CONFIG_VIDEO_IVTV) += ivtv/
-obj-$(CONFIG_VIDEO_MEYE) += meye/
 obj-$(CONFIG_VIDEO_SAA7134) += saa7134/
 obj-$(CONFIG_VIDEO_SAA7164) += saa7164/
 obj-$(CONFIG_VIDEO_SOLO6X10) += solo6x10/
diff --git a/drivers/staging/media/Kconfig b/drivers/staging/media/Kconfig
index 9781080c6e7d5..ed3e484603d70 100644
--- a/drivers/staging/media/Kconfig
+++ b/drivers/staging/media/Kconfig
@@ -56,6 +56,7 @@ menuconfig STAGING_MEDIA_DEPRECATED
 
 if STAGING_MEDIA_DEPRECATED
 source "drivers/staging/media/deprecated/cpia2/Kconfig"
+source "drivers/staging/media/deprecated/meye/Kconfig"
 source "drivers/staging/media/deprecated/stkwebcam/Kconfig"
 endif
 
diff --git a/drivers/staging/media/Makefile b/drivers/staging/media/Makefile
index adcf128d27b44..822c70ab4c0bd 100644
--- a/drivers/staging/media/Makefile
+++ b/drivers/staging/media/Makefile
@@ -4,6 +4,7 @@ obj-$(CONFIG_VIDEO_CPIA2)	+= deprecated/cpia2/
 obj-$(CONFIG_VIDEO_IMX_MEDIA)	+= imx/
 obj-$(CONFIG_VIDEO_MAX96712)	+= max96712/
 obj-$(CONFIG_VIDEO_MESON_VDEC)	+= meson/vdec/
+obj-$(CONFIG_VIDEO_MEYE)	+= deprecated/meye/
 obj-$(CONFIG_VIDEO_OMAP4)	+= omap4iss/
 obj-$(CONFIG_VIDEO_ROCKCHIP_VDEC)	+= rkvdec/
 obj-$(CONFIG_VIDEO_STKWEBCAM)	+= deprecated/stkwebcam/
diff --git a/drivers/media/pci/meye/Kconfig b/drivers/staging/media/deprecated/meye/Kconfig
similarity index 73%
rename from drivers/media/pci/meye/Kconfig
rename to drivers/staging/media/deprecated/meye/Kconfig
index 3e69b66f1a5b3..f135f8568c85e 100644
--- a/drivers/media/pci/meye/Kconfig
+++ b/drivers/staging/media/deprecated/meye/Kconfig
@@ -1,6 +1,6 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config VIDEO_MEYE
-	tristate "Sony Vaio Picturebook Motion Eye Video For Linux"
+	tristate "Sony Vaio Picturebook Motion Eye Video For Linux (DEPRECATED)"
 	depends on PCI && VIDEO_DEV
 	depends on SONY_LAPTOP
 	depends on X86 || COMPILE_TEST
@@ -12,5 +12,8 @@ config VIDEO_MEYE
 	  If you say Y or M here, you need to say Y or M to "Sony Laptop
 	  Extras" in the misc device section.
 
+	  This driver is deprecated and is scheduled for removal by
+	  the beginning of 2023. See the TODO file for more information.
+
 	  To compile this driver as a module, choose M here: the
 	  module will be called meye.
diff --git a/drivers/media/pci/meye/Makefile b/drivers/staging/media/deprecated/meye/Makefile
similarity index 100%
rename from drivers/media/pci/meye/Makefile
rename to drivers/staging/media/deprecated/meye/Makefile
diff --git a/drivers/staging/media/deprecated/meye/TODO b/drivers/staging/media/deprecated/meye/TODO
new file mode 100644
index 0000000000000..6d1d1433d5a00
--- /dev/null
+++ b/drivers/staging/media/deprecated/meye/TODO
@@ -0,0 +1,6 @@
+The meye driver does not use the vb2 framework for streaming
+video, instead it implements this in the driver.
+
+To prevent removal of this driver early 2023 it has to be
+converted to use vb2. Contact the linux-media@vger.kernel.org
+mailing list if you want to do this.
diff --git a/drivers/media/pci/meye/meye.c b/drivers/staging/media/deprecated/meye/meye.c
similarity index 100%
rename from drivers/media/pci/meye/meye.c
rename to drivers/staging/media/deprecated/meye/meye.c
diff --git a/drivers/media/pci/meye/meye.h b/drivers/staging/media/deprecated/meye/meye.h
similarity index 100%
rename from drivers/media/pci/meye/meye.h
rename to drivers/staging/media/deprecated/meye/meye.h
-- 
2.30.2