]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
media: av7110: move driver to staging
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Mon, 31 May 2021 15:27:09 +0000 (17:27 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Wed, 2 Jun 2021 09:17:03 +0000 (11:17 +0200)
This driver is really old, from devices that aren't
manufactured anymore for more than a decade.

Also, the decoder supports only MPEG2, with is not compatible
with several modern DVB streams.

It is also the only upstream driver relying on the DVB
"full-featured" API.

Some changes at the frontend drivers seem to have broken it
without anybody noticing.

Due to that, it sounds it is time to retire the driver for good.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
23 files changed:
drivers/media/pci/ttpci/Kconfig
drivers/media/pci/ttpci/Makefile
drivers/media/pci/ttpci/budget.h
drivers/staging/media/Kconfig
drivers/staging/media/Makefile
drivers/staging/media/av7110/Kconfig [new file with mode: 0644]
drivers/staging/media/av7110/Makefile [new file with mode: 0644]
drivers/staging/media/av7110/TODO [new file with mode: 0644]
drivers/staging/media/av7110/av7110.c [moved from drivers/media/pci/ttpci/av7110.c with 100% similarity]
drivers/staging/media/av7110/av7110.h [moved from drivers/media/pci/ttpci/av7110.h with 100% similarity]
drivers/staging/media/av7110/av7110_av.c [moved from drivers/media/pci/ttpci/av7110_av.c with 100% similarity]
drivers/staging/media/av7110/av7110_av.h [moved from drivers/media/pci/ttpci/av7110_av.h with 100% similarity]
drivers/staging/media/av7110/av7110_ca.c [moved from drivers/media/pci/ttpci/av7110_ca.c with 100% similarity]
drivers/staging/media/av7110/av7110_ca.h [moved from drivers/media/pci/ttpci/av7110_ca.h with 100% similarity]
drivers/staging/media/av7110/av7110_hw.c [moved from drivers/media/pci/ttpci/av7110_hw.c with 100% similarity]
drivers/staging/media/av7110/av7110_hw.h [moved from drivers/media/pci/ttpci/av7110_hw.h with 100% similarity]
drivers/staging/media/av7110/av7110_ipack.c [moved from drivers/media/pci/ttpci/av7110_ipack.c with 100% similarity]
drivers/staging/media/av7110/av7110_ipack.h [moved from drivers/media/pci/ttpci/av7110_ipack.h with 100% similarity]
drivers/staging/media/av7110/av7110_ir.c [moved from drivers/media/pci/ttpci/av7110_ir.c with 100% similarity]
drivers/staging/media/av7110/av7110_v4l.c [moved from drivers/media/pci/ttpci/av7110_v4l.c with 100% similarity]
drivers/staging/media/av7110/budget-patch.c [moved from drivers/media/pci/ttpci/budget-patch.c with 100% similarity]
drivers/staging/media/av7110/dvb_filter.c [moved from drivers/media/pci/ttpci/dvb_filter.c with 100% similarity]
drivers/staging/media/av7110/dvb_filter.h [moved from drivers/media/pci/ttpci/dvb_filter.h with 100% similarity]

index 8a362ee9105f08c0a6962ebd0dc90c8cc68d26f1..65a6832a6b9630f77d77a407c8b4a018246b3d4f 100644 (file)
@@ -1,56 +1,4 @@
 # SPDX-License-Identifier: GPL-2.0-only
-config DVB_AV7110_IR
-       bool
-       depends on RC_CORE=y || RC_CORE = DVB_AV7110
-       default DVB_AV7110
-
-config DVB_AV7110
-       tristate "AV7110 cards"
-       depends on DVB_CORE && PCI && I2C
-       select TTPCI_EEPROM
-       select VIDEO_SAA7146_VV
-       depends on VIDEO_DEV    # dependencies of VIDEO_SAA7146_VV
-       select DVB_VES1820 if MEDIA_SUBDRV_AUTOSELECT
-       select DVB_VES1X93 if MEDIA_SUBDRV_AUTOSELECT
-       select DVB_STV0299 if MEDIA_SUBDRV_AUTOSELECT
-       select DVB_TDA8083 if MEDIA_SUBDRV_AUTOSELECT
-       select DVB_SP8870 if MEDIA_SUBDRV_AUTOSELECT
-       select DVB_STV0297 if MEDIA_SUBDRV_AUTOSELECT
-       select DVB_L64781 if MEDIA_SUBDRV_AUTOSELECT
-       select DVB_LNBP21 if MEDIA_SUBDRV_AUTOSELECT
-       help
-         Support for SAA7146 and AV7110 based DVB cards as produced
-         by Fujitsu-Siemens, Technotrend, Hauppauge and others.
-
-         This driver only supports the fullfeatured cards with
-         onboard MPEG2 decoder.
-
-         This driver needs an external firmware. Please use the script
-         "<kerneldir>/scripts/get_dvb_firmware av7110" to
-         download/extract it, and then copy it to /usr/lib/hotplug/firmware
-         or /lib/firmware (depending on configuration of firmware hotplug).
-
-         Alternatively, you can download the file and use the kernel's
-         EXTRA_FIRMWARE configuration option to build it into your
-         kernel image by adding the filename to the EXTRA_FIRMWARE
-         configuration option string.
-
-         Say Y if you own such a card and want to use it.
-
-config DVB_AV7110_OSD
-       bool "AV7110 OSD support"
-       depends on DVB_AV7110
-       default y if DVB_AV7110=y || DVB_AV7110=m
-       help
-         The AV7110 firmware provides some code to generate an OnScreenDisplay
-         on the video output. This is kind of nonstandard and not guaranteed to
-         be maintained.
-
-         Anyway, some popular DVB software like VDR uses this OSD to render
-         its menus, so say Y if you want to use this software.
-
-         All other people say N.
-
 config DVB_BUDGET_CORE
        tristate "SAA7146 DVB cards (aka Budget, Nova-PCI)"
        depends on DVB_CORE && PCI && I2C
@@ -136,25 +84,3 @@ config DVB_BUDGET_AV
 
          To compile this driver as a module, choose M here: the
          module will be called budget-av.
-
-config DVB_BUDGET_PATCH
-       tristate "AV7110 cards with Budget Patch"
-       depends on DVB_BUDGET_CORE && I2C
-       depends on DVB_AV7110
-       select DVB_STV0299 if MEDIA_SUBDRV_AUTOSELECT
-       select DVB_VES1X93 if MEDIA_SUBDRV_AUTOSELECT
-       select DVB_TDA8083 if MEDIA_SUBDRV_AUTOSELECT
-       help
-         Support for Budget Patch (full TS) modification on
-         SAA7146+AV7110 based cards (DVB-S cards). This
-         driver doesn't use onboard MPEG2 decoder. The
-         card is driven in Budget-only mode. Card is
-         required to have loaded firmware to tune properly.
-         Firmware can be loaded by insertion and removal of
-         standard AV7110 driver prior to loading this
-         driver.
-
-         Say Y if you own such a card and want to use it.
-
-         To compile this driver as a module, choose M here: the
-         module will be called budget-patch.
index 61001fa5a93e1e0621e2cca52e494958699c6cf4..b0708f6e40cc0e2cd44ebec786b2b6515ef37184 100644 (file)
@@ -1,21 +1,12 @@
 # SPDX-License-Identifier: GPL-2.0
 #
 # Makefile for the kernel SAA7146 FULL TS DVB device driver
-# and the AV7110 DVB device driver
 #
 
-dvb-ttpci-objs := av7110_hw.o av7110_v4l.o av7110_av.o av7110_ca.o av7110.o av7110_ipack.o dvb_filter.o
-
-ifdef CONFIG_DVB_AV7110_IR
-dvb-ttpci-objs += av7110_ir.o
-endif
-
 obj-$(CONFIG_DVB_BUDGET_CORE) += budget-core.o
 obj-$(CONFIG_DVB_BUDGET) += budget.o
 obj-$(CONFIG_DVB_BUDGET_AV) += budget-av.o
 obj-$(CONFIG_DVB_BUDGET_CI) += budget-ci.o
-obj-$(CONFIG_DVB_BUDGET_PATCH) += budget-patch.o
-obj-$(CONFIG_DVB_AV7110) += dvb-ttpci.o
 
 ccflags-y += -I $(srctree)/drivers/media/dvb-frontends/
 ccflags-y += -I $(srctree)/drivers/media/tuners
index a7463daf39f15f01a0bb868a831e61c670990f06..bd87432e6cde021b5ac33cb6b85d4e90efa66b32 100644 (file)
@@ -8,7 +8,6 @@
 #include <media/demux.h>
 #include <media/dvb_demux.h>
 #include <media/dmxdev.h>
-#include "dvb_filter.h"
 #include <media/dvb_net.h>
 
 #include <linux/module.h>
@@ -28,6 +27,7 @@ extern int budget_debug;
                       __func__, ##arg);                                \
 } while (0)
 
