From: Darren Etheridge <detheridge@ti.com>
To: robdclark@gmail.com, dri-devel@lists.freedesktop.org,
airlied@linux.ie, detheridge@ti.com
Cc: panto@antoniou-consulting.com
Subject: [PATCH V2 3/7] drm/tilcdc: fixing off by one errors found on analyzer
Date: Fri, 21 Jun 2013 13:52:24 -0500 [thread overview]
Message-ID: <1371840748-23621-4-git-send-email-detheridge@ti.com> (raw)
In-Reply-To: <1371840748-23621-1-git-send-email-detheridge@ti.com>
When hooking up to an HDMI analyzer noticed some timings were
off by one. Referring to the hardware technical reference manual
for the lcd controller some of the timing registers use 0 to
represent 1. This patch addresses that issue.
Signed-off-by: Darren Etheridge <detheridge@ti.com>
---
drivers/gpu/drm/tilcdc/tilcdc_crtc.c | 19 ++++++++++++-------
1 files changed, 12 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_crtc.c b/drivers/gpu/drm/tilcdc/tilcdc_crtc.c
index 05f2b14..4455a41 100644
--- a/drivers/gpu/drm/tilcdc/tilcdc_crtc.c
+++ b/drivers/gpu/drm/tilcdc/tilcdc_crtc.c
@@ -289,17 +289,22 @@ static int tilcdc_crtc_mode_set(struct drm_crtc *crtc,
reg = tilcdc_read(dev, LCDC_RASTER_TIMING_2_REG) & ~0x000fff00;
reg |= LCDC_AC_BIAS_FREQUENCY(info->ac_bias) |
LCDC_AC_BIAS_TRANSITIONS_PER_INT(info->ac_bias_intrpt);
+
+ /*
+ * subtract one from hfp, hbp, hsw because the hardware uses
+ * a value of 0 as 1
+ */
if (priv->rev == 2) {
- reg |= (hfp & 0x300) >> 8;
- reg |= (hbp & 0x300) >> 4;
- reg |= (hsw & 0x3c0) << 21;
+ reg |= ((hfp-1) & 0x300) >> 8;
+ reg |= ((hbp-1) & 0x300) >> 4;
+ reg |= ((hsw-1) & 0x3c0) << 21;
}
tilcdc_write(dev, LCDC_RASTER_TIMING_2_REG, reg);
reg = (((mode->hdisplay >> 4) - 1) << 4) |
- ((hbp & 0xff) << 24) |
- ((hfp & 0xff) << 16) |
- ((hsw & 0x3f) << 10);
+ (((hbp-1) & 0xff) << 24) |
+ (((hfp-1) & 0xff) << 16) |
+ (((hsw-1) & 0x3f) << 10);
if (priv->rev == 2)
reg |= (((mode->hdisplay >> 4) - 1) & 0x40) >> 3;
tilcdc_write(dev, LCDC_RASTER_TIMING_0_REG, reg);
@@ -307,7 +312,7 @@ static int tilcdc_crtc_mode_set(struct drm_crtc *crtc,
reg = ((mode->vdisplay - 1) & 0x3ff) |
((vbp & 0xff) << 24) |
((vfp & 0xff) << 16) |
- ((vsw & 0x3f) << 10);
+ (((vsw-1) & 0x3f) << 10);
tilcdc_write(dev, LCDC_RASTER_TIMING_1_REG, reg);
/*
--
1.7.0.4
next prev parent reply other threads:[~2013-06-21 19:16 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-21 18:52 [PATCH V2 0/7] drm/tilcdc: bug fixes, mode selection improvements Darren Etheridge
2013-06-21 18:52 ` [PATCH V2 1/7] drm/tilcdc: support pixel widths greater than 1024 Darren Etheridge
2013-06-21 18:52 ` [PATCH V2 2/7] drm/tilcdc: adding some more devicetree config Darren Etheridge
2013-06-21 18:52 ` Darren Etheridge [this message]
2013-06-21 18:52 ` [PATCH V2 4/7] drm/tilcdc: adding more guards to prevent selection of invalid modes Darren Etheridge
2013-06-21 18:52 ` [PATCH V2 5/7] drm/tilcdc: whitespace fixes and tidyup Darren Etheridge
2013-06-21 18:52 ` [PATCH V2 6/7] drm/tilcdc fixing i2c/slave initialization race Darren Etheridge
2013-06-21 18:52 ` [PATCH V2 7/7] drm/tilcdc: Clear bits of register we're going to set Darren Etheridge
2013-06-26 15:42 ` [PATCH V2 0/7] drm/tilcdc: bug fixes, mode selection improvements Rob Clark
2013-06-26 15:47 ` Pantelis Antoniou
2013-06-26 17:49 ` Darren Etheridge
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=1371840748-23621-4-git-send-email-detheridge@ti.com \
--to=detheridge@ti.com \
--cc=airlied@linux.ie \
--cc=dri-devel@lists.freedesktop.org \
--cc=panto@antoniou-consulting.com \
--cc=robdclark@gmail.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;
as well as URLs for NNTP newsgroup(s).