OSDN Git Service

Revert "media: Kconfig: better support hybrid TV devices"
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Tue, 14 Apr 2020 09:00:30 +0000 (11:00 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Tue, 14 Apr 2020 09:00:30 +0000 (11:00 +0200)
Changing from "depends on" to "select" may cause some
side-effects. This patch is not ready to be merged yet,
as it requires some adjustments.

So, let's revert it.

This reverts commit a3b91d8bd1e034c8ed89d3f55243478af97a0a52.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
14 files changed:
drivers/media/Kconfig
drivers/media/pci/Kconfig
drivers/media/pci/bt8xx/Kconfig
drivers/media/pci/cx18/Kconfig
drivers/media/pci/cx23885/Kconfig
drivers/media/pci/cx88/Kconfig
drivers/media/pci/saa7134/Kconfig
drivers/media/pci/saa7164/Kconfig
drivers/media/platform/Kconfig
drivers/media/usb/Kconfig
drivers/media/usb/au0828/Kconfig
drivers/media/usb/cx231xx/Kconfig
drivers/media/usb/pvrusb2/Kconfig
drivers/media/usb/tm6000/Kconfig

index 0972a42..a8def15 100644 (file)
@@ -77,7 +77,12 @@ config MEDIA_ANALOG_TV_SUPPORT
        help
          Enable analog TV support.
 
-         Say Y when you have a board with analog TV support.
+         Say Y when you have a TV board with analog support or with a
+         hybrid analog/digital TV chipset.
+
+         Note: There are several DVB cards that are based on chips that
+               support both analog and digital TV. Disabling this option
+               will disable support for them.
 
 config MEDIA_DIGITAL_TV_SUPPORT
        bool
@@ -86,7 +91,8 @@ config MEDIA_DIGITAL_TV_SUPPORT
        help
          Enable digital TV support.
 
-         Say Y when you have a board with digital TV support.
+         Say Y when you have a board with digital support or a board with
+         hybrid digital TV and analog TV.
 
 config MEDIA_RADIO_SUPPORT
        bool
@@ -100,6 +106,10 @@ config MEDIA_RADIO_SUPPORT
 
          Say Y when you have a board with radio support.
 
+         Note: There are several TV cards that are based on chips that
+               support radio reception. Disabling this option will
+               disable support for them.
+
 config MEDIA_SDR_SUPPORT
        bool
        prompt "Software defined radio" if MEDIA_SUPPORT_FILTER
@@ -155,13 +165,9 @@ endmenu # media device types
 menu "Media core support"
        visible if !MEDIA_SUPPORT_FILTER
 
-comment "Video4Linux core enabled to support hybrid TV devices"
-       depends on MEDIA_HYBRID_USB || MEDIA_HYBRID_PCI
-
 config VIDEO_DEV
-       tristate
-       prompt "Video4Linux core" if !(MEDIA_HYBRID_USB || MEDIA_HYBRID_PCI)
-       default MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_RADIO_SUPPORT || MEDIA_SDR_SUPPORT || MEDIA_PLATFORM_SUPPORT || MEDIA_TEST_SUPPORT || MEDIA_HYBRID_USB || MEDIA_HYBRID_PCI
+       tristate "Video4Linux core"
+       default MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_RADIO_SUPPORT || MEDIA_SDR_SUPPORT || MEDIA_PLATFORM_SUPPORT || MEDIA_TEST_SUPPORT
        help
          Enables the V4L2 API, used by cameras, analog TV, video grabbers,
          radio devices and by some input devices.
@@ -180,12 +186,8 @@ config MEDIA_CONTROLLER
 #      Only enables if one of DTV is selected
 #
 
-comment "Digital TV core enabled to support hybrid TV devices"
-       depends on MEDIA_HYBRID_USB || MEDIA_HYBRID_PCI
-
 config DVB_CORE
        tristate
-       prompt "Digital TV core"  if !(MEDIA_HYBRID_USB || MEDIA_HYBRID_PCI)
        depends on MEDIA_DIGITAL_TV_SUPPORT
        depends on (I2C || I2C=n)
        select CRC32
index 44f1efd..2cd8e32 100644 (file)
@@ -1,11 +1,5 @@
 # SPDX-License-Identifier: GPL-2.0-only
 
-# Should match the hybrid card list below
-config MEDIA_HYBRID_PCI
-       bool
-       depends on VIDEO_CX18 || VIDEO_CX23885 || VIDEO_CX88 || VIDEO_BT848 || VIDEO_SAA7134 || VIDEO_SAA7164
-       default y
-
 if PCI
 
 menuconfig MEDIA_PCI_SUPPORT
@@ -31,18 +25,18 @@ if MEDIA_ANALOG_TV_SUPPORT
 source "drivers/media/pci/ivtv/Kconfig"
 source "drivers/media/pci/saa7146/Kconfig"
 source "drivers/media/pci/dt3155/Kconfig"
-source "drivers/media/pci/cx25821/Kconfig"
-source "drivers/media/pci/cobalt/Kconfig"
 endif
 
 if MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT
        comment "Media capture/analog/hybrid TV support"
 source "drivers/media/pci/cx18/Kconfig"
 source "drivers/media/pci/cx23885/Kconfig"
+source "drivers/media/pci/cx25821/Kconfig"
 source "drivers/media/pci/cx88/Kconfig"
 source "drivers/media/pci/bt8xx/Kconfig"
 source "drivers/media/pci/saa7134/Kconfig"
 source "drivers/media/pci/saa7164/Kconfig"
+source "drivers/media/pci/cobalt/Kconfig"
 
 endif
 
index 30714c7..3f56dec 100644 (file)
@@ -1,10 +1,11 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config VIDEO_BT848
        tristate "BT848 Video For Linux"
-       depends on PCI && I2C
+       depends on VIDEO_DEV && PCI && I2C && VIDEO_V4L2
        select I2C_ALGOBIT
        select VIDEOBUF_DMA_SG
        depends on RC_CORE
+       depends on MEDIA_RADIO_SUPPORT
        select VIDEO_TUNER
        select VIDEO_TVEEPROM
        select VIDEO_MSP3400 if MEDIA_SUBDRV_AUTOSELECT
@@ -23,7 +24,7 @@ config VIDEO_BT848
 
 config DVB_BT8XX
        tristate "DVB/ATSC Support for bt878 based TV cards"
-       depends on PCI && I2C && VIDEO_BT848
+       depends on DVB_CORE && PCI && I2C && VIDEO_BT848
        select DVB_MT352 if MEDIA_SUBDRV_AUTOSELECT
        select DVB_SP887X if MEDIA_SUBDRV_AUTOSELECT
        select DVB_NXT6000 if MEDIA_SUBDRV_AUTOSELECT
index 110e072..7074a10 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config VIDEO_CX18
        tristate "Conexant cx23418 MPEG encoder support"
-       depends on PCI && I2C
+       depends on VIDEO_V4L2 && DVB_CORE && PCI && I2C
        select I2C_ALGOBIT
        select VIDEOBUF_VMALLOC
        depends on RC_CORE
index e8f4edf..926da88 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config VIDEO_CX23885
        tristate "Conexant cx23885 (2388x successor) support"
-       depends on PCI && I2C && INPUT && SND
+       depends on DVB_CORE && VIDEO_DEV && PCI && I2C && INPUT && SND
        select SND_PCM
        select I2C_ALGOBIT
        select VIDEO_TUNER
@@ -53,7 +53,7 @@ config VIDEO_CX23885
 
 config MEDIA_ALTERA_CI
        tristate "Altera FPGA based CI module"
-       depends on VIDEO_CX23885
+       depends on VIDEO_CX23885 && DVB_CORE
        select ALTERA_STAPL
        help
          An Altera FPGA CI module for NetUP Dual DVB-T/C RF CI card.
index ab994b3..24e1e7c 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config VIDEO_CX88
        tristate "Conexant 2388x (bt878 successor) support"
-       depends on PCI && I2C && RC_CORE
+       depends on VIDEO_DEV && PCI && I2C && RC_CORE
        select I2C_ALGOBIT
        select VIDEOBUF2_DMA_SG
        select VIDEO_TUNER
@@ -44,7 +44,7 @@ config VIDEO_CX88_BLACKBIRD
 
 config VIDEO_CX88_DVB
        tristate "DVB/ATSC Support for cx2388x based TV cards"
-       depends on VIDEO_CX88
+       depends on VIDEO_CX88 && DVB_CORE
        select VIDEOBUF2_DVB
        select DVB_PLL if MEDIA_SUBDRV_AUTOSELECT
        select DVB_MT352 if MEDIA_SUBDRV_AUTOSELECT
index a2af02f..30c1759 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config VIDEO_SAA7134
        tristate "Philips SAA7134 support"
-       depends on PCI && I2C
+       depends on VIDEO_DEV && PCI && I2C
        select VIDEOBUF2_DMA_SG
        select VIDEO_TUNER
        select VIDEO_TVEEPROM
@@ -37,7 +37,7 @@ config VIDEO_SAA7134_RC
 
 config VIDEO_SAA7134_DVB
        tristate "DVB/ATSC Support for saa7134 based TV cards"
-       depends on VIDEO_SAA7134
+       depends on VIDEO_SAA7134 && DVB_CORE
        select VIDEOBUF2_DVB
        select DVB_PLL if MEDIA_SUBDRV_AUTOSELECT
        select DVB_MT352 if MEDIA_SUBDRV_AUTOSELECT
index 8df933a..6655c3e 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config VIDEO_SAA7164
        tristate "NXP SAA7164 support"
-       depends on PCI && I2C
+       depends on DVB_CORE && VIDEO_DEV && PCI && I2C
        select I2C_ALGOBIT
        select FW_LOADER
        select VIDEO_TUNER
index b8b2de5..c11386b 100644 (file)
@@ -543,7 +543,7 @@ config VIDEO_TI_CSC
 
 menuconfig DVB_PLATFORM_DRIVERS
        bool "DVB platform devices"
-       select DVB_CORE
+       depends on MEDIA_DIGITAL_TV_SUPPORT
        help
          Say Y here to enable support for platform-specific Digital TV drivers.
 
index 036aa43..bf08393 100644 (file)
@@ -5,12 +5,6 @@ config TTPCI_EEPROM
        tristate
        depends on I2C
 
-# Should match the hybrid card list below
-config MEDIA_HYBRID_USB
-       bool
-       depends on VIDEO_AU0828 || VIDEO_CX231XX || VIDEO_TM6000 || VIDEO_PVRUSB2
-       default y
-
 if USB && MEDIA_SUPPORT
 
 menuconfig MEDIA_USB_SUPPORT
@@ -35,6 +29,7 @@ endif
 
 if MEDIA_ANALOG_TV_SUPPORT
        comment "Analog TV USB devices"
+source "drivers/media/usb/pvrusb2/Kconfig"
 source "drivers/media/usb/hdpvr/Kconfig"
 source "drivers/media/usb/stk1160/Kconfig"
 source "drivers/media/usb/go7007/Kconfig"
@@ -44,7 +39,6 @@ if (MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT)
        comment "Analog/digital TV USB devices"
 source "drivers/media/usb/au0828/Kconfig"
 source "drivers/media/usb/cx231xx/Kconfig"
-source "drivers/media/usb/pvrusb2/Kconfig"
 source "drivers/media/usb/tm6000/Kconfig"
 endif
 
index 2f5ee68..05cc6c4 100644 (file)
@@ -2,12 +2,12 @@
 
 config VIDEO_AU0828
        tristate "Auvitek AU0828 support"
-       depends on I2C && INPUT && USB
+       depends on I2C && INPUT && DVB_CORE && USB && VIDEO_V4L2
        select MEDIA_CONTROLLER
        select MEDIA_CONTROLLER_DVB
        select I2C_ALGOBIT
        select VIDEO_TVEEPROM
-       select VIDEOBUF2_VMALLOC
+       select VIDEOBUF2_VMALLOC if VIDEO_V4L2
        select DVB_AU8522_DTV if MEDIA_SUBDRV_AUTOSELECT
        select MEDIA_TUNER_XC5000 if MEDIA_SUBDRV_AUTOSELECT
        select MEDIA_TUNER_MXL5007T if MEDIA_SUBDRV_AUTOSELECT
@@ -22,6 +22,8 @@ config VIDEO_AU0828
 config VIDEO_AU0828_V4L2
        bool "Auvitek AU0828 v4l2 analog video support"
        depends on VIDEO_AU0828
+       depends on VIDEO_V4L2=y || VIDEO_V4L2=VIDEO_AU0828
+       select DVB_AU8522_V4L if MEDIA_SUBDRV_AUTOSELECT
        select VIDEO_TUNER
        default y
        help
index 7e3b189..2fe2b2d 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config VIDEO_CX231XX
        tristate "Conexant cx231xx USB video capture support"
-       depends on I2C && I2C_MUX
+       depends on VIDEO_DEV && I2C && I2C_MUX
        select VIDEO_TUNER
        select VIDEO_TVEEPROM
        select VIDEOBUF2_VMALLOC
@@ -40,7 +40,7 @@ config VIDEO_CX231XX_ALSA
 
 config VIDEO_CX231XX_DVB
        tristate "DVB/ATSC Support for Cx231xx based TV cards"
-       depends on VIDEO_CX231XX
+       depends on VIDEO_CX231XX && DVB_CORE
        select MEDIA_TUNER_XC5000 if MEDIA_SUBDRV_AUTOSELECT
        select MEDIA_TUNER_TDA18271 if MEDIA_SUBDRV_AUTOSELECT
        select DVB_MB86A20S if MEDIA_SUBDRV_AUTOSELECT
index 5bf45f2..e6a4f73 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config VIDEO_PVRUSB2
        tristate "Hauppauge WinTV-PVR USB2 support"
-       depends on I2C
+       depends on VIDEO_V4L2 && I2C
        select VIDEO_TUNER
        select VIDEO_TVEEPROM
        select VIDEO_CX2341X
@@ -36,7 +36,7 @@ config VIDEO_PVRUSB2_SYSFS
 config VIDEO_PVRUSB2_DVB
        bool "pvrusb2 ATSC/DVB support"
        default y
-       depends on VIDEO_PVRUSB2
+       depends on VIDEO_PVRUSB2 && DVB_CORE
        select DVB_LGDT330X if MEDIA_SUBDRV_AUTOSELECT
        select DVB_S5H1409 if MEDIA_SUBDRV_AUTOSELECT
        select DVB_S5H1411 if MEDIA_SUBDRV_AUTOSELECT
index ad9cfa8..56e977d 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config VIDEO_TM6000
        tristate "TV Master TM5600/6000/6010 driver"
-       depends on I2C && INPUT && RC_CORE && USB
+       depends on VIDEO_DEV && I2C && INPUT && RC_CORE && USB
        select VIDEO_TUNER
        select MEDIA_TUNER_XC2028
        select MEDIA_TUNER_XC5000
@@ -28,7 +28,7 @@ config VIDEO_TM6000_ALSA
 
 config VIDEO_TM6000_DVB
        tristate "DVB Support for tm6000 based TV cards"
-       depends on VIDEO_TM6000 && USB
+       depends on VIDEO_TM6000 && DVB_CORE && USB
        select DVB_ZL10353
        help
          This adds support for DVB cards based on the tm5600/tm6000 chip.