msm: display: HDMI: Driver support for CEC feature
Driver implementation of HDMI CEC feature. Support includes
CEC frame send and frame receive. Support added for sysfs interface
for CEC daemon to interact with the driver for reading and writing frames.
sysfs interface
/sys/class/graphics/fb1/cec
Read: CEC block state.
Write: Enable/Disable CEC block.
/sys/class/graphics/fb1/cec_logical_addr
Read: Print CEC logical address
Write: Set CEC logical address which is used for
addressing CEC messages to and from MSM
/sys/class/graphics/fb1/cec_rd_frame
Read: Read rcvd CEC message from message queue.
If queue is empty -EBUSY.
If CEC block is disabled -EPERM.
Write: N/A
/sys/class/graphics/fb1/cec_wr_frame
Read: N/A
Write: Write to send CEC message.
If CEC line arbitration fault/no ack -EINVAL.
If CEC block is disabled -EPERM.
Change-Id: I62ce418b7f1e887550319081cc4b78fbd564a6f5
Signed-off-by: Manoj Rao <manojraj@codeaurora.org>
diff --git a/drivers/video/msm/external_common.h b/drivers/video/msm/external_common.h
index 30a8f48..f629d0f 100644
--- a/drivers/video/msm/external_common.h
+++ b/drivers/video/msm/external_common.h
@@ -225,6 +225,7 @@
/* The external interface driver needs to initialize the common state. */
extern struct external_common_state_type *external_common_state;
extern struct mutex external_common_state_hpd_mutex;
+extern struct mutex hdmi_msm_state_mutex;
#ifdef CONFIG_FB_MSM_HDMI_COMMON
#define VFRMT_NOT_SUPPORTED(VFRMT) \