public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
From: <mythripk@ti.com>
To: tomi.valkeinen@ti.com, linux-omap@vger.kernel.org
Cc: Mythri P K <mythripk@ti.com>
Subject: [PATCH v3 03/10] OMAP4: DSS: HDMI: Use specific HDMI timings structure
Date: Fri, 2 Sep 2011 16:17:43 +0530	[thread overview]
Message-ID: <1314960470-2616-4-git-send-email-mythripk@ti.com> (raw)
In-Reply-To: <1314960470-2616-3-git-send-email-mythripk@ti.com>

From: Mythri P K <mythripk@ti.com>

Define HDMI timings structure for hdmi.c to use instead of OMAP DSS timing
strucutre, As hdmi has few additional parameters such as vsync and hsync
polarity which is missing in DSS timing structure.

Signed-off-by: Mythri P K <mythripk@ti.com>
---
 drivers/video/omap2/dss/hdmi.c |   23 ++++++++++++++++++++---
 drivers/video/omap2/dss/hdmi.h |   15 ++++++++++++++-
 2 files changed, 34 insertions(+), 4 deletions(-)

diff --git a/drivers/video/omap2/dss/hdmi.c b/drivers/video/omap2/dss/hdmi.c
index 9a28e5e..09c0b28 100644
--- a/drivers/video/omap2/dss/hdmi.c
+++ b/drivers/video/omap2/dss/hdmi.c
@@ -533,6 +533,21 @@ static int read_edid(struct hdmi_ip_data *ip_data, u8 *pedid, u16 max_length)
 	return 0;
 }
 
+static void copy_hdmi_to_dss_timings(
+		const struct hdmi_video_timings hdmi_timings,
+		struct omap_video_timings *timings)
+{
+	timings->x_res = hdmi_timings.x_res;
+	timings->y_res = hdmi_timings.y_res;
+	timings->pixel_clock = hdmi_timings.pixel_clock;
+	timings->hbp = hdmi_timings.hbp;
+	timings->hfp = hdmi_timings.hfp;
+	timings->hsw = hdmi_timings.hsw;
+	timings->vbp = hdmi_timings.vbp;
+	timings->vfp = hdmi_timings.vfp;
+	timings->vsw = hdmi_timings.vsw;
+}
+
 static int get_timings_index(void)
 {
 	int code;
@@ -557,7 +572,7 @@ static struct hdmi_cm hdmi_get_code(struct omap_video_timings *timing)
 {
 	int i = 0, code = -1, temp_vsync = 0, temp_hsync = 0;
 	int timing_vsync = 0, timing_hsync = 0;
-	struct omap_video_timings temp;
+	struct hdmi_video_timings temp;
 	struct hdmi_cm cm = {-1};
 	DSSDBG("hdmi_get_code\n");
 
@@ -715,7 +730,8 @@ static void hdmi_read_edid(struct omap_video_timings *dp)
 
 	code = get_timings_index();
 
-	*dp = cea_vesa_timings[code].timings;
+	copy_hdmi_to_dss_timings(cea_vesa_timings[code].timings, dp);
+
 }
 
 static void hdmi_core_init(struct hdmi_core_video_config *video_cfg,
@@ -1177,7 +1193,8 @@ static int hdmi_power_on(struct omap_dss_device *dssdev)
 		hdmi_read_edid(p);
 	}
 	code = get_timings_index();
-	dssdev->panel.timings = cea_vesa_timings[code].timings;
+	copy_hdmi_to_dss_timings(cea_vesa_timings[code].timings,
+			&dssdev->panel.timings);
 	update_hdmi_timings(&hdmi.hdmi_data.cfg, p, code);
 
 	phy = p->pixel_clock;
diff --git a/drivers/video/omap2/dss/hdmi.h b/drivers/video/omap2/dss/hdmi.h
index d2913f8..02342f6 100644
--- a/drivers/video/omap2/dss/hdmi.h
+++ b/drivers/video/omap2/dss/hdmi.h
@@ -198,9 +198,22 @@ struct hdmi_reg { u16 idx; };
 #define REG_GET(base, idx, start, end) \
 	FLD_GET(hdmi_read_reg(base, idx), start, end)
 
+struct hdmi_video_timings {
+	u16 x_res;
+	u16 y_res;
+	/* Unit: KHz */
+	u32 pixel_clock;
+	u16 hsw;
+	u16 hfp;
+	u16 hbp;
+	u16 vsw;
+	u16 vfp;
+	u16 vbp;
+};
+
 /* HDMI timing structure */
 struct hdmi_timings {
-	struct omap_video_timings timings;
+	struct hdmi_video_timings timings;
 	int vsync_pol;
 	int hsync_pol;
 };
-- 
1.7.5.4


  reply	other threads:[~2011-09-02 10:56 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-02 10:47 [PATCH v3 00/10]HDMI: Split hdmi.c in DSS to seperate OMAP dependent mythripk
2011-09-02 10:47 ` [PATCH v3 01/10] OMAP4: DSS: HDMI: HDMI clean up to pass base_address mythripk
2011-09-02 10:47   ` [PATCH v3 02/10] OMAP4: DSS: HDMI: Move pll and video configuration mythripk
2011-09-02 10:47     ` mythripk [this message]
2011-09-02 10:47       ` [PATCH v3 04/10] OMAP4: DSS: HDMI: Move IP independent common header mythripk
2011-09-02 10:47         ` [PATCH v3 05/10] OMAP4 : DSS : HDMI : Move the EDID portion from HDMI mythripk
2011-09-02 10:47           ` [PATCH v3 06/10] OMAP4: DSS2: HDMI: Split the HDMI driver to DSS and IP mythripk
2011-09-02 10:47             ` [PATCH v3 07/10] OMAP4: DSS: HDMI: Rename the functions in HDMI IP mythripk
2011-09-02 10:47               ` [PATCH v3 08/10] OMAP4: DSS: HDMI: Move the common HDMI header file mythripk
2011-09-02 10:47                 ` [PATCH v3 09/10] OMAP4: DSS2: HDMI: Function pointer approach to call mythripk
2011-09-02 10:47                   ` [PATCH v3 10/10] OMAP4: DSS: Rename hdmi_omap4_panel.c to hdmi_panel.c mythripk
2011-09-05  5:40                   ` [PATCH v3 09/10] OMAP4: DSS2: HDMI: Function pointer approach to call Semwal, Sumit
2011-09-05 11:01                   ` Tomi Valkeinen
2011-09-05 17:33                     ` K, Mythri P
2011-09-06  6:08                       ` K, Mythri P
2011-09-06 10:17                         ` Tomi Valkeinen
2011-09-06 11:25                           ` K, Mythri P
2011-09-06 12:45                       ` Tomi Valkeinen
2011-09-06 13:05                         ` K, Mythri P
2011-09-05  7:40 ` [PATCH v3 00/10]HDMI: Split hdmi.c in DSS to seperate OMAP dependent Tomi Valkeinen
2011-09-05 10:35   ` K, Mythri P
2011-09-05 10:41     ` Tomi Valkeinen
2011-09-05 12:15 ` Tomi Valkeinen
2011-09-05 13:22   ` K, Mythri P
2011-09-06  9:39     ` K, Mythri P
2011-09-06 11:28       ` K, Mythri P

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1314960470-2616-4-git-send-email-mythripk@ti.com \
    --to=mythripk@ti.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=tomi.valkeinen@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox