From mboxrd@z Thu Jan 1 00:00:00 1970 From: Greg Kroah-Hartman Subject: [PATCH 4.9 79/87] drm/bridge: adv7511: Rework adv7511_power_on/off() so they can be reused internally Date: Mon, 13 Nov 2017 13:56:36 +0100 Message-ID: <20171113125622.356155497@linuxfoundation.org> References: <20171113125615.304035578@linuxfoundation.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3069C89CCB for ; Mon, 13 Nov 2017 13:02:37 +0000 (UTC) In-Reply-To: <20171113125615.304035578@linuxfoundation.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: linux-kernel@vger.kernel.org Cc: Nhan Nguyen , David Airlie , Greg Kroah-Hartman , dri-devel@lists.freedesktop.org, stable@vger.kernel.org, Wolfram Sang , Laurent Pinchart List-Id: dri-devel@lists.freedesktop.org NC45LXN0YWJsZSByZXZpZXcgcGF0Y2guICBJZiBhbnlvbmUgaGFzIGFueSBvYmplY3Rpb25zLCBw bGVhc2UgbGV0IG1lIGtub3cuCgotLS0tLS0tLS0tLS0tLS0tLS0KCkZyb206IEpvaG4gU3R1bHR6 IDxqb2huLnN0dWx0ekBsaW5hcm8ub3JnPgoKY29tbWl0IDY1MWU0NzY5YmEyYTlmMjBjNGI4YTgy M2FlMjcyN2JmN2ZhOWM5ZjAgdXBzdHJlYW0uCgpJbiBjaGFzaW5nIGRvd24gaXNzdWVzIHdpdGgg RURJRCBwcm9iaW5nLCBJIGZvdW5kIHNvbWUKZHVwbGljYXRlZCBidXQgaW5jb21wbGV0ZSBsb2dp YyB1c2VkIHRvIHBvd2VyIHRoZSBjaGlwIG9uIGFuZApvZmYuCgpUaGlzIHBhdGNoIHJlZmFjdG9y cyB0aGUgYWR2NzUxMV9wb3dlcl9vbi9vZmYgZnVuY3Rpb25zLCBzbwp0aGV5IGNhbiBiZSB1c2Vk IGZvciBpbnRlcm5hbCBuZWVkcy4KCkNjOiBEYXZpZCBBaXJsaWUgPGFpcmxpZWRAbGludXguaWU+ CkNjOiBBcmNoaXQgVGFuZWphIDxhcmNoaXR0QGNvZGVhdXJvcmEub3JnPgpDYzogV29sZnJhbSBT YW5nIDx3c2ErcmVuZXNhc0BzYW5nLWVuZ2luZWVyaW5nLmNvbT4KQ2M6IExhcnMtUGV0ZXIgQ2xh dXNlbiA8bGFyc0BtZXRhZm9vLmRlPgpDYzogTGF1cmVudCBQaW5jaGFydCA8bGF1cmVudC5waW5j aGFydEBpZGVhc29uYm9hcmQuY29tPgpDYzogZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpTaWduZWQtb2ZmLWJ5OiBKb2huIFN0dWx0eiA8am9obi5zdHVsdHpAbGluYXJvLm9yZz4KU2ln bmVkLW9mZi1ieTogQXJjaGl0IFRhbmVqYSA8YXJjaGl0dEBjb2RlYXVyb3JhLm9yZz4KTGluazog aHR0cDovL3BhdGNod29yay5mcmVlZGVza3RvcC5vcmcvcGF0Y2gvbXNnaWQvMTQ4NDYxNDM3Mi0x NTM0Mi01LWdpdC1zZW5kLWVtYWlsLWpvaG4uc3R1bHR6QGxpbmFyby5vcmcKU2lnbmVkLW9mZi1i eTogTmhhbiBOZ3V5ZW4gPG5oYW4ubmd1eWVuLnliQHJlbmVzYXMuY29tPgpTaWduZWQtb2ZmLWJ5 OiBHcmVnIEtyb2FoLUhhcnRtYW4gPGdyZWdraEBsaW51eGZvdW5kYXRpb24ub3JnPgoKLS0tCiBk cml2ZXJzL2dwdS9kcm0vYnJpZGdlL2Fkdjc1MTEvYWR2NzUxMV9kcnYuYyB8ICAgMTUgKysrKysr KysrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMo LSkKCi0tLSBhL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYWR2NzUxMS9hZHY3NTExX2Rydi5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYWR2NzUxMS9hZHY3NTExX2Rydi5jCkBAIC0zMjUs NyArMzI1LDcgQEAgc3RhdGljIHZvaWQgYWR2NzUxMV9zZXRfbGlua19jb25maWcoc3RydQogCWFk djc1MTEtPnJnYiA9IGNvbmZpZy0+aW5wdXRfY29sb3JzcGFjZSA9PSBIRE1JX0NPTE9SU1BBQ0Vf UkdCOwogfQogCi1zdGF0aWMgdm9pZCBhZHY3NTExX3Bvd2VyX29uKHN0cnVjdCBhZHY3NTExICph ZHY3NTExKQorc3RhdGljIHZvaWQgX19hZHY3NTExX3Bvd2VyX29uKHN0cnVjdCBhZHY3NTExICph ZHY3NTExKQogewogCWFkdjc1MTEtPmN1cnJlbnRfZWRpZF9zZWdtZW50ID0gLTE7CiAKQEAgLTM1 NCw2ICszNTQsMTEgQEAgc3RhdGljIHZvaWQgYWR2NzUxMV9wb3dlcl9vbihzdHJ1Y3QgYWR2Nwog CXJlZ21hcF91cGRhdGVfYml0cyhhZHY3NTExLT5yZWdtYXAsIEFEVjc1MTFfUkVHX1BPV0VSMiwK IAkJCSAgIEFEVjc1MTFfUkVHX1BPV0VSMl9IUERfU1JDX01BU0ssCiAJCQkgICBBRFY3NTExX1JF R19QT1dFUjJfSFBEX1NSQ19OT05FKTsKK30KKworc3RhdGljIHZvaWQgYWR2NzUxMV9wb3dlcl9v bihzdHJ1Y3QgYWR2NzUxMSAqYWR2NzUxMSkKK3sKKwlfX2Fkdjc1MTFfcG93ZXJfb24oYWR2NzUx MSk7CiAKIAkvKgogCSAqIE1vc3Qgb2YgdGhlIHJlZ2lzdGVycyBhcmUgcmVzZXQgZHVyaW5nIHBv d2VyIGRvd24gb3Igd2hlbiBIUEQgaXMgbG93LgpAQCAtMzYyLDIxICszNjcsMjMgQEAgc3RhdGlj IHZvaWQgYWR2NzUxMV9wb3dlcl9vbihzdHJ1Y3QgYWR2NwogCiAJaWYgKGFkdjc1MTEtPnR5cGUg PT0gQURWNzUzMykKIAkJYWR2NzUzM19kc2lfcG93ZXJfb24oYWR2NzUxMSk7Ci0KIAlhZHY3NTEx LT5wb3dlcmVkID0gdHJ1ZTsKIH0KIAotc3RhdGljIHZvaWQgYWR2NzUxMV9wb3dlcl9vZmYoc3Ry dWN0IGFkdjc1MTEgKmFkdjc1MTEpCitzdGF0aWMgdm9pZCBfX2Fkdjc1MTFfcG93ZXJfb2ZmKHN0 cnVjdCBhZHY3NTExICphZHY3NTExKQogewogCS8qIFRPRE86IHNldHVwIGFkZGl0aW9uYWwgcG93 ZXIgZG93biBtb2RlcyAqLwogCXJlZ21hcF91cGRhdGVfYml0cyhhZHY3NTExLT5yZWdtYXAsIEFE Vjc1MTFfUkVHX1BPV0VSLAogCQkJICAgQURWNzUxMV9QT1dFUl9QT1dFUl9ET1dOLAogCQkJICAg QURWNzUxMV9QT1dFUl9QT1dFUl9ET1dOKTsKIAlyZWdjYWNoZV9tYXJrX2RpcnR5KGFkdjc1MTEt PnJlZ21hcCk7Cit9CiAKK3N0YXRpYyB2b2lkIGFkdjc1MTFfcG93ZXJfb2ZmKHN0cnVjdCBhZHY3 NTExICphZHY3NTExKQoreworCV9fYWR2NzUxMV9wb3dlcl9vZmYoYWR2NzUxMSk7CiAJaWYgKGFk djc1MTEtPnR5cGUgPT0gQURWNzUzMykKIAkJYWR2NzUzM19kc2lfcG93ZXJfb2ZmKGFkdjc1MTEp OwotCiAJYWR2NzUxMS0+cG93ZXJlZCA9IGZhbHNlOwogfQogCgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmkt ZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754910AbdKMNCn (ORCPT ); Mon, 13 Nov 2017 08:02:43 -0500 Received: from mail.linuxfoundation.org ([140.211.169.12]:51246 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754003AbdKMNCi (ORCPT ); Mon, 13 Nov 2017 08:02:38 -0500 From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, David Airlie , Archit Taneja , Wolfram Sang , Lars-Peter Clausen , Laurent Pinchart , dri-devel@lists.freedesktop.org, John Stultz , Nhan Nguyen Subject: [PATCH 4.9 79/87] drm/bridge: adv7511: Rework adv7511_power_on/off() so they can be reused internally Date: Mon, 13 Nov 2017 13:56:36 +0100 Message-Id: <20171113125622.356155497@linuxfoundation.org> X-Mailer: git-send-email 2.15.0 In-Reply-To: <20171113125615.304035578@linuxfoundation.org> References: <20171113125615.304035578@linuxfoundation.org> User-Agent: quilt/0.65 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.9-stable review patch. If anyone has any objections, please let me know. ------------------ From: John Stultz commit 651e4769ba2a9f20c4b8a823ae2727bf7fa9c9f0 upstream. 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 Cc: Archit Taneja Cc: Wolfram Sang Cc: Lars-Peter Clausen Cc: Laurent Pinchart Cc: dri-devel@lists.freedesktop.org Signed-off-by: John Stultz Signed-off-by: Archit Taneja Link: http://patchwork.freedesktop.org/patch/msgid/1484614372-15342-5-git-send-email-john.stultz@linaro.org Signed-off-by: Nhan Nguyen Signed-off-by: Greg Kroah-Hartman --- drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) --- 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(stru 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; @@ -354,6 +354,11 @@ static void adv7511_power_on(struct adv7 regmap_update_bits(adv7511->regmap, ADV7511_REG_POWER2, ADV7511_REG_POWER2_HPD_SRC_MASK, ADV7511_REG_POWER2_HPD_SRC_NONE); +} + +static void adv7511_power_on(struct adv7511 *adv7511) +{ + __adv7511_power_on(adv7511); /* * Most of the registers are reset during power down or when HPD is low. @@ -362,21 +367,23 @@ static void adv7511_power_on(struct adv7 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; }