]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
media: move CEC platform drivers to a separate directory
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Wed, 15 Apr 2020 09:03:40 +0000 (11:03 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Wed, 15 Apr 2020 10:06:40 +0000 (12:06 +0200)
As CEC support doesn't depend on MEDIA_SUPPORT, let's
place the platform drivers outside the media menu.

As a side effect, instead of depends on PCI, seco driver
can select it (and DMI).

Acked-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
30 files changed:
drivers/media/cec/Kconfig
drivers/media/cec/Makefile
drivers/media/cec/platform/Kconfig [new file with mode: 0644]
drivers/media/cec/platform/Makefile [new file with mode: 0644]
drivers/media/cec/platform/cec-gpio/Makefile [moved from drivers/media/platform/cec-gpio/Makefile with 100% similarity]
drivers/media/cec/platform/cec-gpio/cec-gpio.c [moved from drivers/media/platform/cec-gpio/cec-gpio.c with 100% similarity]
drivers/media/cec/platform/cros-ec/Makefile [moved from drivers/media/platform/cros-ec-cec/Makefile with 100% similarity]
drivers/media/cec/platform/cros-ec/cros-ec-cec.c [moved from drivers/media/platform/cros-ec-cec/cros-ec-cec.c with 100% similarity]
drivers/media/cec/platform/meson/Makefile [moved from drivers/media/platform/meson/Makefile with 100% similarity]
drivers/media/cec/platform/meson/ao-cec-g12a.c [moved from drivers/media/platform/meson/ao-cec-g12a.c with 100% similarity]
drivers/media/cec/platform/meson/ao-cec.c [moved from drivers/media/platform/meson/ao-cec.c with 100% similarity]
drivers/media/cec/platform/s5p/Makefile [moved from drivers/media/platform/s5p-cec/Makefile with 100% similarity]
drivers/media/cec/platform/s5p/exynos_hdmi_cec.h [moved from drivers/media/platform/s5p-cec/exynos_hdmi_cec.h with 100% similarity]
drivers/media/cec/platform/s5p/exynos_hdmi_cecctrl.c [moved from drivers/media/platform/s5p-cec/exynos_hdmi_cecctrl.c with 100% similarity]
drivers/media/cec/platform/s5p/regs-cec.h [moved from drivers/media/platform/s5p-cec/regs-cec.h with 100% similarity]
drivers/media/cec/platform/s5p/s5p_cec.c [moved from drivers/media/platform/s5p-cec/s5p_cec.c with 100% similarity]
drivers/media/cec/platform/s5p/s5p_cec.h [moved from drivers/media/platform/s5p-cec/s5p_cec.h with 100% similarity]
drivers/media/cec/platform/seco/Makefile [moved from drivers/media/platform/seco-cec/Makefile with 100% similarity]
drivers/media/cec/platform/seco/seco-cec.c [moved from drivers/media/platform/seco-cec/seco-cec.c with 100% similarity]
drivers/media/cec/platform/seco/seco-cec.h [moved from drivers/media/platform/seco-cec/seco-cec.h with 100% similarity]
drivers/media/cec/platform/sti/Makefile [moved from drivers/media/platform/sti/cec/Makefile with 100% similarity]
drivers/media/cec/platform/sti/stih-cec.c [moved from drivers/media/platform/sti/cec/stih-cec.c with 100% similarity]
drivers/media/cec/platform/stm32/Makefile [new file with mode: 0644]
drivers/media/cec/platform/stm32/stm32-cec.c [moved from drivers/media/platform/stm32/stm32-cec.c with 100% similarity]
drivers/media/cec/platform/tegra/Makefile [moved from drivers/media/platform/tegra-cec/Makefile with 100% similarity]
drivers/media/cec/platform/tegra/tegra_cec.c [moved from drivers/media/platform/tegra-cec/tegra_cec.c with 100% similarity]
drivers/media/cec/platform/tegra/tegra_cec.h [moved from drivers/media/platform/tegra-cec/tegra_cec.h with 100% similarity]
drivers/media/platform/Kconfig
drivers/media/platform/Makefile
drivers/media/platform/stm32/Makefile

index 1586dd899302f74ba05e8d287d07e2e57b70c986..7b1fb70066bdd18b377554b30cb3d2e692f670fc 100644 (file)
@@ -21,7 +21,7 @@ config CEC_PIN_ERROR_INJ
        help
          This option enables CEC error injection using debugfs.
 
-config MEDIA_CEC_SUPPORT
+menuconfig MEDIA_CEC_SUPPORT
        bool
        prompt "HDMI CEC drivers"
        default y if !MEDIA_SUPPORT_FILTER
@@ -31,3 +31,7 @@ config MEDIA_CEC_SUPPORT
 
          Say Y when you have an HDMI receiver, transmitter or a USB CEC
          adapter that supports HDMI CEC.
+
+if MEDIA_CEC_SUPPORT
+source "drivers/media/cec/platform/Kconfig"
+endif
index 3fdbc22b153041bd514a9651d81312dc9f03dff1..8c6448bee386b7c2ebe386c35f6a611d227837c6 100644 (file)
@@ -1,2 +1,2 @@
 # SPDX-License-Identifier: GPL-2.0
-obj-y += core/
+obj-y += core/ platform/
diff --git a/drivers/media/cec/platform/Kconfig b/drivers/media/cec/platform/Kconfig
new file mode 100644 (file)
index 0000000..6a8bb8b
--- /dev/null
@@ -0,0 +1,121 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Platform drivers
+
+config VIDEO_CROS_EC_CEC
+       tristate "ChromeOS EC CEC driver"
+       depends on CROS_EC
+       select CEC_CORE
+       select CEC_NOTIFIER
+       select CROS_EC_PROTO
+       help
+         If you say yes here you will get support for the
+         ChromeOS Embedded Controller's CEC.
+         The CEC bus is present in the HDMI connector and enables communication
+         between compatible devices.
+
+config VIDEO_MESON_AO_CEC
+       tristate "Amlogic Meson AO CEC driver"
+       depends on ARCH_MESON || COMPILE_TEST
+       select CEC_CORE
+       select CEC_NOTIFIER
+       help
+         This is a driver for Amlogic Meson SoCs AO CEC interface. It uses the
+         generic CEC framework interface.
+         CEC bus is present in the HDMI connector and enables communication
+
+config VIDEO_MESON_G12A_AO_CEC
+       tristate "Amlogic Meson G12A AO CEC driver"
+       depends on ARCH_MESON || COMPILE_TEST
+       depends on COMMON_CLK && OF
+       select REGMAP
+       select REGMAP_MMIO
+       select CEC_CORE
+       select CEC_NOTIFIER
+       ---help---
+         This is a driver for Amlogic Meson G12A SoCs AO CEC interface.
+         This driver if for the new AO-CEC module found in G12A SoCs,
+         usually named AO_CEC_B in documentation.
+         It uses the generic CEC framework interface.
+         CEC bus is present in the HDMI connector and enables communication
+         between compatible devices.
+
+config CEC_GPIO
+       tristate "Generic GPIO-based CEC driver"
+       depends on PREEMPTION || COMPILE_TEST
+       select CEC_CORE
+       select CEC_PIN
+       select CEC_NOTIFIER
+       select GPIOLIB
+       help
+         This is a generic GPIO-based CEC driver.
+         The CEC bus is present in the HDMI connector and enables communication
+         between compatible devices.
+
+config VIDEO_SAMSUNG_S5P_CEC
+       tristate "Samsung S5P CEC driver"
+       depends on ARCH_EXYNOS || COMPILE_TEST
+       select CEC_CORE
+       select CEC_NOTIFIER
+       help
+         This is a driver for Samsung S5P HDMI CEC interface. It uses the
+         generic CEC framework interface.
+         CEC bus is present in the HDMI connector and enables communication
+         between compatible devices.
+
+config VIDEO_STI_HDMI_CEC
+       tristate "STMicroelectronics STiH4xx HDMI CEC driver"
+       depends on ARCH_STI || COMPILE_TEST
+       select CEC_CORE
+       select CEC_NOTIFIER
+       help
+         This is a driver for STIH4xx HDMI CEC interface. It uses the
+         generic CEC framework interface.
+         CEC bus is present in the HDMI connector and enables communication
+         between compatible devices.
+
+config VIDEO_STM32_HDMI_CEC
+       tristate "STMicroelectronics STM32 HDMI CEC driver"
+       depends on ARCH_STM32 || COMPILE_TEST
+       select REGMAP
+       select REGMAP_MMIO
+       select CEC_CORE
+       help
+         This is a driver for STM32 interface. It uses the
+         generic CEC framework interface.
+         CEC bus is present in the HDMI connector and enables communication
+         between compatible devices.
+
+config VIDEO_TEGRA_HDMI_CEC
+       tristate "Tegra HDMI CEC driver"
+       depends on ARCH_TEGRA || COMPILE_TEST
+       select CEC_CORE
+       select CEC_NOTIFIER
+       help
+         This is a driver for the Tegra HDMI CEC interface. It uses the
+         generic CEC framework interface.
+         The CEC bus is present in the HDMI connector and enables communication
+         between compatible devices.
+
+config VIDEO_SECO_CEC
+       tristate "SECO Boards HDMI CEC driver"
+       depends on (X86 || IA64) || COMPILE_TEST
+       select PCI
+       select DMI
+       select CEC_CORE
+       select CEC_NOTIFIER
+       help
+         This is a driver for SECO Boards integrated CEC interface.
+         Selecting it will enable support for this device.
+         CEC bus is present in the HDMI connector and enables communication
+         between compatible devices.
+
+config VIDEO_SECO_RC
+       bool "SECO Boards IR RC5 support"
+       depends on VIDEO_SECO_CEC
+       depends on RC_CORE=y || RC_CORE = VIDEO_SECO_CEC
+       help
+         If you say yes here you will get support for the
+         SECO Boards Consumer-IR in seco-cec driver.
+         The embedded controller supports RC5 protocol only, default mapping
+         is set to rc-hauppauge.
diff --git a/drivers/media/cec/platform/Makefile b/drivers/media/cec/platform/Makefile
new file mode 100644 (file)
index 0000000..e5fb5d3
--- /dev/null
@@ -0,0 +1,14 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Makefile for the CEC platform device drivers.
+#
+
+obj-$(CONFIG_CEC_GPIO)                 += cec-gpio/
+
+obj-$(CONFIG_VIDEO_CROS_EC_CEC)                += cros-ec/
+obj-$(CONFIG_VIDEO_MESON_AO_CEC)       += meson/
+obj-$(CONFIG_VIDEO_SAMSUNG_S5P_CEC)    += s5p/
+obj-$(CONFIG_VIDEO_SECO_CEC)           += seco/
+obj-$(CONFIG_VIDEO_STI_HDMI_CEC)       += sti/
+obj-$(CONFIG_VIDEO_TEGRA_HDMI_CEC)     += tegra/
+
diff --git a/drivers/media/cec/platform/stm32/Makefile b/drivers/media/cec/platform/stm32/Makefile
new file mode 100644 (file)
index 0000000..5c89dbc
--- /dev/null
@@ -0,0 +1,2 @@
+# SPDX-License-Identifier: GPL-2.0-only
+obj-$(CONFIG_VIDEO_STM32_HDMI_CEC) += stm32-cec.o
index 3df0d789d452b5fc361874d3b1c262d540ccda29..b1ac9c6c9cdbce5b060413ab8cda7ad403197b86 100644 (file)
@@ -552,131 +552,6 @@ if DVB_PLATFORM_DRIVERS
 source "drivers/media/platform/sti/c8sectpfe/Kconfig"
 endif #DVB_PLATFORM_DRIVERS
 
-menuconfig CEC_PLATFORM_DRIVERS
-       bool "CEC platform devices"
-       depends on MEDIA_CEC_SUPPORT
-
-if CEC_PLATFORM_DRIVERS
-
-config VIDEO_CROS_EC_CEC
-       tristate "ChromeOS EC CEC driver"
-       depends on CROS_EC
-       select CEC_CORE
-       select CEC_NOTIFIER
-       select CROS_EC_PROTO
-       help
-         If you say yes here you will get support for the
-         ChromeOS Embedded Controller's CEC.
-         The CEC bus is present in the HDMI connector and enables communication
-         between compatible devices.
-
-config VIDEO_MESON_AO_CEC
-       tristate "Amlogic Meson AO CEC driver"
-       depends on ARCH_MESON || COMPILE_TEST
-       select CEC_CORE
-       select CEC_NOTIFIER
-       help
-         This is a driver for Amlogic Meson SoCs AO CEC interface. It uses the
-         generic CEC framework interface.
-         CEC bus is present in the HDMI connector and enables communication
-
-config VIDEO_MESON_G12A_AO_CEC
-       tristate "Amlogic Meson G12A AO CEC driver"
-       depends on ARCH_MESON || COMPILE_TEST
-       depends on COMMON_CLK && OF
-       select REGMAP
-       select REGMAP_MMIO
-       select CEC_CORE
-       select CEC_NOTIFIER
-       ---help---
-         This is a driver for Amlogic Meson G12A SoCs AO CEC interface.
-         This driver if for the new AO-CEC module found in G12A SoCs,
-         usually named AO_CEC_B in documentation.
-         It uses the generic CEC framework interface.
-         CEC bus is present in the HDMI connector and enables communication
-         between compatible devices.
-
-config CEC_GPIO
-       tristate "Generic GPIO-based CEC driver"
-       depends on PREEMPTION || COMPILE_TEST
-       select CEC_CORE
-       select CEC_PIN
-       select CEC_NOTIFIER
-       select GPIOLIB
-       help
-         This is a generic GPIO-based CEC driver.
-         The CEC bus is present in the HDMI connector and enables communication
-         between compatible devices.
-
-config VIDEO_SAMSUNG_S5P_CEC
-       tristate "Samsung S5P CEC driver"
-       depends on ARCH_EXYNOS || COMPILE_TEST
-       select CEC_CORE
-       select CEC_NOTIFIER
-       help
-         This is a driver for Samsung S5P HDMI CEC interface. It uses the
-         generic CEC framework interface.
-         CEC bus is present in the HDMI connector and enables communication
-         between compatible devices.
-
-config VIDEO_STI_HDMI_CEC
-       tristate "STMicroelectronics STiH4xx HDMI CEC driver"
-       depends on ARCH_STI || COMPILE_TEST
-       select CEC_CORE
-       select CEC_NOTIFIER
-       help
-         This is a driver for STIH4xx HDMI CEC interface. It uses the
-         generic CEC framework interface.
-         CEC bus is present in the HDMI connector and enables communication
-         between compatible devices.
-
-config VIDEO_STM32_HDMI_CEC
-       tristate "STMicroelectronics STM32 HDMI CEC driver"
-       depends on ARCH_STM32 || COMPILE_TEST
-       select REGMAP
-       select REGMAP_MMIO
-       select CEC_CORE
-       help
-         This is a driver for STM32 interface. It uses the
-         generic CEC framework interface.
-         CEC bus is present in the HDMI connector and enables communication
-         between compatible devices.
-
-config VIDEO_TEGRA_HDMI_CEC
-       tristate "Tegra HDMI CEC driver"
-       depends on ARCH_TEGRA || COMPILE_TEST
-       select CEC_CORE
-       select CEC_NOTIFIER
-       help
-         This is a driver for the Tegra HDMI CEC interface. It uses the
-         generic CEC framework interface.
-         The CEC bus is present in the HDMI connector and enables communication
-         between compatible devices.
-
-config VIDEO_SECO_CEC
-       tristate "SECO Boards HDMI CEC driver"
-       depends on (X86 || IA64) || COMPILE_TEST
-       depends on PCI && DMI
-       select CEC_CORE
-       select CEC_NOTIFIER
-       help
-         This is a driver for SECO Boards integrated CEC interface.
-         Selecting it will enable support for this device.
-         CEC bus is present in the HDMI connector and enables communication
-         between compatible devices.
-
-config VIDEO_SECO_RC
-       bool "SECO Boards IR RC5 support"
-       depends on VIDEO_SECO_CEC
-       depends on RC_CORE=y || RC_CORE = VIDEO_SECO_CEC
-       help
-         If you say yes here you will get support for the
-         SECO Boards Consumer-IR in seco-cec driver.
-         The embedded controller supports RC5 protocol only, default mapping
-         is set to rc-hauppauge.
-
-endif #CEC_PLATFORM_DRIVERS
-
 menuconfig SDR_PLATFORM_DRIVERS
        bool "SDR platform devices"
        depends on MEDIA_SDR_SUPPORT
index a0194ef1211fe574c801bad23e21327fb3c403f4..ac31d474886990e61ba98efea6d82b1b3fca24ae 100644 (file)
@@ -23,8 +23,6 @@ obj-$(CONFIG_VIDEO_IMX_PXP)           += imx-pxp.o
 
 obj-$(CONFIG_VIDEO_SH_VEU)             += sh_veu.o
 
-obj-$(CONFIG_CEC_GPIO)                 += cec-gpio/
-
 obj-$(CONFIG_VIDEO_MEM2MEM_DEINTERLACE)        += m2m-deinterlace.o
 
 obj-$(CONFIG_VIDEO_MUX)                        += video-mux.o
@@ -35,22 +33,16 @@ obj-$(CONFIG_VIDEO_SAMSUNG_S5P_JPEG)        += s5p-jpeg/
 obj-$(CONFIG_VIDEO_SAMSUNG_S5P_MFC)    += s5p-mfc/
 
 obj-$(CONFIG_VIDEO_SAMSUNG_S5P_G2D)    += s5p-g2d/
-obj-$(CONFIG_VIDEO_SAMSUNG_S5P_CEC)    += s5p-cec/
 obj-$(CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC) += exynos-gsc/
 
 obj-$(CONFIG_VIDEO_STI_BDISP)          += sti/bdisp/
 obj-$(CONFIG_VIDEO_STI_HVA)            += sti/hva/
 obj-$(CONFIG_DVB_C8SECTPFE)            += sti/c8sectpfe/
-obj-$(CONFIG_VIDEO_STI_HDMI_CEC)       += sti/cec/
 
 obj-$(CONFIG_VIDEO_STI_DELTA)          += sti/delta/
 
-obj-$(CONFIG_VIDEO_TEGRA_HDMI_CEC)     += tegra-cec/
-
 obj-y                                  += stm32/
 
-obj-$(CONFIG_VIDEO_SECO_CEC)           += seco-cec/
-
 obj-y                                  += davinci/
 
 obj-$(CONFIG_VIDEO_SH_VOU)             += sh_vou.o
@@ -89,8 +81,4 @@ obj-$(CONFIG_VIDEO_QCOM_CAMSS)                += qcom/camss/
 
 obj-$(CONFIG_VIDEO_QCOM_VENUS)         += qcom/venus/
 
-obj-y                                  += meson/
-
-obj-y                                  += cros-ec-cec/
-
 obj-y                                  += sunxi/
index 5ed73599ca44c2bdd7a32dc5288e36e49608f7d4..48b36db2c2e21320b7c660bfa05c9167f19938fb 100644 (file)
@@ -1,3 +1,2 @@
 # SPDX-License-Identifier: GPL-2.0-only
 obj-$(CONFIG_VIDEO_STM32_DCMI) += stm32-dcmi.o
-obj-$(CONFIG_VIDEO_STM32_HDMI_CEC) += stm32-cec.o