Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1540658

[RFC][PATCH 4/5 v3] drm/bridge: adv7511: Rework adv7511_power_on/off() so they can be reused internally

Path csiph.com!news.mixmin.net!news.unit0.net!news.panservice.it!bofh.it!news.nic.it!robomod
From John Stultz <john.stultz@linaro.org>
Newsgroups linux.kernel
Subject [RFC][PATCH 4/5 v3] drm/bridge: adv7511: Rework adv7511_power_on/off() so they can be reused internally
Date Mon, 12 Dec 2016 22:10:02 +0100
Message-ID <sNG1c-R8-33@gated-at.bofh.it> (permalink)
References <sNG1b-R8-5@gated-at.bofh.it>
Dkim-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=LAT3cokR6pRKZ+T3W9X8vh7mdESbDVTww0VYuBH1ZCw=; b=aGj0kRPzeVHLqhLkVhDScGlJs/wgRbhhasFCgYpDanh9tP4Xr00RGkSLu7hFaJ0ftM 5KWzX4NUHwSAyxihS/qIdPe2KiMNN9ieVbnLCASTp/fI/GsesJEoNph2WtepbjxC1gc0 wl1HZVOSMbeFaxWE4C2jOL1V+yLD2QIEPqBKE=
X-Google-Dkim-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=LAT3cokR6pRKZ+T3W9X8vh7mdESbDVTww0VYuBH1ZCw=; b=IVc1KmSmOl8cqciaeQYmmMsKgkzF2wjsJzIWJRG68FjNKBF8irYz40sx9WoMQV8Gws smY3zklIhxihGPOb19k3yY/ebnV+MCw58IaKab2P7y+pj/o/b/PKY9cEqmkUHmaMlZ6M /8PpLM/zvw0FW+vGvolQ1Ijskji7m/kO9FS0YP6M41f/WGFZ1GxzMcWvKUyHWByoU0PZ WpiCLJixkbpHIxETH5KbyBbcXhXnQx3w1/TboTls4lT2Ws8YQMqL5YZY1g+rh+vakcHP RBWAgbu/vOE+ykIFk4iwFbd4TYN0hp3l2dxmVhtgSVlDoRaQzyILUpbGJCZ8pLdNe53x Fw9g==
X-Gm-Message-State AKaTC031ujdqsNf2EVkKCv16ArS8VFDIJA8JYRVVlTOOZlJ+vSePrze84a9UqlTKwZZmGGc5
X-Received by 10.99.107.4 with SMTP id g4mr172364115pgc.108.1481576449079; Mon, 12 Dec 2016 13:00:49 -0800 (PST)
X-Mailer git-send-email 2.7.4
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 67
Organization linux.* mail to news gateway
X-Original-Cc John Stultz <john.stultz@linaro.org>, David Airlie <airlied@linux.ie>, Archit Taneja <architt@codeaurora.org>, Wolfram Sang <wsa+renesas@sang-engineering.com>, Lars-Peter Clausen <lars@metafoo.de>, Laurent Pinchart <laurent.pinchart@ideasonboard.com>, dri-devel@lists.freedesktop.org
X-Original-Date Mon, 12 Dec 2016 13:00:40 -0800
X-Original-Message-ID <1481576441-23529-5-git-send-email-john.stultz@linaro.org>
X-Original-References <1481576441-23529-1-git-send-email-john.stultz@linaro.org>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1540658

Show key headers only | View raw


In chasing down issues with EDID probing, I found some
duplicated but incomplete logic used to power the chip on and
off.

This patch refactors the adv7511_power_on/off functions, so
they can be used for internal needs.

Cc: David Airlie <airlied@linux.ie>
Cc: Archit Taneja <architt@codeaurora.org>
Cc: Wolfram Sang <wsa+renesas@sang-engineering.com>
Cc: Lars-Peter Clausen <lars@metafoo.de>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: dri-devel@lists.freedesktop.org
Signed-off-by: John Stultz <john.stultz@linaro.org>
---
 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
index 4b90975..dbdb71c 100644
--- a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
+++ b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
@@ -325,7 +325,7 @@ static void adv7511_set_link_config(struct adv7511 *adv7511,
 	adv7511->rgb = config->input_colorspace == HDMI_COLORSPACE_RGB;
 }
 
-static void adv7511_power_on(struct adv7511 *adv7511)
+static void __adv7511_power_on(struct adv7511 *adv7511)
 {
 	adv7511->current_edid_segment = -1;
 
@@ -359,24 +359,30 @@ static void adv7511_power_on(struct adv7511 *adv7511)
 	 * Most of the registers are reset during power down or when HPD is low.
 	 */
 	regcache_sync(adv7511->regmap);
+}
 
+static void adv7511_power_on(struct adv7511 *adv7511)
+{
+	__adv7511_power_on(adv7511);
 	if (adv7511->type == ADV7533)
 		adv7533_dsi_power_on(adv7511);
-
 	adv7511->powered = true;
 }
 
-static void adv7511_power_off(struct adv7511 *adv7511)
+static void __adv7511_power_off(struct adv7511 *adv7511)
 {
 	/* TODO: setup additional power down modes */
 	regmap_update_bits(adv7511->regmap, ADV7511_REG_POWER,
 			   ADV7511_POWER_POWER_DOWN,
 			   ADV7511_POWER_POWER_DOWN);
 	regcache_mark_dirty(adv7511->regmap);
+}
 
+static void adv7511_power_off(struct adv7511 *adv7511)
+{
+	__adv7511_power_off(adv7511);
 	if (adv7511->type == ADV7533)
 		adv7533_dsi_power_off(adv7511);
-
 	adv7511->powered = false;
 }
 
-- 
2.7.4

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

[RFC][PATCH 4/5 v3] drm/bridge: adv7511: Rework adv7511_power_on/off() so they can be reused internally John Stultz <john.stultz@linaro.org> - 2016-12-12 22:10 +0100

csiph-web