diff options
author | Muralidhar Dixit <murali.dixit@ti.com> | 2012-05-10 15:53:54 +0530 |
---|---|---|
committer | Dmytro Kedrovskyi <x0169235@ti.com> | 2012-05-17 19:56:28 +0300 |
commit | 0e0ee86260aacab9c98dd65fa420a50938e79d20 (patch) | |
tree | a9ff0f9aa87727792cffcd30723617daecc4a774 /include/video | |
parent | 1b65ded795e4879c6562778882e6b083c8a6cc72 (diff) | |
download | kernel_samsung_espresso10-0e0ee86260aacab9c98dd65fa420a50938e79d20.zip kernel_samsung_espresso10-0e0ee86260aacab9c98dd65fa420a50938e79d20.tar.gz kernel_samsung_espresso10-0e0ee86260aacab9c98dd65fa420a50938e79d20.tar.bz2 |
OMAPDSS: CEC: Adding support for CEC in HDMI driver
Adding support for CEC functionality in OMAP4 HDMI IP
specific file
Change-Id: I333e8ae484e0e56e0c597bca754f0276614d90ee
Signed-off-by: Muralidhar Dixit <murali.dixit@ti.com>
Diffstat (limited to 'include/video')
-rw-r--r-- | include/video/hdmi_ti_4xxx_ip.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/include/video/hdmi_ti_4xxx_ip.h b/include/video/hdmi_ti_4xxx_ip.h index cbdaf36..0c8b275 100644 --- a/include/video/hdmi_ti_4xxx_ip.h +++ b/include/video/hdmi_ti_4xxx_ip.h @@ -56,6 +56,7 @@ struct hdmi_ip_data { unsigned long hdmi_core_av_offset; unsigned long hdmi_pll_offset; unsigned long hdmi_phy_offset; + unsigned long hdmi_cec_offset; }; struct hdmi_video_timings { @@ -382,6 +383,29 @@ enum hdmi_aksv_err { HDMI_AKSV_ERROR = 1, HDMI_AKSV_VALID = 2 }; +struct cec_dev { + int device_id; + int clear_existing_device; + int phy_addr; +}; + +struct cec_tx_data { + char dest_device_id; + char initiator_device_id; + char send_ping; + char retry_count; + char tx_cmd; + char tx_count; + char tx_operand[15]; +}; +struct cec_rx_data { + char init_device_id; + char dest_device_id; + char rx_cmd; + char rx_count; + char rx_operand[15]; +}; + int hdmi_ti_4xxx_phy_init(struct hdmi_ip_data *ip_data); void hdmi_ti_4xxx_phy_off(struct hdmi_ip_data *ip_data, @@ -416,4 +440,20 @@ int hdmi_ti_4xxx_set_wait_soft_reset(struct hdmi_ip_data *ip_data); int hdmi_ti_4xx_check_aksv_data(struct hdmi_ip_data *ip_data); void hdmi_core_vsi_config(struct hdmi_ip_data *ip_data, struct hdmi_core_vendor_specific_infoframe *config); +int hdmi_ti_4xx_cec_get_rx_cmd(struct hdmi_ip_data *ip_data, + char *rx_cmd); +int hdmi_ti_4xx_cec_read_rx_cmd(struct hdmi_ip_data *ip_data, + struct cec_rx_data *rx_data); +int hdmi_ti_4xx_cec_transmit_cmd(struct hdmi_ip_data *ip_data, + struct cec_tx_data *data, int *cmd_acked); +int hdmi_ti_4xxx_power_on_cec(struct hdmi_ip_data *ip_data); +int hdmi_ti_4xxx_cec_get_rx_int(struct hdmi_ip_data *ip_data); +int hdmi_ti_4xxx_cec_clr_rx_int(struct hdmi_ip_data *ip_data, int cec_rx); +int hdmi_ti_4xxx_cec_get_listening_mask(struct hdmi_ip_data *ip_data); +int hdmi_ti_4xxx_cec_add_listening_device(struct hdmi_ip_data *ip_data, + int device_id, int clear); +int hdmi_ti_4xxx_cec_set_listening_mask(struct hdmi_ip_data *ip_data, + int mask); + + #endif |