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=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,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 60E69C432C0 for ; Mon, 2 Dec 2019 17:05:52 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 34C2020848 for ; Mon, 2 Dec 2019 17:05:52 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="ugqFrXZt" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727823AbfLBRFv (ORCPT ); Mon, 2 Dec 2019 12:05:51 -0500 Received: from perceval.ideasonboard.com ([213.167.242.64]:37572 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727810AbfLBRFv (ORCPT ); Mon, 2 Dec 2019 12:05:51 -0500 Received: from pendragon.ideasonboard.com (81-175-216-236.bb.dnainternet.fi [81.175.216.236]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id EBCE5309; Mon, 2 Dec 2019 18:05:49 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1575306350; bh=aA+iKqe3Q9MVSZpTaAGoQxIb4KBP+2rQFU94GPK0fdk=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=ugqFrXZtGfggFHHPjHyDa9zVrmwi+8ZluUTZ3McNAGT756LiUHOiPz1khn6akZMb1 YQw87SJuquipznrjMdgHkG/b0uE6IEeZktcid/+sTaRTLb7bsr3JN+P+YPQDEtx9ne VM2FQ+e8eXOfg89mOIhkJmxjQ3XkKtIjp0aclcvg= Date: Mon, 2 Dec 2019 19:05:43 +0200 From: Laurent Pinchart To: Boris Brezillon Cc: dri-devel@lists.freedesktop.org, Lucas Stach , Chris Healy , Andrey Smirnov , Nikita Yushchenko , kernel@collabora.com, Daniel Vetter , Inki Dae , Joonyoung Shim , Seung-Woo Kim , Kyungmin Park , Thierry Reding , Sam Ravnborg , Philipp Zabel , Rob Clark , Andrzej Hajda , Neil Armstrong , Jonas Karlman , Jernej Skrabec , Rob Herring , Mark Rutland , devicetree@vger.kernel.org Subject: Re: [PATCH v3 13/21] drm/bridge: Add the drm_bridge_chain_get_prev_bridge() helper Message-ID: <20191202170543.GQ4929@pendragon.ideasonboard.com> References: <20191023154512.9762-1-boris.brezillon@collabora.com> <20191023154512.9762-14-boris.brezillon@collabora.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20191023154512.9762-14-boris.brezillon@collabora.com> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Hi Boris, Thank you for the patch. On Wed, Oct 23, 2019 at 05:45:04PM +0200, Boris Brezillon wrote: > Will be useful for bridge drivers that want to do bus format > negotiation with their neighbours. A general comment, I think the body of the commit message should be readable on its own, without the subject line. It may be a matter of personal taste. > Signed-off-by: Boris Brezillon Reviewed-by: Laurent Pinchart > --- > Changes in v3: > * Inline drm_bridge_chain_get_prev_bridge() > * Fix the doc > > Changes in v2: > * Fix the kerneldoc > * Drop the !bridge || !bridge->encoder check > --- > include/drm/drm_bridge.h | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) > > diff --git a/include/drm/drm_bridge.h b/include/drm/drm_bridge.h > index 2beb1ef9a733..3fb518494640 100644 > --- a/include/drm/drm_bridge.h > +++ b/include/drm/drm_bridge.h > @@ -526,6 +526,22 @@ drm_bridge_chain_get_next_bridge(struct drm_bridge *bridge) > return list_next_entry(bridge, chain_node); > } > > +/** > + * drm_bridge_chain_get_prev_bridge() - Get the previous bridge in the chain > + * @bridge: bridge object > + * > + * RETURNS: > + * the previous bridge in the chain, or NULL if @bridge is the first. > + */ > +static inline struct drm_bridge * > +drm_bridge_chain_get_prev_bridge(struct drm_bridge *bridge) > +{ > + if (list_is_first(&bridge->chain_node, &bridge->encoder->bridge_chain)) > + return NULL; > + > + return list_prev_entry(bridge, chain_node); > +} > + > /** > * drm_bridge_chain_get_first_bridge() - Get the first bridge in the chain > * @encoder: encoder object -- Regards, Laurent Pinchart From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH v3 13/21] drm/bridge: Add the drm_bridge_chain_get_prev_bridge() helper Date: Mon, 2 Dec 2019 19:05:43 +0200 Message-ID: <20191202170543.GQ4929@pendragon.ideasonboard.com> References: <20191023154512.9762-1-boris.brezillon@collabora.com> <20191023154512.9762-14-boris.brezillon@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by gabe.freedesktop.org (Postfix) with ESMTPS id C66FD6E264 for ; Mon, 2 Dec 2019 17:05:51 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20191023154512.9762-14-boris.brezillon@collabora.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Boris Brezillon Cc: Mark Rutland , Neil Armstrong , dri-devel@lists.freedesktop.org, Thierry Reding , kernel@collabora.com, Sam Ravnborg , Nikita Yushchenko , Andrey Smirnov , Kyungmin Park , Chris Healy , devicetree@vger.kernel.org, Jonas Karlman , Rob Herring , Jernej Skrabec , Seung-Woo Kim List-Id: dri-devel@lists.freedesktop.org SGkgQm9yaXMsCgpUaGFuayB5b3UgZm9yIHRoZSBwYXRjaC4KCk9uIFdlZCwgT2N0IDIzLCAyMDE5 IGF0IDA1OjQ1OjA0UE0gKzAyMDAsIEJvcmlzIEJyZXppbGxvbiB3cm90ZToKPiBXaWxsIGJlIHVz ZWZ1bCBmb3IgYnJpZGdlIGRyaXZlcnMgdGhhdCB3YW50IHRvIGRvIGJ1cyBmb3JtYXQKPiBuZWdv dGlhdGlvbiB3aXRoIHRoZWlyIG5laWdoYm91cnMuCgpBIGdlbmVyYWwgY29tbWVudCwgSSB0aGlu ayB0aGUgYm9keSBvZiB0aGUgY29tbWl0IG1lc3NhZ2Ugc2hvdWxkIGJlCnJlYWRhYmxlIG9uIGl0 cyBvd24sIHdpdGhvdXQgdGhlIHN1YmplY3QgbGluZS4gSXQgbWF5IGJlIGEgbWF0dGVyIG9mCnBl cnNvbmFsIHRhc3RlLgoKPiBTaWduZWQtb2ZmLWJ5OiBCb3JpcyBCcmV6aWxsb24gPGJvcmlzLmJy ZXppbGxvbkBjb2xsYWJvcmEuY29tPgoKUmV2aWV3ZWQtYnk6IExhdXJlbnQgUGluY2hhcnQgPGxh dXJlbnQucGluY2hhcnRAaWRlYXNvbmJvYXJkLmNvbT4KCj4gLS0tCj4gQ2hhbmdlcyBpbiB2MzoK PiAqIElubGluZSBkcm1fYnJpZGdlX2NoYWluX2dldF9wcmV2X2JyaWRnZSgpCj4gKiBGaXggdGhl IGRvYwo+IAo+IENoYW5nZXMgaW4gdjI6Cj4gKiBGaXggdGhlIGtlcm5lbGRvYwo+ICogRHJvcCB0 aGUgIWJyaWRnZSB8fCAhYnJpZGdlLT5lbmNvZGVyIGNoZWNrCj4gLS0tCj4gIGluY2x1ZGUvZHJt L2RybV9icmlkZ2UuaCB8IDE2ICsrKysrKysrKysrKysrKysKPiAgMSBmaWxlIGNoYW5nZWQsIDE2 IGluc2VydGlvbnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2JyaWRnZS5o IGIvaW5jbHVkZS9kcm0vZHJtX2JyaWRnZS5oCj4gaW5kZXggMmJlYjFlZjlhNzMzLi4zZmI1MTg0 OTQ2NDAgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2JyaWRnZS5oCj4gKysrIGIvaW5j bHVkZS9kcm0vZHJtX2JyaWRnZS5oCj4gQEAgLTUyNiw2ICs1MjYsMjIgQEAgZHJtX2JyaWRnZV9j aGFpbl9nZXRfbmV4dF9icmlkZ2Uoc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSkKPiAgCXJldHVy biBsaXN0X25leHRfZW50cnkoYnJpZGdlLCBjaGFpbl9ub2RlKTsKPiAgfQo+ICAKPiArLyoqCj4g KyAqIGRybV9icmlkZ2VfY2hhaW5fZ2V0X3ByZXZfYnJpZGdlKCkgLSBHZXQgdGhlIHByZXZpb3Vz IGJyaWRnZSBpbiB0aGUgY2hhaW4KPiArICogQGJyaWRnZTogYnJpZGdlIG9iamVjdAo+ICsgKgo+ ICsgKiBSRVRVUk5TOgo+ICsgKiB0aGUgcHJldmlvdXMgYnJpZGdlIGluIHRoZSBjaGFpbiwgb3Ig TlVMTCBpZiBAYnJpZGdlIGlzIHRoZSBmaXJzdC4KPiArICovCj4gK3N0YXRpYyBpbmxpbmUgc3Ry dWN0IGRybV9icmlkZ2UgKgo+ICtkcm1fYnJpZGdlX2NoYWluX2dldF9wcmV2X2JyaWRnZShzdHJ1 Y3QgZHJtX2JyaWRnZSAqYnJpZGdlKQo+ICt7Cj4gKwlpZiAobGlzdF9pc19maXJzdCgmYnJpZGdl LT5jaGFpbl9ub2RlLCAmYnJpZGdlLT5lbmNvZGVyLT5icmlkZ2VfY2hhaW4pKQo+ICsJCXJldHVy biBOVUxMOwo+ICsKPiArCXJldHVybiBsaXN0X3ByZXZfZW50cnkoYnJpZGdlLCBjaGFpbl9ub2Rl KTsKPiArfQo+ICsKPiAgLyoqCj4gICAqIGRybV9icmlkZ2VfY2hhaW5fZ2V0X2ZpcnN0X2JyaWRn ZSgpIC0gR2V0IHRoZSBmaXJzdCBicmlkZ2UgaW4gdGhlIGNoYWluCj4gICAqIEBlbmNvZGVyOiBl bmNvZGVyIG9iamVjdAoKLS0gClJlZ2FyZHMsCgpMYXVyZW50IFBpbmNoYXJ0Cl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxp c3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==