Received: by 2002:a05:6a10:2726:0:0:0:0 with SMTP id ib38csp1065052pxb; Fri, 1 Apr 2022 03:44:59 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzRx0e5YJCxXaI8GwcJ6el+gpKhYmswRngHisgkPq5BYheIa2VT/n0RQ9CTCtz+DojR/spo X-Received: by 2002:a05:6402:d72:b0:419:938d:f4ce with SMTP id ec50-20020a0564020d7200b00419938df4cemr20835468edb.166.1648809899344; Fri, 01 Apr 2022 03:44:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1648809899; cv=none; d=google.com; s=arc-20160816; b=if+2l0MNUsOcaPzBV6SzWrj0h7lTswEsYRQI+Ut4tlMKxDGBA52S96OsMCLKLZoBGX /4f644XeFpsDPtE9KETp0RBQcTVbGP4VYGuJlBaxpSsic1TflnaeqnfUB7djYVM2Lh10 GI36vtZefYgHgXd1fJIEUrMj+nmNsb9nOmG9tG5buHCMpI1m2QTtUtlxK+YkpxPBwi9z iOiOYP/OUXG5K4iWCHAemrQsTfEAYklivLbwO1ShM/0A3Audw8lMUlxGLrzdk4yMneIH 10dPsnnXev8zNecgGocehyB2m6QOBLkLMrxRopTDGeAaCllPPUS+EWSwJ6p+0CSzeHj6 Xzbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=lsN5p6Zbb92CWY0fCQlSnWVHSmMIpn5JDGM4v10NtKE=; b=Kc/ouKqg3x+Sc7OtHumeMOxnh7q7+wz1NuOPjb/F/cuPzyfGCtAl0epNMC7h4SYw5U vZNwkaRe5U349dRSOBph8D89XrnZv/2WVVPpKmN7ZXQydTHkJW3zO0ZV8i71+l/0LZ1S OAhVcRmtA40R49fD5t0YxQ3m5ydRhxb6TaGIHEPcSHpg3gwj8zZSgDE7eqQLzWo8aQDf F2FAzdFjDVkDW9EjhR7W1/S8Q8bj41vaL6HIuUam29KqnAUhUAGl+m3TPKCE6XGghw+O QZoz89DsD0fdJJXzqAEICq74pwhaOLZ3nclLn+B4fm6lxv6D1McPULFJJeTyIxWM/XP6 xSIA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=ZunWdYGe; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j14-20020a50e0ce000000b00419628a9fcasi1515812edl.54.2022.04.01.03.44.33; Fri, 01 Apr 2022 03:44:59 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=ZunWdYGe; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234152AbiCaJhA (ORCPT + 99 others); Thu, 31 Mar 2022 05:37:00 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40638 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233210AbiCaJg6 (ORCPT ); Thu, 31 Mar 2022 05:36:58 -0400 Received: from mail-qt1-x834.google.com (mail-qt1-x834.google.com [IPv6:2607:f8b0:4864:20::834]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 03D76AF1F6 for ; Thu, 31 Mar 2022 02:35:10 -0700 (PDT) Received: by mail-qt1-x834.google.com with SMTP id b18so20887304qtk.13 for ; Thu, 31 Mar 2022 02:35:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=lsN5p6Zbb92CWY0fCQlSnWVHSmMIpn5JDGM4v10NtKE=; b=ZunWdYGe8+BLAfVsPhIKSdgfp/G02w2RPLviviav8MFDJAF80hz+gYJdoOGSo34tqv +GOt1h6oPls11MbrXMWncQOXZmfdT+lhqoeeAdjHnzcDo7Y+ls+43qjcKa4FnDUZBr8g sfb8w/YhyQ+I+txxTbyARU1xScgG75osTxNrQd/eW37hUwLOqmWqtNTAMgYkd6Ktg+8v SISvG4vs6TaDZYpzkTU2u3b1ge4YO9UUK1QU+l3rIQdKqsBt2Cv/PAH7mIcmQDs8WgY7 CqOd27nG1iOkKCVqS+VcVciIKPjF7ot65oGt3h7/40D3BucYPbivC79Gb3PETsi4mdBl 9MPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=lsN5p6Zbb92CWY0fCQlSnWVHSmMIpn5JDGM4v10NtKE=; b=T31iwqHTrHFzuTsPmq+VuQn4fZpqqE/YPOXmMrNFUoDmv7d92RWMcwfcOzhGLjePd+ MSN/OjaE01VeATrOfx1YZVDwD1mD7E/7c0l32svYK/ty97gwpbeFbWUJ1NN3s9ejrSXQ 22bYMn9LE4aii5hosbwd4qwaFfXUK5Q0JOj42PNhwMGdC76hnAaskxAVoTwYijWuDgq9 jg9eNX2iDDK3dZuC8irJNZ36GliUgtwBnWYEpy6EJcd+oYCYOfGBQ+MlxqZ4XK/mKZhK +XynwC7ovj6K8a7lkKnot6bt/eKGbgUZwv8+NXE4X9osyXGB5cyCg/16ekMQj/pmM3WG YX8w== X-Gm-Message-State: AOAM532PflFVBx8ysfov56vxidweg5iBR/8Q1u2pwuDnGShJ+xpnGH7P ID3Mx3Fs/+TzpOVSFcuB+Qvu6iie3ytXRvI8YknSwg== X-Received: by 2002:ac8:5702:0:b0:2e1:ec8a:917a with SMTP id 2-20020ac85702000000b002e1ec8a917amr3318464qtw.682.1648719309154; Thu, 31 Mar 2022 02:35:09 -0700 (PDT) MIME-Version: 1.0 References: <20220328152923.90623-1-krzysztof.kozlowski@linaro.org> <12b0056b-8032-452b-f325-6f36037b5a80@linaro.org> In-Reply-To: From: Dmitry Baryshkov Date: Thu, 31 Mar 2022 12:34:58 +0300 Message-ID: Subject: Re: [PATCH] dt-bindings: display: msm: dsi: remove address/size cells To: Vinod Koul Cc: Rob Herring , Krzysztof Kozlowski , Rob Clark , Sean Paul , Abhinav Kumar , David Airlie , Daniel Vetter , Krzysztof Kozlowski , linux-arm-msm , dri-devel , freedreno , devicetree@vger.kernel.org, "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 31 Mar 2022 at 09:05, Vinod Koul wrote: > > On 29-03-22, 10:52, Rob Herring wrote: > > On Tue, Mar 29, 2022 at 12:01:52PM +0530, Vinod Koul wrote: > > > On 28-03-22, 13:21, Rob Herring wrote: > > > > On Mon, Mar 28, 2022 at 12:18 PM Krzysztof Kozlowski > > > > wrote: > > > > > > > > > > On 28/03/2022 19:16, Vinod Koul wrote: > > > > > > On 28-03-22, 19:43, Dmitry Baryshkov wrote: > > > > > >> On Mon, 28 Mar 2022 at 18:30, Krzysztof Kozlowski > > > > > >> wrote: > > > > > >>> > > > > > >>> The DSI node is not a bus and the children do not have unit addresses. > > > > > >>> > > > > > >>> Reported-by: Vinod Koul > > > > > >>> Signed-off-by: Krzysztof Kozlowski > > > > > >> > > > > > >> NAK. > > > > > >> DSI panels are children of the DSI device tree node with the reg = <0>; address. > > > > > >> This is the convention used by other platforms too (see e.g. > > > > > >> arch/arm64/boot/dts/freescale/imx8mq-evk.dts). > > > > > > > > > > > > So we should add reg = 0, i will update my dtsi fix > > > > > > > > > > > > > > > > To "ports" node? No. The reg=0 is for children of the bus, so the > > > > > panels. How to combine both without warnings - ports and panel@0 - I > > > > > don't know yet... > > > > > > > > I don't think that should case a warning. Or at least it's one we turn off. > > > > > > Well in this case I think we might need a fix: > > > Here is the example quoted in the binding. We have ports{} and then the > > > two port@0 and port@1 underneath. > > > > It's the #address-cells/#size-cells under 'ports' that applies to 'port' > > nodes. As 'ports' has no address (reg) itself, it doesn't need > > #address-cells/#size-cells in its parent node. > > > > > > > > So it should be okay to drop #address-cells/#size-cells from dsi node > > > but keep in ports node... > > > > Yes. > > > > > Thoughts...? > > > > But I thought a panel@0 node was being added? If so then you need to add > > them back. > > I guess we should make this optional, keep it when adding panel@0 node > and skip for rest where not applicable..? Dmitry is that fine with you? This sounds like a workaround. When a panel node is added together with the '#address-cells' / '#size-cells' properties, we will get warnings for the 'ports' node. I'd prefer to leave things to pinpoint that the problem is generic rather than being specific to several device trees with the DSI panel nodes. How do other platforms solve the issue? In fact we can try shifting to the following dts schema: dsi@ae940000 { compatible = "qcom,mdss-dsi-ctrl"; ports { #adress-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; dsi0_in: endpoint {}; }; port@1 { reg = <1>; dsi0_out: endpoint { remote-endpoint = <&panel_in>; }; }; /* dsi-bus is a generic part */ dsi-bus { #adress-cells = <1>; #size-cells = <0>; /* panel@0 goes to the board file */ panel@0 { compatible = "vendor,some-panel"; ports { #adress-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; panel_in: endpoint { remote-endpoint = <&dsi0_out>; }; }; }; }; }; WDYT? -- With best wishes Dmitry