summaryrefslogtreecommitdiff
path: root/drivers/video
diff options
context:
space:
mode:
authorMythri P K <mythripk@ti.com>2011-10-10 16:34:13 +0530
committerAndy Green <andy.green@linaro.org>2012-06-22 10:04:54 +0800
commitda1be31f2442106fc928b630a371ac5713bc96fa (patch)
treea4c15b5a404217dcda69b4ba9280e278b2e0d10e /drivers/video
parent4bdeb9586e909d559c7695bfc81d78a02b078277 (diff)
OMAPDSS: HDMI: Add function pointer for HDMI OMAP5 IP
Add the funtion pointer for OMAP5 HDMI IP. Wrapper/PLL and PHY blocks are shared between 4 and 5. Core block functions are made to point to OMAP5 function. Signed-off-by: Mythri P K <mythripk@ti.com>
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/omap2/dss/dss_features.c17
-rw-r--r--drivers/video/omap2/dss/dss_features.h4
2 files changed, 18 insertions, 3 deletions
diff --git a/drivers/video/omap2/dss/dss_features.c b/drivers/video/omap2/dss/dss_features.c
index 7eaa41850fa4..a697bf3d0522 100644
--- a/drivers/video/omap2/dss/dss_features.c
+++ b/drivers/video/omap2/dss/dss_features.c
@@ -671,7 +671,7 @@ static const struct omap_dss_features omap5_dss_features = {
.hdmi_core_sys_offset = 0x20000,
};
-#if defined(CONFIG_OMAP4_DSS_HDMI)
+#if defined(CONFIG_OMAP4_DSS_HDMI) || defined(CONFIG_OMAP5_DSS_HDMI)
/* HDMI OMAP4 Functions*/
static const struct ti_hdmi_ip_ops omap4_hdmi_functions = {
@@ -698,10 +698,25 @@ static const struct ti_hdmi_ip_ops omap4_hdmi_functions = {
};
+/* HDMI OMAP5 Functions*/
+static const struct ti_hdmi_ip_ops omap5_hdmi_functions = {
+
+ .video_configure = ti_hdmi_5xxx_basic_configure,
+ .phy_enable = ti_hdmi_4xxx_phy_enable,
+ .phy_disable = ti_hdmi_4xxx_phy_disable,
+ .read_edid = NULL,
+ .pll_enable = ti_hdmi_4xxx_pll_enable,
+ .pll_disable = ti_hdmi_4xxx_pll_disable,
+ .video_enable = ti_hdmi_4xxx_wp_video_start,
+
+};
+
void dss_init_hdmi_ip_ops(struct hdmi_ip_data *ip_data)
{
if (cpu_is_omap44xx())
ip_data->ops = &omap4_hdmi_functions;
+ else if (cpu_is_omap54xx())
+ ip_data->ops = &omap5_hdmi_functions;
}
#endif
diff --git a/drivers/video/omap2/dss/dss_features.h b/drivers/video/omap2/dss/dss_features.h
index 865bc837b05e..8b3d54f698a0 100644
--- a/drivers/video/omap2/dss/dss_features.h
+++ b/drivers/video/omap2/dss/dss_features.h
@@ -20,7 +20,7 @@
#ifndef __OMAP2_DSS_FEATURES_H
#define __OMAP2_DSS_FEATURES_H
-#if defined(CONFIG_OMAP4_DSS_HDMI)
+#if defined(CONFIG_OMAP4_DSS_HDMI) || defined(CONFIG_OMAP5_DSS_HDMI)
#include "ti_hdmi.h"
#endif
@@ -121,7 +121,7 @@ unsigned long dss_feat_get_hdmi_core_sys_offset(void);
bool dss_has_feature(enum dss_feat_id id);
void dss_feat_get_reg_field(enum dss_feat_reg_field id, u8 *start, u8 *end);
void dss_features_init(void);
-#if defined(CONFIG_OMAP4_DSS_HDMI)
+#if defined(CONFIG_OMAP4_DSS_HDMI) || defined(CONFIG_OMAP5_DSS_HDMI)
void dss_init_hdmi_ip_ops(struct hdmi_ip_data *ip_data);
#endif
#endif