linux-tegra.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mark Zhang <markz-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
To: thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	daniel-/w4YWyX8dFk@public.gmane.org
Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
	Mark Zhang <markz-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Subject: [PATCH v2 07/12] drm/panel: Add panel func: idle/busy
Date: Wed, 1 Jul 2015 16:21:50 +0800	[thread overview]
Message-ID: <1435738915-31973-8-git-send-email-markz@nvidia.com> (raw)
In-Reply-To: <1435738915-31973-1-git-send-email-markz-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>

The "idle" function of a drm panel is used to tell panel
there are no more frames coming in and it should remain the
last frame it gets.
Normally this only makes sense for smart panels which has
internal framebuffer.

The "busy" function is opposite to "idle".

Signed-off-by: Mark Zhang <markz-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
---
 include/drm/drm_panel.h |   18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h
index e53f48aa070f..77da292ad2fb 100644
--- a/include/drm/drm_panel.h
+++ b/include/drm/drm_panel.h
@@ -70,6 +70,8 @@ struct display_timing;
  * the panel. This is the job of the .unprepare() function.
  */
 struct drm_panel_funcs {
+	int (*idle)(struct drm_panel *panel);
+	int (*busy)(struct drm_panel *panel);
 	int (*disable)(struct drm_panel *panel);
 	int (*unprepare)(struct drm_panel *panel);
 	int (*prepare)(struct drm_panel *panel);
@@ -89,6 +91,22 @@ struct drm_panel {
 	struct list_head list;
 };
 
+static inline int drm_panel_idle(struct drm_panel *panel)
+{
+	if (panel && panel->funcs && panel->funcs->idle)
+		return panel->funcs->idle(panel);
+
+	return panel ? -ENOSYS : -EINVAL;
+}
+
+static inline int drm_panel_busy(struct drm_panel *panel)
+{
+	if (panel && panel->funcs && panel->funcs->busy)
+		return panel->funcs->busy(panel);
+
+	return panel ? -ENOSYS : -EINVAL;
+}
+
 static inline int drm_panel_unprepare(struct drm_panel *panel)
 {
 	if (panel && panel->funcs && panel->funcs->unprepare)
-- 
1.7.9.5

  parent reply	other threads:[~2015-07-01  8:21 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-01  8:21 [PATCH v2 00/12] Tegra: Add DC one-shot support Mark Zhang
     [not found] ` <1435738915-31973-1-git-send-email-markz-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-07-01  8:21   ` [PATCH v2 01/12] drm: panel: Add a new private mode flag: DRM_PANEL_FLAG_PREFER_ONE_SHOT Mark Zhang
2015-07-01  8:54     ` Daniel Vetter
     [not found]       ` <20150701085437.GB24055-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2015-07-01 13:01         ` Mark Zhang
2015-07-01  8:21   ` [PATCH v2 02/12] drm: panel: Add one-shot flag to Sharp lq101r1sx01 driver Mark Zhang
2015-07-01  8:21   ` [PATCH v2 03/12] drm: panel: Turn on TE(Tearing Effect) on Sharp lq101r1sx01 Mark Zhang
2015-07-01  8:21   ` [PATCH v2 04/12] drm: panel: Add DRM panel private mode flag: TE polarity Mark Zhang
2015-07-01  8:21   ` [PATCH v2 05/12] drm: panel: Set TE polarity flag in Sharp lq101r1sx01 driver Mark Zhang
2015-07-01  8:21   ` [PATCH v2 06/12] drm/tegra: Set NC(Non-contiguous) mode to dc for one-shot Mark Zhang
2015-07-01  8:21   ` Mark Zhang [this message]
2015-07-01  8:21   ` [PATCH v2 08/12] drm: dsi: Add "enter idle" & "exit idle" dcs functions Mark Zhang
2015-07-01  9:08     ` Varka Bhadram
     [not found]       ` <5593AE18.2070306-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-07-01  9:17         ` Mark Zhang
2015-07-01  8:21   ` [PATCH v2 09/12] drm: panel: Add idle/busy in Sharp lq101r1sx01 driver Mark Zhang
2015-07-01  8:21   ` [PATCH v2 10/12] drm/tegra: Suspend dc/dsi/panel in one-shot mode Mark Zhang
     [not found]     ` <1435738915-31973-11-git-send-email-markz-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-07-01  9:00       ` Daniel Vetter
     [not found]         ` <20150701090005.GC24055-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2015-07-01  9:03           ` Mark Zhang
2015-07-01  8:21   ` [PATCH v2 11/12] drm/tegra: dsi: Set connector DPMS state when enable/disable Mark Zhang
2015-07-01  8:21   ` [PATCH v2 12/12] JUST FOR TEST: Add one-shot trigger to update display Mark Zhang
     [not found]     ` <1435738915-31973-13-git-send-email-markz-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-07-01  8:36       ` Daniel Vetter
     [not found]         ` <20150701083617.GF30960-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2015-07-01  8:46           ` Daniel Vetter
     [not found]             ` <20150701084511.GA24055-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2015-07-01 12:51               ` Mark Zhang
2015-07-01  9:01           ` Mark Zhang
     [not found]             ` <5593AC80.10801-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-07-01 10:34               ` Daniel Vetter
     [not found]                 ` <20150701103457.GD24055-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2015-07-01 12:43                   ` Mark Zhang
     [not found]                     ` <5593E055.5050305-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-07-01 14:55                       ` Daniel Vetter
     [not found]                         ` <20150701145535.GW23343-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2015-07-03  7:57                           ` Mark Zhang
     [not found]                             ` <55964083.60001-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-07-03  8:03                               ` Daniel Vetter
     [not found]                                 ` <20150703080328.GI23343-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2015-07-03  8:05                                   ` Mark Zhang

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=1435738915-31973-8-git-send-email-markz@nvidia.com \
    --to=markz-ddmlm1+adcrqt0dzr+alfa@public.gmane.org \
    --cc=daniel-/w4YWyX8dFk@public.gmane.org \
    --cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    --cc=linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.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 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).