All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tomi Valkeinen <tomi.valkeinen@nokia.com>
To: linux-omap@vger.kernel.org, linux-fbdev@vger.kernel.org
Cc: Tomi Valkeinen <tomi.valkeinen@nokia.com>
Subject: [PATCH 17/17] OMAP: DSS2: DSI: Add VC support for update
Date: Mon, 08 Feb 2010 15:57:41 +0000	[thread overview]
Message-ID: <1265644661-3694-18-git-send-email-tomi.valkeinen@nokia.com> (raw)
In-Reply-To: <1265644661-3694-17-git-send-email-tomi.valkeinen@nokia.com>

Update was hardcoded to use virtual channel 0. This patch adds a parameter
that specifies the VC.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
---
 arch/arm/plat-omap/include/plat/display.h |    1 +
 drivers/video/omap2/dss/dsi.c             |   13 +++++++++----
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/arch/arm/plat-omap/include/plat/display.h b/arch/arm/plat-omap/include/plat/display.h
index ccf35a8..cd7b769 100644
--- a/arch/arm/plat-omap/include/plat/display.h
+++ b/arch/arm/plat-omap/include/plat/display.h
@@ -564,6 +564,7 @@ int omapdss_dsi_enable_te(struct omap_dss_device *dssdev, bool enable);
 int omap_dsi_prepare_update(struct omap_dss_device *dssdev,
 				    u16 *x, u16 *y, u16 *w, u16 *h);
 int omap_dsi_update(struct omap_dss_device *dssdev,
+		int channel,
 		u16 x, u16 y, u16 w, u16 h,
 		void (*callback)(int, void *), void *data);
 
diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c
index 79d27de..624d53e 100644
--- a/drivers/video/omap2/dss/dsi.c
+++ b/drivers/video/omap2/dss/dsi.c
@@ -233,6 +233,7 @@ static struct
 
 	struct completion bta_completion;
 
+	int update_channel;
 	struct dsi_update_region update_region;
 
 	bool te_enabled;