+#define TS_SIZE        188
 
 struct budget_info {
        char *name;
index ca59986b20f8a898cca16ceefdd40e8401a7a770..e3aaae920847cf262506b492520f93bb7ef515cf 100644 (file)
@@ -42,4 +42,6 @@ source "drivers/staging/media/tegra-video/Kconfig"
 
 source "drivers/staging/media/ipu3/Kconfig"
 
+source "drivers/staging/media/av7110/Kconfig"
+
 endif
index 716929a1a313000fc38858de575e45734358c4eb..5b5afc5b03a02a41ccea55b3d94a76d73d6b29ba 100644 (file)
@@ -10,3 +10,4 @@ obj-$(CONFIG_TEGRA_VDE)               += tegra-vde/
 obj-$(CONFIG_VIDEO_HANTRO)     += hantro/
 obj-$(CONFIG_VIDEO_IPU3_IMGU)  += ipu3/
 obj-$(CONFIG_VIDEO_ZORAN)      += zoran/
+obj-$(CONFIG_DVB_AV7110)       += av7110/
diff --git a/drivers/staging/media/av7110/Kconfig b/drivers/staging/media/av7110/Kconfig
new file mode 100644 (file)
index 0000000..e19d24b
--- /dev/null
@@ -0,0 +1,74 @@
+# SPDX-License-Identifier: GPL-2.0-only
+config DVB_AV7110_IR
+       bool
+       depends on RC_CORE=y || RC_CORE = DVB_AV7110
+       default DVB_AV7110
+
+config DVB_AV7110
+       tristate "AV7110 cards"
+       depends on DVB_CORE && PCI && I2C
+       select TTPCI_EEPROM
+       select VIDEO_SAA7146_VV
+       depends on VIDEO_DEV    # dependencies of VIDEO_SAA7146_VV
+       select DVB_VES1820 if MEDIA_SUBDRV_AUTOSELECT
+       select DVB_VES1X93 if MEDIA_SUBDRV_AUTOSELECT
+       select DVB_STV0299 if MEDIA_SUBDRV_AUTOSELECT
+       select DVB_TDA8083 if MEDIA_SUBDRV_AUTOSELECT
+       select DVB_SP8870 if MEDIA_SUBDRV_AUTOSELECT
+       select DVB_STV0297 if MEDIA_SUBDRV_AUTOSELECT
+       select DVB_L64781 if MEDIA_SUBDRV_AUTOSELECT
+       select DVB_LNBP21 if MEDIA_SUBDRV_AUTOSELECT
+       help
+         Support for SAA7146 and AV7110 based DVB cards as produced
+         by Fujitsu-Siemens, Technotrend, Hauppauge and others.
+
+         This driver only supports the fullfeatured cards with
+         onboard MPEG2 decoder.
+
+         This driver needs an external firmware. Please use the script
+         "<kerneldir>/scripts/get_dvb_firmware av7110" to
+         download/extract it, and then copy it to /usr/lib/hotplug/firmware
+         or /lib/firmware (depending on configuration of firmware hotplug).
+
+         Alternatively, you can download the file and use the kernel's
+         EXTRA_FIRMWARE configuration option to build it into your
+         kernel image by adding the filename to the EXTRA_FIRMWARE
+         configuration option string.
+
+         Say Y if you own such a card and want to use it.
+
+config DVB_AV7110_OSD
+       bool "AV7110 OSD support"
+       depends on DVB_AV7110
+       default y if DVB_AV7110=y || DVB_AV7110=m
+       help
+         The AV7110 firmware provides some code to generate an OnScreenDisplay
+         on the video output. This is kind of nonstandard and not guaranteed to
+         be maintained.
+
+         Anyway, some popular DVB software like VDR uses this OSD to render
+         its menus, so say Y if you want to use this software.
+
+         All other people say N.
+
+config DVB_BUDGET_PATCH
+       tristate "AV7110 cards with Budget Patch"
+       depends on DVB_BUDGET_CORE && I2C
+       depends on DVB_AV7110
+       select DVB_STV0299 if MEDIA_SUBDRV_AUTOSELECT
+       select DVB_VES1X93 if MEDIA_SUBDRV_AUTOSELECT
+       select DVB_TDA8083 if MEDIA_SUBDRV_AUTOSELECT
+       help
+         Support for Budget Patch (full TS) modification on
+         SAA7146+AV7110 based cards (DVB-S cards). This
+         driver doesn't use onboard MPEG2 decoder. The
+         card is driven in Budget-only mode. Card is
+         required to have loaded firmware to tune properly.
+         Firmware can be loaded by insertion and removal of
+         standard AV7110 driver prior to loading this
+         driver.
+
+         Say Y if you own such a card and want to use it.
+
+         To compile this driver as a module, choose M here: the
+         module will be called budget-patch.
diff --git a/drivers/staging/media/av7110/Makefile b/drivers/staging/media/av7110/Makefile
new file mode 100644 (file)
index 0000000..dcabecf
--- /dev/null
@@ -0,0 +1,20 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Makefile for the AV7110 DVB device driver
+#
+
+dvb-ttpci-objs := av7110_hw.o av7110_v4l.o av7110_av.o av7110_ca.o av7110.o \
+                 av7110_ipack.o dvb_filter.o
+
+ifdef CONFIG_DVB_AV7110_IR
+dvb-ttpci-objs += av7110_ir.o
+endif
+
+obj-$(CONFIG_DVB_BUDGET_PATCH) += budget-patch.o
+
+obj-$(CONFIG_DVB_AV7110) += dvb-ttpci.o
+
+ccflags-y += -I $(srctree)/drivers/media/dvb-frontends
+ccflags-y += -I $(srctree)/drivers/media/tuners
+ccflags-y += -I $(srctree)/drivers/media/pci/ttpci
+ccflags-y += -I $(srctree)/drivers/media/common
diff --git a/drivers/staging/media/av7110/TODO b/drivers/staging/media/av7110/TODO
new file mode 100644 (file)
index 0000000..60062d8
--- /dev/null
@@ -0,0 +1,3 @@
+- This driver is too old and relies on a different API.
+  Drop it from Kernel on a couple of versions.
+- Cleanup patches for the drivers here won't be accepted.