The last open issues have been addressed, so it is time to move this out of staging and into the mainline and to move the public cec headers to include/uapi/linux.
Unified · Split
| @@ -51,7 +51,7 @@ $(BUILDDIR)/videodev2.h.rst: ${UAPI}/videodev2.h ${PARSER} $(SRC_DIR)/videodev2. · 50 unmodified lines | |||
| 51 | $(BUILDDIR)/media.h.rst: ${UAPI}/media.h ${PARSER} $(SRC_DIR)/media.h.rst.exceptions | 51 | $(BUILDDIR)/media.h.rst: ${UAPI}/media.h ${PARSER} $(SRC_DIR)/media.h.rst.exceptions |
| 52 | @$($(quiet)gen_rst) | 52 | @$($(quiet)gen_rst) |
| 53 | 53 | ||
| 54 | $(BUILDDIR)/cec.h.rst: ${KAPI}/cec.h ${PARSER} $(SRC_DIR)/cec.h.rst.exceptions | 54 | $(BUILDDIR)/cec.h.rst: ${UAPI}/cec.h ${PARSER} $(SRC_DIR)/cec.h.rst.exceptions |
| 55 | @$($(quiet)gen_rst) | 55 | @$($(quiet)gen_rst) |
| 56 | 56 | ||
| 57 | $(BUILDDIR)/lirc.h.rst: ${UAPI}/lirc.h ${PARSER} $(SRC_DIR)/lirc.h.rst.exceptions | 57 | $(BUILDDIR)/lirc.h.rst: ${UAPI}/lirc.h ${PARSER} $(SRC_DIR)/lirc.h.rst.exceptions |
| @@ -80,6 +80,22 @@ config MEDIA_RC_SUPPORT · 79 unmodified lines | |||
| 80 | 80 | ||
| 81 | Say Y when you have a TV or an IR device. | 81 | Say Y when you have a TV or an IR device. |
| 82 | 82 | ||
| 83 | config MEDIA_CEC_SUPPORT | ||
| 84 | bool "HDMI CEC support" | ||
| 85 | select MEDIA_CEC_EDID | ||
| 86 | ---help--- | ||
| 87 | Enable support for HDMI CEC (Consumer Electronics Control), | ||
| 88 | which is an optional HDMI feature. | ||
| 89 | |||
| 90 | Say Y when you have an HDMI receiver, transmitter or a USB CEC | ||
| 91 | adapter that supports HDMI CEC. | ||
| 92 | |||
| 93 | config MEDIA_CEC_DEBUG | ||
| 94 | bool "HDMI CEC debugfs interface" | ||
| 95 | depends on MEDIA_CEC_SUPPORT && DEBUG_FS | ||
| 96 | ---help--- | ||
| 97 | Turns on the DebugFS interface for CEC devices. | ||
| 98 | |||
| 83 | config MEDIA_CEC_EDID | 99 | config MEDIA_CEC_EDID |
| 84 | bool | 100 | bool |
| 85 | 101 | ||
| @@ -6,6 +6,10 @@ ifeq ($(CONFIG_MEDIA_CEC_EDID),y) · 5 unmodified lines | |||
| 6 | obj-$(CONFIG_MEDIA_SUPPORT) += cec-edid.o | 6 | obj-$(CONFIG_MEDIA_SUPPORT) += cec-edid.o |
| 7 | endif | 7 | endif |
| 8 | 8 | ||
| 9 | ifeq ($(CONFIG_MEDIA_CEC_SUPPORT),y) | ||
| 10 | obj-$(CONFIG_MEDIA_SUPPORT) += cec/ | ||
| 11 | endif | ||
| 12 | |||
| 9 | media-objs := media-device.o media-devnode.o media-entity.o | 13 | media-objs := media-device.o media-devnode.o media-entity.o |
| 10 | 14 | ||
| 11 | # | 15 | # |
| @@ -1,5 +1,5 @@ | |||
| 1 | cec-objs := cec-core.o cec-adap.o cec-api.o | 1 | cec-objs := cec-core.o cec-adap.o cec-api.o |
| 2 | 2 | ||
| 3 | ifeq ($(CONFIG_MEDIA_CEC),y) | 3 | ifeq ($(CONFIG_MEDIA_CEC_SUPPORT),y) |
| 4 | obj-$(CONFIG_MEDIA_SUPPORT) += cec.o | 4 | obj-$(CONFIG_MEDIA_SUPPORT) += cec.o |
| 5 | endif | 5 | endif |
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
| @@ -221,7 +221,7 @@ config VIDEO_ADV7604 · 220 unmodified lines | |||
| 221 | 221 | ||
| 222 | config VIDEO_ADV7604_CEC | 222 | config VIDEO_ADV7604_CEC |
| 223 | bool "Enable Analog Devices ADV7604 CEC support" | 223 | bool "Enable Analog Devices ADV7604 CEC support" |
| 224 | depends on VIDEO_ADV7604 && MEDIA_CEC | 224 | depends on VIDEO_ADV7604 && MEDIA_CEC_SUPPORT |
| 225 | ---help--- | 225 | ---help--- |
| 226 | When selected the adv7604 will support the optional | 226 | When selected the adv7604 will support the optional |
| 227 | HDMI CEC feature. | 227 | HDMI CEC feature. |
| @@ -242,7 +242,7 @@ config VIDEO_ADV7842 · 14 unmodified lines | |||
| 242 | 242 | ||
| 243 | config VIDEO_ADV7842_CEC | 243 | config VIDEO_ADV7842_CEC |
| 244 | bool "Enable Analog Devices ADV7842 CEC support" | 244 | bool "Enable Analog Devices ADV7842 CEC support" |
| 245 | depends on VIDEO_ADV7842 && MEDIA_CEC | 245 | depends on VIDEO_ADV7842 && MEDIA_CEC_SUPPORT |
| 246 | ---help--- | 246 | ---help--- |
| 247 | When selected the adv7842 will support the optional | 247 | When selected the adv7842 will support the optional |
| 248 | HDMI CEC feature. | 248 | HDMI CEC feature. |
| @@ -481,7 +481,7 @@ config VIDEO_ADV7511 · 232 unmodified lines | |||
| 481 | 481 | ||
| 482 | config VIDEO_ADV7511_CEC | 482 | config VIDEO_ADV7511_CEC |
| 483 | bool "Enable Analog Devices ADV7511 CEC support" | 483 | bool "Enable Analog Devices ADV7511 CEC support" |
| 484 | depends on VIDEO_ADV7511 && MEDIA_CEC | 484 | depends on VIDEO_ADV7511 && MEDIA_CEC_SUPPORT |
| 485 | ---help--- | 485 | ---help--- |
| 486 | When selected the adv7511 will support the optional | 486 | When selected the adv7511 will support the optional |
| 487 | HDMI CEC feature. | 487 | HDMI CEC feature. |
| @@ -25,7 +25,7 @@ config VIDEO_VIVID · 24 unmodified lines | |||
| 25 | 25 | ||
| 26 | config VIDEO_VIVID_CEC | 26 | config VIDEO_VIVID_CEC |
| 27 | bool "Enable CEC emulation support" | 27 | bool "Enable CEC emulation support" |
| 28 | depends on VIDEO_VIVID && MEDIA_CEC | 28 | depends on VIDEO_VIVID && MEDIA_CEC_SUPPORT |
| 29 | ---help--- | 29 | ---help--- |
| 30 | When selected the vivid module will emulate the optional | 30 | When selected the vivid module will emulate the optional |
| 31 | HDMI CEC feature. | 31 | HDMI CEC feature. |
| @@ -21,8 +21,6 @@ if STAGING_MEDIA && MEDIA_SUPPORT · 20 unmodified lines | |||
| 21 | # Please keep them in alphabetic order | 21 | # Please keep them in alphabetic order |
| 22 | source "drivers/staging/media/bcm2048/Kconfig" | 22 | source "drivers/staging/media/bcm2048/Kconfig" |
| 23 | 23 | ||
| 24 | source "drivers/staging/media/cec/Kconfig" | ||
| 25 | |||
| 26 | source "drivers/staging/media/cxd2099/Kconfig" | 24 | source "drivers/staging/media/cxd2099/Kconfig" |
| 27 | 25 | ||
| 28 | source "drivers/staging/media/davinci_vpfe/Kconfig" | 26 | source "drivers/staging/media/davinci_vpfe/Kconfig" |
| @@ -1,5 +1,4 @@ | |||
| 1 | obj-$(CONFIG_I2C_BCM2048) += bcm2048/ | 1 | obj-$(CONFIG_I2C_BCM2048) += bcm2048/ |
| 2 | obj-$(CONFIG_MEDIA_CEC) += cec/ | ||
| 3 | obj-$(CONFIG_VIDEO_SAMSUNG_S5P_CEC) += s5p-cec/ | 2 | obj-$(CONFIG_VIDEO_SAMSUNG_S5P_CEC) += s5p-cec/ |
| 4 | obj-$(CONFIG_DVB_CXD2099) += cxd2099/ | 3 | obj-$(CONFIG_DVB_CXD2099) += cxd2099/ |
| 5 | obj-$(CONFIG_LIRC_STAGING) += lirc/ | 4 | obj-$(CONFIG_LIRC_STAGING) += lirc/ |
| @@ -1,12 +0,0 @@ | |||
| 1 | config MEDIA_CEC | ||
| 2 | bool "CEC API (EXPERIMENTAL)" | ||
| 3 | depends on MEDIA_SUPPORT | ||
| 4 | select MEDIA_CEC_EDID | ||
| 5 | ---help--- | ||
| 6 | Enable the CEC API. | ||
| 7 | |||
| 8 | config MEDIA_CEC_DEBUG | ||
| 9 | bool "CEC debugfs interface (EXPERIMENTAL)" | ||
| 10 | depends on MEDIA_CEC && DEBUG_FS | ||
| 11 | ---help--- | ||
| 12 | Turns on the DebugFS interface for CEC devices. | ||
| @@ -1,9 +0,0 @@ | |||
| 1 | TODOs: | ||
| 2 | |||
| 3 | - Once this is out of staging this should no longer be a separate | ||
| 4 | config option, instead it should be selected by drivers that want it. | ||
| 5 | - Revisit the IS_REACHABLE(RC_CORE): perhaps the RC_CORE support should | ||
| 6 | be enabled through a separate config option in drivers/media/Kconfig | ||
| 7 | or rc/Kconfig? | ||
| 8 | |||
| 9 | Hans Verkuil <hans.verkuil@cisco.com> | ||
| @@ -1,6 +1,6 @@ | |||
| 1 | config USB_PULSE8_CEC | 1 | config USB_PULSE8_CEC |
| 2 | tristate "Pulse Eight HDMI CEC" | 2 | tristate "Pulse Eight HDMI CEC" |
| 3 | depends on USB_ACM && MEDIA_CEC | 3 | depends on USB_ACM && MEDIA_CEC_SUPPORT |
| 4 | select SERIO | 4 | select SERIO |
| 5 | select SERIO_SERPORT | 5 | select SERIO_SERPORT |
| 6 | ---help--- | 6 | ---help--- |
| @@ -1,6 +1,6 @@ | |||
| 1 | config VIDEO_SAMSUNG_S5P_CEC | 1 | config VIDEO_SAMSUNG_S5P_CEC |
| 2 | tristate "Samsung S5P CEC driver" | 2 | tristate "Samsung S5P CEC driver" |
| 3 | depends on VIDEO_DEV && MEDIA_CEC && (PLAT_S5P || ARCH_EXYNOS || COMPILE_TEST) | 3 | depends on VIDEO_DEV && MEDIA_CEC_SUPPORT && (PLAT_S5P || ARCH_EXYNOS || COMPILE_TEST) |
| 4 | ---help--- | 4 | ---help--- |
| 5 | This is a driver for Samsung S5P HDMI CEC interface. It uses the | 5 | This is a driver for Samsung S5P HDMI CEC interface. It uses the |
| 6 | generic CEC framework interface. | 6 | generic CEC framework interface. |
| @@ -1,6 +1,6 @@ | |||
| 1 | config VIDEO_STI_HDMI_CEC | 1 | config VIDEO_STI_HDMI_CEC |
| 2 | tristate "STMicroelectronics STiH4xx HDMI CEC driver" | 2 | tristate "STMicroelectronics STiH4xx HDMI CEC driver" |
| 3 | depends on VIDEO_DEV && MEDIA_CEC && (ARCH_STI || COMPILE_TEST) | 3 | depends on VIDEO_DEV && MEDIA_CEC_SUPPORT && (ARCH_STI || COMPILE_TEST) |
| 4 | ---help--- | 4 | ---help--- |
| 5 | This is a driver for STIH4xx HDMI CEC interface. It uses the | 5 | This is a driver for STIH4xx HDMI CEC interface. It uses the |
| 6 | generic CEC framework interface. | 6 | generic CEC framework interface. |
| @@ -196,7 +196,7 @@ static inline bool cec_is_sink(const struct cec_adapter *adap) · 195 unmodified lines | |||
| 196 | return adap->phys_addr == 0; | 196 | return adap->phys_addr == 0; |
| 197 | } | 197 | } |
| 198 | 198 | ||
| 199 | #if IS_ENABLED(CONFIG_MEDIA_CEC) | 199 | #if IS_ENABLED(CONFIG_MEDIA_CEC_SUPPORT) |
| 200 | struct cec_adapter *cec_allocate_adapter(const struct cec_adap_ops *ops, | 200 | struct cec_adapter *cec_allocate_adapter(const struct cec_adap_ops *ops, |
| 201 | void *priv, const char *name, u32 caps, u8 available_las, | 201 | void *priv, const char *name, u32 caps, u8 available_las, |
| 202 | struct device *parent); | 202 | struct device *parent); |
| @@ -82,6 +82,8 @@ header-y += capi.h · 81 unmodified lines | |||
| 82 | header-y += cciss_defs.h | 82 | header-y += cciss_defs.h |
| 83 | header-y += cciss_ioctl.h | 83 | header-y += cciss_ioctl.h |
| 84 | header-y += cdrom.h | 84 | header-y += cdrom.h |
| 85 | header-y += cec.h | ||
| 86 | header-y += cec-funcs.h | ||
| 85 | header-y += cgroupstats.h | 87 | header-y += cgroupstats.h |
| 86 | header-y += chio.h | 88 | header-y += chio.h |
| 87 | header-y += cm4000_cs.h | 89 | header-y += cm4000_cs.h |
| @@ -33,12 +33,6 @@ · 32 unmodified lines | |||
| 33 | * SOFTWARE. | 33 | * SOFTWARE. |
| 34 | */ | 34 | */ |
| 35 | 35 | ||
| 36 | /* | ||
| 37 | * Note: this framework is still in staging and it is likely the API | ||
| 38 | * will change before it goes out of staging. | ||
| 39 | * | ||
| 40 | * Once it is moved out of staging this header will move to uapi. | ||
| 41 | */ | ||
| 42 | #ifndef _CEC_UAPI_FUNCS_H | 36 | #ifndef _CEC_UAPI_FUNCS_H |
| 43 | #define _CEC_UAPI_FUNCS_H | 37 | #define _CEC_UAPI_FUNCS_H |
| 44 | 38 | ||
| @@ -33,12 +33,6 @@ · 32 unmodified lines | |||
| 33 | * SOFTWARE. | 33 | * SOFTWARE. |
| 34 | */ | 34 | */ |
| 35 | 35 | ||
| 36 | /* | ||
| 37 | * Note: this framework is still in staging and it is likely the API | ||
| 38 | * will change before it goes out of staging. | ||
| 39 | * | ||
| 40 | * Once it is moved out of staging this header will move to uapi. | ||
| 41 | */ | ||
| 42 | #ifndef _CEC_UAPI_H | 36 | #ifndef _CEC_UAPI_H |
| 43 | #define _CEC_UAPI_H | 37 | #define _CEC_UAPI_H |
| 44 | 38 | ||