@@ -2721,7 +2722,7 @@ static void dsi_update_screen_dispc(struct omap_dss_device *dssdev,
 	unsigned packet_len;
 	u32 l;
 	bool use_te_trigger;
-	const unsigned channel = 0;
+	const unsigned channel = dsi.update_channel;
 	/* line buffer is 1024 x 24bits */
 	/* XXX: for some reason using full buffer size causes considerable TX
 	 * slowdown with update sizes that fill the whole buffer */
@@ -2732,6 +2733,8 @@ static void dsi_update_screen_dispc(struct omap_dss_device *dssdev,
 	DSSDBG("dsi_update_screen_dispc(%d,%d %dx%d)\n",
 			x, y, w, h);
 
+	dsi_vc_config_vp(channel);
+
 	bytespp	= dssdev->ctrl.pixel_size / 8;
 	bytespl = w * bytespp;
 	bytespf = bytespl * h;
@@ -2799,7 +2802,7 @@ static void dsi_te_timeout(unsigned long arg)
 static void dsi_framedone_timeout_work_callback(struct work_struct *work)
 {
 	int r;
-	const int channel = 0;
+	const int channel = dsi.update_channel;
 	bool use_te_trigger;
 
 	DSSERR("Framedone not received for 250ms!\n");
@@ -2852,7 +2855,7 @@ static void dsi_framedone_irq_callback(void *data, u32 mask)
 static void dsi_handle_framedone(void)
 {
 	int r;
-	const int channel = 0;
+	const int channel = dsi.update_channel;
 	bool use_te_trigger;
 
 	use_te_trigger = dsi.te_enabled && !dsi.use_ext_te;
@@ -2935,13 +2938,15 @@ int omap_dsi_prepare_update(struct omap_dss_device *dssdev,
 EXPORT_SYMBOL(omap_dsi_prepare_update);
 
 int omap_dsi_update(struct omap_dss_device *dssdev,
+		int channel,
 		u16 x, u16 y, u16 w, u16 h,
 		void (*callback)(int, void *), void *data)
 {
+	dsi.update_channel = channel;
+
 	if (dssdev->manager->caps & OMAP_DSS_OVL_MGR_CAP_DISPC) {
 		dsi.framedone_callback = callback;
 		dsi.framedone_data = data;
-		dsi_vc_config_vp(0);
 
 		dsi.update_region.x = x;
 		dsi.update_region.y = y;
-- 
1.6.5


WARNING: multiple messages have this Message-ID (diff)
From: Tomi Valkeinen <tomi.valkeinen@nokia.com>
To: linux-omap@vger.kernel.org, linux-fbdev@vger.kernel.org
Cc: Tomi Valkeinen <tomi.valkeinen@nokia.com>
Subject: [PATCH 17/17] OMAP: DSS2: DSI: Add VC support for update
Date: Mon,  8 Feb 2010 17:57:41 +0200	[thread overview]
Message-ID: <1265644661-3694-18-git-send-email-tomi.valkeinen@nokia.com> (raw)
In-Reply-To: <1265644661-3694-17-git-send-email-tomi.valkeinen@nokia.com>

Update was hardcoded to use virtual channel 0. This patch adds a parameter
that specifies the VC.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
---
 arch/arm/plat-omap/include/plat/display.h |    1 +
 drivers/video/omap2/dss/dsi.c             |   13 +++++++++----
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/arch/arm/plat-omap/include/plat/display.h b/arch/arm/plat-omap/include/plat/display.h
index ccf35a8..cd7b769 100644
--- a/arch/arm/plat-omap/include/plat/display.h
+++ b/arch/arm/plat-omap/include/plat/display.h
@@ -564,6 +564,7 @@ int omapdss_dsi_enable_te(struct omap_dss_device *dssdev, bool enable);
 int omap_dsi_prepare_update(struct omap_dss_device *dssdev,
 				    u16 *x, u16 *y, u16 *w, u16 *h);
 int omap_dsi_update(struct omap_dss_device *dssdev,
+		int channel,
 		u16 x, u16 y, u16 w, u16 h,
 		void (*callback)(int, void *), void *data);
 
diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c
index 79d27de..624d53e 100644
--- a/drivers/video/omap2/dss/dsi.c
+++ b/drivers/video/omap2/dss/dsi.c
@@ -233,6 +233,7 @@ static struct
 
 	struct completion bta_completion;
 
+	int update_channel;
 	struct dsi_update_region update_region;
 
 	bool te_enabled;
@@ -2721,7 +2722,7 @@ static void dsi_update_screen_dispc(struct omap_dss_device *dssdev,
 	unsigned packet_len;
 	u32 l;
 	bool use_te_trigger;
-	const unsigned channel = 0;
+	const unsigned channel = dsi.update_channel;
 	/* line buffer is 1024 x 24bits */
 	/* XXX: for some reason using full buffer size causes considerable TX
 	 * slowdown with update sizes that fill the whole buffer */
@@ -2732,6 +2733,8 @@ static void dsi_update_screen_dispc(struct omap_dss_device *dssdev,
 	DSSDBG("dsi_update_screen_dispc(%d,%d %dx%d)\n",
 			x, y, w, h);
 
+	dsi_vc_config_vp(channel);
+
 	bytespp	= dssdev->ctrl.pixel_size / 8;
 	bytespl = w * bytespp;
 	bytespf = bytespl * h;
@@ -2799,7 +2802,7 @@ static void dsi_te_timeout(unsigned long arg)
 static void dsi_framedone_timeout_work_callback(struct work_struct *work)
 {
 	int r;
-	const int channel = 0;
+	const int channel = dsi.update_channel;
 	bool use_te_trigger;
 
 	DSSERR("Framedone not received for 250ms!\n");
@@ -2852,7 +2855,7 @@ static void dsi_framedone_irq_callback(void *data, u32 mask)
 static void dsi_handle_framedone(void)
 {
 	int r;
-	const int channel = 0;
+	const int channel = dsi.update_channel;
 	bool use_te_trigger;
 
 	use_te_trigger = dsi.te_enabled && !dsi.use_ext_te;
@@ -2935,13 +2938,15 @@ int omap_dsi_prepare_update(struct omap_dss_device *dssdev,
 EXPORT_SYMBOL(omap_dsi_prepare_update);
 
 int omap_dsi_update(struct omap_dss_device *dssdev,
+		int channel,
 		u16 x, u16 y, u16 w, u16 h,
 		void (*callback)(int, void *), void *data)
 {
+	dsi.update_channel = channel;
+
 	if (dssdev->manager->caps & OMAP_DSS_OVL_MGR_CAP_DISPC) {
 		dsi.framedone_callback = callback;
 		dsi.framedone_data = data;
-		dsi_vc_config_vp(0);
 
 		dsi.update_region.x = x;
 		dsi.update_region.y = y;
-- 
1.6.5


  reply	other threads:[~2010-02-08 15:57 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-08 15:57 [PATCH 00/17] OMAP DSS2 model restructuring Tomi Valkeinen
2010-02-08 15:57 ` Tomi Valkeinen
2010-02-08 15:57 ` [PATCH 01/17] OMAP: DSS2: DSI: change DSI bus_lock to semaphore Tomi Valkeinen
2010-02-08 15:57   ` Tomi Valkeinen
2010-02-08 15:57   ` [PATCH 02/17] OMAP: DSS2: DSI: remove auto-update perf measurement Tomi Valkeinen
2010-02-08 15:57     ` Tomi Valkeinen
2010-02-08 15:57     ` [PATCH 03/17] OMAP: DSS2: move run_test() Tomi Valkeinen
2010-02-08 15:57       ` Tomi Valkeinen
2010-02-08 15:57       ` [PATCH 04/17] OMAP: DSS2: move memory_read() Tomi Valkeinen
2010-02-08 15:57         ` Tomi Valkeinen
2010-02-08 15:57         ` [PATCH 05/17] OMAP: DSS2: move set/get_mirror() Tomi Valkeinen
2010-02-08 15:57           ` Tomi Valkeinen
2010-02-08 15:57           ` [PATCH 06/17] OMAP: DSS2: move get/set_rotate() Tomi Valkeinen
2010-02-08 15:57             ` Tomi Valkeinen
2010-02-08 15:57             ` [PATCH 07/17] OMAP: DSS2: move wait_vsync() Tomi Valkeinen
2010-02-08 15:57               ` Tomi Valkeinen
2010-02-08 15:57               ` [PATCH 08/17] OMAP: DSS2: move enable/disable_channel to overlay manager Tomi Valkeinen
2010-02-08 15:57                 ` Tomi Valkeinen
2010-02-08 15:57                 ` [PATCH 09/17] OMAP: DSS2: move get_resolution() Tomi Valkeinen
2010-02-08 15:57                   ` Tomi Valkeinen
2010-02-08 15:57                   ` [PATCH 10/17] OMAP: DSS2: move get_recommended_bpp() Tomi Valkeinen
2010-02-08 15:57                     ` Tomi Valkeinen
2010-02-08 15:57                     ` [PATCH 11/17] OMAP: DSS2: move enable/get_te() Tomi Valkeinen
2010-02-08 15:57                       ` Tomi Valkeinen
2010-02-08 15:57                       ` [PATCH 12/17] OMAP: DSS2: move set/get_update_mode() Tomi Valkeinen
2010-02-08 15:57                         ` Tomi Valkeinen
2010-02-08 15:57                         ` [PATCH 13/17] OMAP: DSS2: move update() and sync() Tomi Valkeinen
2010-02-08 15:57                           ` Tomi Valkeinen
2010-02-08 15:57                           ` [PATCH 14/17] OMAP: DSS2: move enable/disable/suspend/resume Tomi Valkeinen
2010-02-08 15:57                             ` Tomi Valkeinen
2010-02-08 15:57                             ` [PATCH 15/17] OMAP: DSS2: move set/get_wss() Tomi Valkeinen
2010-02-08 15:57                               ` Tomi Valkeinen
2010-02-08 15:57                               ` [PATCH 16/17] OMAP: DSS2: move timing functions Tomi Valkeinen
2010-02-08 15:57                                 ` Tomi Valkeinen
2010-02-08 15:57                                 ` Tomi Valkeinen [this message]
2010-02-08 15:57                                   ` [PATCH 17/17] OMAP: DSS2: DSI: Add VC support for update Tomi Valkeinen
2010-02-09 10:15                             ` [PATCH 14/17] OMAP: DSS2: move enable/disable/suspend/resume Grazvydas Ignotas
2010-02-09 10:15                               ` Grazvydas Ignotas
2010-02-09 12:12                               ` Tomi Valkeinen
2010-02-09 12:12                                 ` Tomi Valkeinen
2010-02-13 15:34 ` [PATCH 00/17] OMAP DSS2 model restructuring Grazvydas Ignotas
2010-02-13 15:34   ` Grazvydas Ignotas
2010-02-15  7:45   ` Tomi Valkeinen
2010-02-15  7:45     ` Tomi Valkeinen

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=1265644661-3694-18-git-send-email-tomi.valkeinen@nokia.com \
    --to=tomi.valkeinen@nokia.com \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.