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=-5.4 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,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 89090FA372C for ; Fri, 8 Nov 2019 14:07:45 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 5F1B221848 for ; Fri, 8 Nov 2019 14:07:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="qI76zDWU" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726684AbfKHOHo (ORCPT ); Fri, 8 Nov 2019 09:07:44 -0500 Received: from perceval.ideasonboard.com ([213.167.242.64]:48788 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726101AbfKHOHo (ORCPT ); Fri, 8 Nov 2019 09:07:44 -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 798AD2D1; Fri, 8 Nov 2019 15:07:42 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1573222062; bh=cfQskFVKDBmhqT8dy6gfEBopqXvAlZko8/zIfiIVSLQ=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=qI76zDWU1Mh7+zpD/LOd6hoocj3RzM8CPdLjOzXtsrbTxg0Ebz4ax6+O1BfY7uXMY SvFQr/o9XlqOiRw6SAhoyjDON+13+V2trgpDFJke77uWowz5TNz1oEWZtCrvGjEbuq w5wsU76e778+kBQShalcdsEmHaKt1aRuegoqy80c= Date: Fri, 8 Nov 2019 16:07:33 +0200 From: Laurent Pinchart To: Rob Herring Cc: dri-devel , Michal Simek , Hyun Kwon , Satish Kumar Nagireddy , devicetree@vger.kernel.org Subject: Re: [PATCH v9 1/4] dt-bindings: display: xlnx: Add ZynqMP DP subsystem bindings Message-ID: <20191108140733.GJ4866@pendragon.ideasonboard.com> References: <20190925235544.11524-1-laurent.pinchart@ideasonboard.com> <20190925235544.11524-2-laurent.pinchart@ideasonboard.com> <20190926142318.GB16469@pendragon.ideasonboard.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: 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 Rob, On Thu, Sep 26, 2019 at 09:57:29AM -0500, Rob Herring wrote: > On Thu, Sep 26, 2019 at 9:23 AM Laurent Pinchart wrote: > > On Thu, Sep 26, 2019 at 09:15:01AM -0500, Rob Herring wrote: > > > On Wed, Sep 25, 2019 at 6:56 PM Laurent Pinchart wrote: > > > > > > > > From: Hyun Kwon > > > > > > > > The bindings describe the ZynqMP DP subsystem. They don't support the > > > > interface with the programmable logic (FPGA) or audio yet. > > > > > > > > Signed-off-by: Hyun Kwon > > > > Signed-off-by: Laurent Pinchart > > > > --- > > > > Changes since v8: > > > > > > > > - Convert to yaml > > > > - Rename aclk to dp_apb_clk > > > > > > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/display/xlnx/xlnx,zynqmp-dpsub.example.dt.yaml: > > > display@fd4a0000: clock-names:2: 'dp_vtc_pixel_clk_in' was expected > > > > If you allow me to steal a bit of your brain time, could you help me > > expressing the clocks constraint ? > > > > clocks: > > description: > > The AXI clock and at least one video clock are mandatory, the audio clock > > optional. > > minItems: 2 > > maxItems: 4 > > items: > > - description: AXI clock > > - description: Audio clock > > - description: Non-live video clock (from Processing System) > > - description: Live video clock (from Programmable Logic) > > clock-names: > > minItems: 2 > > maxItems: 4 > > items: > > - const: dp_apb_clk > > - const: dp_aud_clk > > - const: dp_vtc_pixel_clk_in > > - const: dp_live_video_in_clk > > > > dp_apb_clk is required, dp_aud_clk is optional, and at least one of > > dp_vtc_pixel_clk_in and dp_live_video_in_clk is required. > > I'm hoping people's inability to express the schema will prevent > complicated ones like this in the first place... > > clock-names: > oneOf: > - minItems: 3 > maxItems: 4 > items: > - const: dp_apb_clk > - const: dp_aud_clk > - enum: [ dp_vtc_pixel_clk_in, dp_live_video_in_clk ] > - enum: [ dp_vtc_pixel_clk_in, dp_live_video_in_clk ] > - minItems: 2 > maxItems: 3 > items: > - const: dp_apb_clk > - enum: [ dp_vtc_pixel_clk_in, dp_live_video_in_clk ] > - enum: [ dp_vtc_pixel_clk_in, dp_live_video_in_clk ] The above would make clock-names = "dp_apb_clk", "dp_vtc_pixel_clk_in", "dp_vtc_pixel_clk_in"; valid. I've investigated a little bit and found uniqueItems which solves my issue. Would the following simpler solution be acceptable ? clock-names: minItems: 2 maxItems: 4 items: - const: dp_apb_clk - enum: [ dp_vtc_pixel_clk_in, dp_live_video_in_clk ] - const: dp_aud_clk - enum: [ dp_vtc_pixel_clk_in, dp_live_video_in_clk ] uniqueItems: true > Strictly speaking, that leaves items clocks wrong, but 'description' > doesn't do anything. So I'd just leave it as is. Speaking of which, there doesn't seem to be anything that validates the size of clocks and clock-names being identical. Is that a known issue ? -- Regards, Laurent Pinchart From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH v9 1/4] dt-bindings: display: xlnx: Add ZynqMP DP subsystem bindings Date: Fri, 8 Nov 2019 16:07:33 +0200 Message-ID: <20191108140733.GJ4866@pendragon.ideasonboard.com> References: <20190925235544.11524-1-laurent.pinchart@ideasonboard.com> <20190925235544.11524-2-laurent.pinchart@ideasonboard.com> <20190926142318.GB16469@pendragon.ideasonboard.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 999146F9A6 for ; Fri, 8 Nov 2019 14:07:44 +0000 (UTC) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Rob Herring Cc: devicetree@vger.kernel.org, Hyun Kwon , Michal Simek , dri-devel , Satish Kumar Nagireddy List-Id: dri-devel@lists.freedesktop.org SGkgUm9iLAoKT24gVGh1LCBTZXAgMjYsIDIwMTkgYXQgMDk6NTc6MjlBTSAtMDUwMCwgUm9iIEhl cnJpbmcgd3JvdGU6Cj4gT24gVGh1LCBTZXAgMjYsIDIwMTkgYXQgOToyMyBBTSBMYXVyZW50IFBp bmNoYXJ0IHdyb3RlOgo+ID4gT24gVGh1LCBTZXAgMjYsIDIwMTkgYXQgMDk6MTU6MDFBTSAtMDUw MCwgUm9iIEhlcnJpbmcgd3JvdGU6Cj4gPiA+IE9uIFdlZCwgU2VwIDI1LCAyMDE5IGF0IDY6NTYg UE0gTGF1cmVudCBQaW5jaGFydCB3cm90ZToKPiA+ID4gPgo+ID4gPiA+IEZyb206IEh5dW4gS3dv biA8aHl1bi5rd29uQHhpbGlueC5jb20+Cj4gPiA+ID4KPiA+ID4gPiBUaGUgYmluZGluZ3MgZGVz Y3JpYmUgdGhlIFp5bnFNUCBEUCBzdWJzeXN0ZW0uIFRoZXkgZG9uJ3Qgc3VwcG9ydCB0aGUKPiA+ ID4gPiBpbnRlcmZhY2Ugd2l0aCB0aGUgcHJvZ3JhbW1hYmxlIGxvZ2ljIChGUEdBKSBvciBhdWRp byB5ZXQuCj4gPiA+ID4KPiA+ID4gPiBTaWduZWQtb2ZmLWJ5OiBIeXVuIEt3b24gPGh5dW4ua3dv bkB4aWxpbnguY29tPgo+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IExhdXJlbnQgUGluY2hhcnQgPGxh dXJlbnQucGluY2hhcnRAaWRlYXNvbmJvYXJkLmNvbT4KPiA+ID4gPiAtLS0KPiA+ID4gPiBDaGFu Z2VzIHNpbmNlIHY4Ogo+ID4gPiA+Cj4gPiA+ID4gLSBDb252ZXJ0IHRvIHlhbWwKPiA+ID4gPiAt IFJlbmFtZSBhY2xrIHRvIGRwX2FwYl9jbGsKPiA+ID4KPiA+ID4gL2J1aWxkcy9yb2JoZXJyaW5n L2xpbnV4LWR0LXJldmlldy9Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvZGlzcGxh eS94bG54L3hsbngsenlucW1wLWRwc3ViLmV4YW1wbGUuZHQueWFtbDoKPiA+ID4gZGlzcGxheUBm ZDRhMDAwMDogY2xvY2stbmFtZXM6MjogJ2RwX3Z0Y19waXhlbF9jbGtfaW4nIHdhcyBleHBlY3Rl ZAo+ID4KPiA+IElmIHlvdSBhbGxvdyBtZSB0byBzdGVhbCBhIGJpdCBvZiB5b3VyIGJyYWluIHRp bWUsIGNvdWxkIHlvdSBoZWxwIG1lCj4gPiBleHByZXNzaW5nIHRoZSBjbG9ja3MgY29uc3RyYWlu dCA/Cj4gPgo+ID4gICBjbG9ja3M6Cj4gPiAgICAgZGVzY3JpcHRpb246Cj4gPiAgICAgICBUaGUg QVhJIGNsb2NrIGFuZCBhdCBsZWFzdCBvbmUgdmlkZW8gY2xvY2sgYXJlIG1hbmRhdG9yeSwgdGhl IGF1ZGlvIGNsb2NrCj4gPiAgICAgICBvcHRpb25hbC4KPiA+ICAgICBtaW5JdGVtczogMgo+ID4g ICAgIG1heEl0ZW1zOiA0Cj4gPiAgICAgaXRlbXM6Cj4gPiAgICAgICAtIGRlc2NyaXB0aW9uOiBB WEkgY2xvY2sKPiA+ICAgICAgIC0gZGVzY3JpcHRpb246IEF1ZGlvIGNsb2NrCj4gPiAgICAgICAt IGRlc2NyaXB0aW9uOiBOb24tbGl2ZSB2aWRlbyBjbG9jayAoZnJvbSBQcm9jZXNzaW5nIFN5c3Rl bSkKPiA+ICAgICAgIC0gZGVzY3JpcHRpb246IExpdmUgdmlkZW8gY2xvY2sgKGZyb20gUHJvZ3Jh bW1hYmxlIExvZ2ljKQo+ID4gICBjbG9jay1uYW1lczoKPiA+ICAgICBtaW5JdGVtczogMgo+ID4g ICAgIG1heEl0ZW1zOiA0Cj4gPiAgICAgaXRlbXM6Cj4gPiAgICAgICAtIGNvbnN0OiBkcF9hcGJf Y2xrCj4gPiAgICAgICAtIGNvbnN0OiBkcF9hdWRfY2xrCj4gPiAgICAgICAtIGNvbnN0OiBkcF92 dGNfcGl4ZWxfY2xrX2luCj4gPiAgICAgICAtIGNvbnN0OiBkcF9saXZlX3ZpZGVvX2luX2Nsawo+ ID4KPiA+IGRwX2FwYl9jbGsgaXMgcmVxdWlyZWQsIGRwX2F1ZF9jbGsgaXMgb3B0aW9uYWwsIGFu ZCBhdCBsZWFzdCBvbmUgb2YKPiA+IGRwX3Z0Y19waXhlbF9jbGtfaW4gYW5kIGRwX2xpdmVfdmlk ZW9faW5fY2xrIGlzIHJlcXVpcmVkLgo+IAo+IEknbSBob3BpbmcgcGVvcGxlJ3MgaW5hYmlsaXR5 IHRvIGV4cHJlc3MgdGhlIHNjaGVtYSB3aWxsIHByZXZlbnQKPiBjb21wbGljYXRlZCBvbmVzIGxp a2UgdGhpcyBpbiB0aGUgZmlyc3QgcGxhY2UuLi4KPiAKPiBjbG9jay1uYW1lczoKPiAgIG9uZU9m Ogo+ICAgICAtIG1pbkl0ZW1zOiAzCj4gICAgICAgbWF4SXRlbXM6IDQKPiAgICAgICBpdGVtczoK PiAgICAgICAgIC0gY29uc3Q6IGRwX2FwYl9jbGsKPiAgICAgICAgIC0gY29uc3Q6IGRwX2F1ZF9j bGsKPiAgICAgICAgIC0gZW51bTogWyBkcF92dGNfcGl4ZWxfY2xrX2luLCBkcF9saXZlX3ZpZGVv X2luX2NsayBdCj4gICAgICAgICAtIGVudW06IFsgZHBfdnRjX3BpeGVsX2Nsa19pbiwgZHBfbGl2 ZV92aWRlb19pbl9jbGsgXQo+ICAgICAtIG1pbkl0ZW1zOiAyCj4gICAgICAgbWF4SXRlbXM6IDMK PiAgICAgICBpdGVtczoKPiAgICAgICAgIC0gY29uc3Q6IGRwX2FwYl9jbGsKPiAgICAgICAgIC0g ZW51bTogWyBkcF92dGNfcGl4ZWxfY2xrX2luLCBkcF9saXZlX3ZpZGVvX2luX2NsayBdCj4gICAg ICAgICAtIGVudW06IFsgZHBfdnRjX3BpeGVsX2Nsa19pbiwgZHBfbGl2ZV92aWRlb19pbl9jbGsg XQoKVGhlIGFib3ZlIHdvdWxkIG1ha2UKCgljbG9jay1uYW1lcyA9ICJkcF9hcGJfY2xrIiwgImRw X3Z0Y19waXhlbF9jbGtfaW4iLCAiZHBfdnRjX3BpeGVsX2Nsa19pbiI7Cgp2YWxpZC4gSSd2ZSBp bnZlc3RpZ2F0ZWQgYSBsaXR0bGUgYml0IGFuZCBmb3VuZCB1bmlxdWVJdGVtcyB3aGljaCBzb2x2 ZXMKbXkgaXNzdWUuCgpXb3VsZCB0aGUgZm9sbG93aW5nIHNpbXBsZXIgc29sdXRpb24gYmUgYWNj ZXB0YWJsZSA/CgpjbG9jay1uYW1lczoKICAgIG1pbkl0ZW1zOiAyCiAgICBtYXhJdGVtczogNAog ICAgaXRlbXM6CiAgICAgIC0gY29uc3Q6IGRwX2FwYl9jbGsKICAgICAgLSBlbnVtOiBbIGRwX3Z0 Y19waXhlbF9jbGtfaW4sIGRwX2xpdmVfdmlkZW9faW5fY2xrIF0KICAgICAgLSBjb25zdDogZHBf YXVkX2NsawogICAgICAtIGVudW06IFsgZHBfdnRjX3BpeGVsX2Nsa19pbiwgZHBfbGl2ZV92aWRl b19pbl9jbGsgXQogICAgdW5pcXVlSXRlbXM6IHRydWUKCj4gU3RyaWN0bHkgc3BlYWtpbmcsIHRo YXQgbGVhdmVzIGl0ZW1zIGNsb2NrcyB3cm9uZywgYnV0ICdkZXNjcmlwdGlvbicKPiBkb2Vzbid0 IGRvIGFueXRoaW5nLiBTbyBJJ2QganVzdCBsZWF2ZSBpdCBhcyBpcy4KClNwZWFraW5nIG9mIHdo aWNoLCB0aGVyZSBkb2Vzbid0IHNlZW0gdG8gYmUgYW55dGhpbmcgdGhhdCB2YWxpZGF0ZXMgdGhl CnNpemUgb2YgY2xvY2tzIGFuZCBjbG9jay1uYW1lcyBiZWluZyBpZGVudGljYWwuIElzIHRoYXQg YSBrbm93biBpc3N1ZSA/CgotLSAKUmVnYXJkcywKCkxhdXJlbnQgUGluY2hhcnQKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcg bGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs