From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.3 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 69025C35679 for ; Mon, 24 Feb 2020 10:45:00 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 2FD6220828 for ; Mon, 24 Feb 2020 10:45:00 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2FD6220828 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=lst.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 980D96E427; Mon, 24 Feb 2020 10:44:59 +0000 (UTC) Received: from verein.lst.de (verein.lst.de [213.95.11.211]) by gabe.freedesktop.org (Postfix) with ESMTPS id C0E4A6E427 for ; Mon, 24 Feb 2020 10:44:57 +0000 (UTC) Received: by verein.lst.de (Postfix, from userid 2005) id 18C1568AFE; Mon, 24 Feb 2020 11:44:53 +0100 (CET) Date: Mon, 24 Feb 2020 11:44:52 +0100 From: Torsten Duwe To: Icenowy Zheng , Thomas Zimmermann Subject: Re: [PATCH] drm/bridge: analogix-anx6345: fix set of link bandwidth Message-ID: <20200224104452.GA31184@lst.de> References: <20200221165127.813325-1-icenowy@aosc.io> <20200221171328.GC6928@lst.de> <1E7BDB0F-639B-42BB-A4B4-A4C8CF94EBE0@aosc.io> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1E7BDB0F-639B-42BB-A4B4-A4C8CF94EBE0@aosc.io> User-Agent: Mutt/1.5.17 (2007-11-01) X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Stephen Rothwell , Jernej Skrabec , Jonas Karlman , Neil Armstrong , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Vasily Khoruzhick , Andrzej Hajda , Laurent Pinchart , Sam Ravnborg , Maxime Ripard Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" T24gU2F0LCBGZWIgMjIsIDIwMjAgYXQgMTA6NDM6MDJBTSArMDgwMCwgSWNlbm93eSBaaGVuZyB3 cm90ZToKPiAKPiAKPiDkuo4gMjAyMOW5tDLmnIgyMuaXpSBHTVQrMDg6MDAg5LiK5Y2IMToxMzoy OCwgVG9yc3RlbiBEdXdlIDxkdXdlQGxzdC5kZT4g5YaZ5YiwOgo+ID5PbiBTYXQsIEZlYiAyMiwg MjAyMCBhdCAxMjo1MToyN0FNICswODAwLCBJY2Vub3d5IFpoZW5nIHdyb3RlOgo+ID4+IEN1cnJl bnQgY29kZSB0cmllcyB0byBzdG9yZSB0aGUgbGluayByYXRlIChpbiBicHMsIHdoaWNoIGlzIGEg YmlnCj4gPj4gbnVtYmVyKSBpbiBhIHU4LCB3aGljaCBzdXJlbHkgb3ZlcmZsb3cuIFRoZW4gaXQn cyBjb252ZXJ0ZWQgYmFjayB0bwo+ID4+IGJhbmR3aWR0aCBjb2RlICh3aGljaCBpcyB0aHVzIDAp IGFuZCB3cml0dGVuIHRvIHRoZSBjaGlwLgo+ID4+IAo+ID4+IFRoZSBjb2RlIHNvbWV0aW1lcyB3 b3JrcyBiZWNhdXNlIHRoZSBjaGlwIHdpbGwgYXV0b21hdGljYWxseSBmYWxsYmFjawo+ID50bwo+ ID4+IHRoZSBsb3dlc3QgcG9zc2libGUgRFAgbGluayByYXRlICgxLjYyR2Jwcykgd2hlbiBnZXQg dGhlIGludmFsaWQKPiA+dmFsdWUuCj4gPj4gSG93ZXZlciwgb24gdGhlIGVEUCBwYW5lbCBvZiBP bGltZXggVEVSRVMtSSwgd2hpY2ggd2FudHMgMi43R2Jwcwo+ID5saW5rLAo+ID4+IGl0IGZhaWxl ZC4KPiA+PiAKPiA+PiBBcyB3ZSBoYWQgYWxyZWFkeSByZWFkIHRoZSBsaW5rIGJhbmR3aWR0aCBh cyBiYW5kd2lkdGggY29kZSBpbgo+ID5lYXJsaWVyCj4gPj4gY29kZSAodG8gY2hlY2sgd2hldGhl ciBpdCBpcyBzdXBwb3J0ZWQpLCB1c2UgaXQgd2hlbiBzZXR0aW5nCj4gPmJhbmR3aWR0aCwKPiA+ PiBpbnN0ZWFkIG9mIGNvbnZlcnRpbmcgaXQgdG8gbGluayByYXRlIGFuZCB0aGVuIGNvbnZlcnRp bmcgYmFjay4KPiA+PiAKPiA+PiBGaXhlczogZTFjZmY4MmMxMDk3ICgiZHJtL2JyaWRnZTogZml4 IGFueDYzNDUgY29tcGlsYXRpb24gZm9yIHY1LjUiKQo+ID4+IFNpZ25lZC1vZmYtYnk6IEljZW5v d3kgWmhlbmcgPGljZW5vd3lAYW9zYy5pbz4KPiA+PiAtLS0KPiA+PiAgZHJpdmVycy9ncHUvZHJt L2JyaWRnZS9hbmFsb2dpeC9hbmFsb2dpeC1hbng2MzQ1LmMgfCAzICstLQo+ID4+ICAxIGZpbGUg Y2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDIgZGVsZXRpb25zKC0pCj4gPj4gCj4gPj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYW5hbG9naXgvYW5hbG9naXgtYW54NjM0NS5j Cj4gPmIvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hbmFsb2dpeC9hbmFsb2dpeC1hbng2MzQ1LmMK PiA+PiBpbmRleCA1NmY1NWM1M2FiZmQuLjJkZmEyZmQyYTIzYiAxMDA2NDQKPiA+PiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vYnJpZGdlL2FuYWxvZ2l4L2FuYWxvZ2l4LWFueDYzNDUuYwo+ID4+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYW5hbG9naXgvYW5hbG9naXgtYW54NjM0NS5jCj4g Pj4gQEAgLTIxMCw4ICsyMTAsNyBAQCBzdGF0aWMgaW50IGFueDYzNDVfZHBfbGlua190cmFpbmlu ZyhzdHJ1Y3QKPiA+YW54NjM0NSAqYW54NjM0NSkKPiA+PiAgCWlmIChlcnIpCj4gPj4gIAkJcmV0 dXJuIGVycjsKPiA+PiAgCj4gPj4gLQlkcGNkWzBdID0gZHJtX2RwX21heF9saW5rX3JhdGUoYW54 NjM0NS0+ZHBjZCk7Cj4gPj4gLQlkcGNkWzBdID0gZHJtX2RwX2xpbmtfcmF0ZV90b19id19jb2Rl KGRwY2RbMF0pOwo+ID4+ICsJZHBjZFswXSA9IGRwX2J3Owo+ID4KPiA+V2h5IGRvIHlvdSBtYWtl IHRoaXMgYXNzaWdubWVudCBhbmQgbm90IHVzZSBkcF9idyBkaXJlY3RseSBpbiB0aGUgY2FsbD8K PiAKPiBCZWNhdXNlIHRoZSBkcGNkIGFycmF5IGlzIHRoZW4gd3JpdHRlbiBhcyBhIGNvbnRpbm91 cyBhcnJheQo+IGJhY2sgdG8gRFBDRC4KCkJ1dCB0aGUgY3VycmVudCBjb2RlIG5ldmVyIGNoYW5n ZXMgdGhpcyB2YWx1ZT8KQW55d2F5LCBhcyB0aGlzIG1pZ2h0IGNoYW5nZSBpbiB0aGUgZnV0dXJl LCBJIHN1cHBvcnQgeW91ciB2ZXJzaW9uOwpJIHdhbnQgdG8gc2VlIHRoaXMgZml4ZWQuCgpSZXZp ZXdlZC1ieTogVG9yc3RlbiBEdXdlIDxkdXdlQHN1c2UuZGU+CkZpeGVzOiBlMWNmZjgyYzEwOTcg KCJkcm0vYnJpZGdlOiBmaXggYW54NjM0NSBjb21waWxhdGlvbiBmb3IgdjUuNSIpCkNjOiBNYXhp bWUgUmlwYXJkIDxtYXhpbWVAY2Vybm8udGVjaD4KQ2M6IFRvcnN0ZW4gRHV3ZSA8ZHV3ZUBsc3Qu ZGU+CkNjOiBTYW0gUmF2bmJvcmcgPHNhbUByYXZuYm9yZy5vcmc+CkNjOiBMaW51cyBXYWxsZWlq IDxsaW51cy53YWxsZWlqQGxpbmFyby5vcmc+CkNjOiBUaG9tYXMgWmltbWVybWFubiA8dHppbW1l cm1hbm5Ac3VzZS5kZT4KQ2M6IEljZW5vd3kgWmhlbmcgPGljZW5vd3lAYW9zYy5pbz4KQ2M6IFN0 ZXBoZW4gUm90aHdlbGwgPHNmckBjYW5iLmF1dWcub3JnLmF1PgoKPiA+Cj4gPj4gIAllcnIgPSBy ZWdtYXBfd3JpdGUoYW54NjM0NS0+bWFwW0kyQ19JRFhfRFBUWF0sCj4gPj4gIAkJCSAgIFNQX0RQ X01BSU5fTElOS19CV19TRVRfUkVHLCBkcGNkWzBdKTsKPiA+ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5eXl5eXgo+ID4+ICAJaWYgKGVycikK PiA+PiAtLSAKPiA+PiAyLjI0LjEKPiA+Cj4gPkJUVywgbXkgdmVyc2lvbiBpcyBvbmx5IGEgYml0 IG1vcmUgdmVyYm9zZToKPiA+Cj4gPmh0dHBzOi8vcGF0Y2h3b3JrLmZyZWVkZXNrdG9wLm9yZy9w YXRjaC8zNTQzNDQvCj4gPgo+ID4JVG9yc3Rlbgo+IAo+IC0tIAo+IOS9v+eUqCBLLTkgTWFpbCDl j5HpgIHoh6rmiJHnmoRBbmRyb2lk6K6+5aSH44CCCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2RyaS1kZXZlbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.3 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0824EC3567B for ; Mon, 24 Feb 2020 10:44:59 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id D704320732 for ; Mon, 24 Feb 2020 10:44:58 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727461AbgBXKo5 (ORCPT ); Mon, 24 Feb 2020 05:44:57 -0500 Received: from verein.lst.de ([213.95.11.211]:37269 "EHLO verein.lst.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726509AbgBXKo5 (ORCPT ); Mon, 24 Feb 2020 05:44:57 -0500 Received: by verein.lst.de (Postfix, from userid 2005) id 18C1568AFE; Mon, 24 Feb 2020 11:44:53 +0100 (CET) Date: Mon, 24 Feb 2020 11:44:52 +0100 From: Torsten Duwe To: Icenowy Zheng , Thomas Zimmermann Cc: Andrzej Hajda , Neil Armstrong , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maxime Ripard , Vasily Khoruzhick , Sam Ravnborg , Linus Walleij , Stephen Rothwell , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] drm/bridge: analogix-anx6345: fix set of link bandwidth Message-ID: <20200224104452.GA31184@lst.de> References: <20200221165127.813325-1-icenowy@aosc.io> <20200221171328.GC6928@lst.de> <1E7BDB0F-639B-42BB-A4B4-A4C8CF94EBE0@aosc.io> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1E7BDB0F-639B-42BB-A4B4-A4C8CF94EBE0@aosc.io> User-Agent: Mutt/1.5.17 (2007-11-01) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Feb 22, 2020 at 10:43:02AM +0800, Icenowy Zheng wrote: > > > 于 2020年2月22日 GMT+08:00 上午1:13:28, Torsten Duwe 写到: > >On Sat, Feb 22, 2020 at 12:51:27AM +0800, Icenowy Zheng wrote: > >> Current code tries to store the link rate (in bps, which is a big > >> number) in a u8, which surely overflow. Then it's converted back to > >> bandwidth code (which is thus 0) and written to the chip. > >> > >> The code sometimes works because the chip will automatically fallback > >to > >> the lowest possible DP link rate (1.62Gbps) when get the invalid > >value. > >> However, on the eDP panel of Olimex TERES-I, which wants 2.7Gbps > >link, > >> it failed. > >> > >> As we had already read the link bandwidth as bandwidth code in > >earlier > >> code (to check whether it is supported), use it when setting > >bandwidth, > >> instead of converting it to link rate and then converting back. > >> > >> Fixes: e1cff82c1097 ("drm/bridge: fix anx6345 compilation for v5.5") > >> Signed-off-by: Icenowy Zheng > >> --- > >> drivers/gpu/drm/bridge/analogix/analogix-anx6345.c | 3 +-- > >> 1 file changed, 1 insertion(+), 2 deletions(-) > >> > >> diff --git a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c > >b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c > >> index 56f55c53abfd..2dfa2fd2a23b 100644 > >> --- a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c > >> +++ b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c > >> @@ -210,8 +210,7 @@ static int anx6345_dp_link_training(struct > >anx6345 *anx6345) > >> if (err) > >> return err; > >> > >> - dpcd[0] = drm_dp_max_link_rate(anx6345->dpcd); > >> - dpcd[0] = drm_dp_link_rate_to_bw_code(dpcd[0]); > >> + dpcd[0] = dp_bw; > > > >Why do you make this assignment and not use dp_bw directly in the call? > > Because the dpcd array is then written as a continous array > back to DPCD. But the current code never changes this value? Anyway, as this might change in the future, I support your version; I want to see this fixed. Reviewed-by: Torsten Duwe Fixes: e1cff82c1097 ("drm/bridge: fix anx6345 compilation for v5.5") Cc: Maxime Ripard Cc: Torsten Duwe Cc: Sam Ravnborg Cc: Linus Walleij Cc: Thomas Zimmermann Cc: Icenowy Zheng Cc: Stephen Rothwell > > > >> err = regmap_write(anx6345->map[I2C_IDX_DPTX], > >> SP_DP_MAIN_LINK_BW_SET_REG, dpcd[0]); > > ^^^^^^ > >> if (err) > >> -- > >> 2.24.1 > > > >BTW, my version is only a bit more verbose: > > > >https://patchwork.freedesktop.org/patch/354344/ > > > > Torsten > > -- > 使用 K-9 Mail 发送自我的Android设备。