Received: by 2002:a05:6358:c692:b0:131:369:b2a3 with SMTP id fe18csp929004rwb; Fri, 28 Jul 2023 01:54:23 -0700 (PDT) X-Google-Smtp-Source: APBJJlEGfw90SfEDdQU01fGnqzRV8QVZfkIUT2mAIV7PYXoBQVtkOlBMdbutpr0fGABmM7OiOAjV X-Received: by 2002:a05:6808:20a1:b0:3a3:a8ce:c634 with SMTP id s33-20020a05680820a100b003a3a8cec634mr2206509oiw.53.1690534463520; Fri, 28 Jul 2023 01:54:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1690534463; cv=none; d=google.com; s=arc-20160816; b=L8Jh8VOyalH/I4BgTdjX8WR+8fkoZQLDvX9+ZzCbKlp1AW8Q7/Yuvak9nePmD3TBXz f0Ui7BJhoYJ4OccCr9H0WS5IJ9iMr23/vMhME2y77BljdJ8ZY9gsXM1nd17p2JecIGRX 99IO9UwQ4J5AO1qYddxYulvAYDJjybQ0vkiAwBv8kRRfWj5eVU0ecZu68ZJpiRDRTaiI AP683HTMgFC8l8VyWjbHl7dA7r2BeblWj2Xnb0YvcTqJzPtcbwPn7Qb8X96tg2qMDPzF Pm3dsfKrLXs9KMm3mXkdXH84d2m1PR7WKa6DX5360RgmjZhiWMM9yQmYB2+XSL551nLH 7I6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=OR9iH95jOZjeEBObono1wjy2SivaGrhT2QGrIpUHxxo=; fh=jFIow41KBFK0OiNhyxeTBW5W+qx1A51Qtwvg65DQCXU=; b=d9vyEXtgF/vX2yqneO91ueH/4tVcFpS0hMekt4zoqfFa9bg+AC3SH7Art0KZByD/he FNdf8335oYS3NCX2JM1H2Ax0W8bPMw04nHedgGvZYbmJJwLZ3n3Q2yrCvuD2fxgiIJcy RxzcPGZ7jHbyUMXOXfF2ipAU8Y1nj9wmso6i+VQSSKzW5kLuuzGHGAgXcNEkKKlPmPtb mo9+j4j6IaJef/zlCvevwTZD6hK8sYgTFcpbxBfNspr+97/DfPSrxDBRD0E6+OO3mC2K usv0aDEvGMQhvl/JlXfwvi8Rtu/+hdYMNhr5NnfLqAl2Ed+8l+bWFV0g3NLCZfh+bihM DHng== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id o2-20020a17090ad24200b002683b77e224si2834113pjw.164.2023.07.28.01.54.11; Fri, 28 Jul 2023 01:54:23 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233464AbjG1IeU (ORCPT + 99 others); Fri, 28 Jul 2023 04:34:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35154 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234953AbjG1Idx (ORCPT ); Fri, 28 Jul 2023 04:33:53 -0400 Received: from metis.ext.pengutronix.de (metis.ext.pengutronix.de [IPv6:2001:67c:670:201:290:27ff:fe1d:cc33]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 721703A9C for ; Fri, 28 Jul 2023 01:33:42 -0700 (PDT) Received: from ptz.office.stw.pengutronix.de ([2a0a:edc0:0:900:1d::77] helo=[127.0.0.1]) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1qPIuf-00089N-KI; Fri, 28 Jul 2023 10:33:29 +0200 Message-ID: <4ea87f8f-740d-7bea-f82b-54946699ef1d@pengutronix.de> Date: Fri, 28 Jul 2023 10:33:24 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: Re: [PATCH v2 1/3] dt-bindings: display: move LVDS data-mapping definition to separate file Content-Language: en-US, de-DE To: Laurent Pinchart Cc: Neil Armstrong , Conor Dooley , Dan Carpenter , Daniel Vetter , devicetree@vger.kernel.org, Sam Ravnborg , linux-kernel@vger.kernel.org, Rob Herring , Thierry Reding , dri-devel@lists.freedesktop.org, Krzysztof Kozlowski , patchwork-jzi@pengutronix.de, David Airlie , kernel@pengutronix.de, kernel test robot References: <20230523-simplepanel_support_nondefault_datamapping-v2-0-87196f0d0b64@pengutronix.de> <20230523-simplepanel_support_nondefault_datamapping-v2-1-87196f0d0b64@pengutronix.de> <20230602153239.GK26944@pendragon.ideasonboard.com> From: Johannes Zink In-Reply-To: <20230602153239.GK26944@pendragon.ideasonboard.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-SA-Exim-Connect-IP: 2a0a:edc0:0:900:1d::77 X-SA-Exim-Mail-From: j.zink@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,NICE_REPLY_A, RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE, URIBL_BLOCKED autolearn=unavailable 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 Hi Laurent, thank you for your review. On 6/2/23 17:32, Laurent Pinchart wrote: > Hello Johannes, > > Thank you for the patch. > > On Tue, May 23, 2023 at 10:19:41AM +0200, Johannes Zink wrote: >> As the LVDS data-mapping property is required in multiple bindings: move >> it to separate file and include instead of duplicating it. >> >> Signed-off-by: Johannes Zink >> >> --- >> >> Changes: >> >> v1 -> v2: worked in Rob's review findings (thank you for reviewing my >> work): extract common properties to >> file and include it instead of duplicating it >> --- >> .../bindings/display/lvds-data-mapping.yaml | 84 ++++++++++++++++++++++ >> .../devicetree/bindings/display/lvds.yaml | 75 +++---------------- >> 2 files changed, 92 insertions(+), 67 deletions(-) >> >> diff --git a/Documentation/devicetree/bindings/display/lvds-data-mapping.yaml b/Documentation/devicetree/bindings/display/lvds-data-mapping.yaml >> new file mode 100644 >> index 000000000000..17ef5c9a5a90 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/display/lvds-data-mapping.yaml >> @@ -0,0 +1,84 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/display/lvds-data-mapping.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: LVDS Data Mapping >> + >> +maintainers: >> + - Laurent Pinchart >> + - Thierry Reding >> + >> +description: |+ >> + LVDS is a physical layer specification defined in ANSI/TIA/EIA-644-A. Multiple >> + incompatible data link layers have been used over time to transmit image data >> + to LVDS devices. This bindings supports devices compatible with the following >> + specifications. >> + >> + [JEIDA] "Digital Interface Standards for Monitor", JEIDA-59-1999, February >> + 1999 (Version 1.0), Japan Electronic Industry Development Association (JEIDA) >> + [LDI] "Open LVDS Display Interface", May 1999 (Version 0.95), National >> + Semiconductor >> + [VESA] "VESA Notebook Panel Standard", October 2007 (Version 1.0), Video >> + Electronics Standards Association (VESA) >> + >> + Device compatible with those specifications have been marketed under the >> + FPD-Link and FlatLink brands. >> + >> +properties: >> + data-mapping: >> + enum: >> + - jeida-18 >> + - jeida-24 >> + - vesa-24 >> + description: | >> + The color signals mapping order. >> + >> + LVDS data mappings are defined as follows. >> + >> + - "jeida-18" - 18-bit data mapping compatible with the [JEIDA], [LDI] and >> + [VESA] specifications. Data are transferred as follows on 3 LVDS lanes. >> + >> + Slot 0 1 2 3 4 5 6 >> + ________________ _________________ >> + Clock \_______________________/ >> + ______ ______ ______ ______ ______ ______ ______ >> + DATA0 ><__G0__><__R5__><__R4__><__R3__><__R2__><__R1__><__R0__>< >> + DATA1 ><__B1__><__B0__><__G5__><__G4__><__G3__><__G2__><__G1__>< >> + DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B5__><__B4__><__B3__><__B2__>< >> + >> + - "jeida-24" - 24-bit data mapping compatible with the [DSIM] and [LDI] >> + specifications. Data are transferred as follows on 4 LVDS lanes. >> + >> + Slot 0 1 2 3 4 5 6 >> + ________________ _________________ >> + Clock \_______________________/ >> + ______ ______ ______ ______ ______ ______ ______ >> + DATA0 ><__G2__><__R7__><__R6__><__R5__><__R4__><__R3__><__R2__>< >> + DATA1 ><__B3__><__B2__><__G7__><__G6__><__G5__><__G4__><__G3__>< >> + DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B7__><__B6__><__B5__><__B4__>< >> + DATA3 ><_CTL3_><__B1__><__B0__><__G1__><__G0__><__R1__><__R0__>< >> + >> + - "vesa-24" - 24-bit data mapping compatible with the [VESA] specification. >> + Data are transferred as follows on 4 LVDS lanes. >> + >> + Slot 0 1 2 3 4 5 6 >> + ________________ _________________ >> + Clock \_______________________/ >> + ______ ______ ______ ______ ______ ______ ______ >> + DATA0 ><__G0__><__R5__><__R4__><__R3__><__R2__><__R1__><__R0__>< >> + DATA1 ><__B1__><__B0__><__G5__><__G4__><__G3__><__G2__><__G1__>< >> + DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B5__><__B4__><__B3__><__B2__>< >> + DATA3 ><_CTL3_><__B7__><__B6__><__G7__><__G6__><__R7__><__R6__>< >> + >> + Control signals are mapped as follows. >> + >> + CTL0: HSync >> + CTL1: VSync >> + CTL2: Data Enable >> + CTL3: 0 >> + >> +additionalProperties: true >> + >> +... >> diff --git a/Documentation/devicetree/bindings/display/lvds.yaml b/Documentation/devicetree/bindings/display/lvds.yaml >> index 7cd2ce7e9c33..2200f986c3cf 100644 >> --- a/Documentation/devicetree/bindings/display/lvds.yaml >> +++ b/Documentation/devicetree/bindings/display/lvds.yaml >> @@ -6,83 +6,24 @@ $schema: http://devicetree.org/meta-schemas/core.yaml# >> >> title: LVDS Display Common Properties >> >> +allOf: >> + - $ref: lvds-data-mapping.yaml# >> + >> maintainers: >> - Laurent Pinchart >> - Thierry Reding >> >> description: |+ > > You can drop the |+ here. ack, gonna change that in V3. Best regards Johannes > > Reviewed-by: Laurent Pinchart > >> - LVDS is a physical layer specification defined in ANSI/TIA/EIA-644-A. Multiple >> - incompatible data link layers have been used over time to transmit image data >> - to LVDS devices. This bindings supports devices compatible with the following >> - specifications. >> - >> - [JEIDA] "Digital Interface Standards for Monitor", JEIDA-59-1999, February >> - 1999 (Version 1.0), Japan Electronic Industry Development Association (JEIDA) >> - [LDI] "Open LVDS Display Interface", May 1999 (Version 0.95), National >> - Semiconductor >> - [VESA] "VESA Notebook Panel Standard", October 2007 (Version 1.0), Video >> - Electronics Standards Association (VESA) >> - >> - Device compatible with those specifications have been marketed under the >> - FPD-Link and FlatLink brands. >> + This binding extends the data mapping defined in lvds-data-mapping.yaml. >> + It supports reversing the bit order on the formats defined there in order >> + to accomodate for even more specialized data formats, since a variety of >> + data formats and layouts is used to drive LVDS displays. >> >> properties: >> - data-mapping: >> - enum: >> - - jeida-18 >> - - jeida-24 >> - - vesa-24 >> - description: | >> - The color signals mapping order. >> - >> - LVDS data mappings are defined as follows. >> - >> - - "jeida-18" - 18-bit data mapping compatible with the [JEIDA], [LDI] and >> - [VESA] specifications. Data are transferred as follows on 3 LVDS lanes. >> - >> - Slot 0 1 2 3 4 5 6 >> - ________________ _________________ >> - Clock \_______________________/ >> - ______ ______ ______ ______ ______ ______ ______ >> - DATA0 ><__G0__><__R5__><__R4__><__R3__><__R2__><__R1__><__R0__>< >> - DATA1 ><__B1__><__B0__><__G5__><__G4__><__G3__><__G2__><__G1__>< >> - DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B5__><__B4__><__B3__><__B2__>< >> - >> - - "jeida-24" - 24-bit data mapping compatible with the [DSIM] and [LDI] >> - specifications. Data are transferred as follows on 4 LVDS lanes. >> - >> - Slot 0 1 2 3 4 5 6 >> - ________________ _________________ >> - Clock \_______________________/ >> - ______ ______ ______ ______ ______ ______ ______ >> - DATA0 ><__G2__><__R7__><__R6__><__R5__><__R4__><__R3__><__R2__>< >> - DATA1 ><__B3__><__B2__><__G7__><__G6__><__G5__><__G4__><__G3__>< >> - DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B7__><__B6__><__B5__><__B4__>< >> - DATA3 ><_CTL3_><__B1__><__B0__><__G1__><__G0__><__R1__><__R0__>< >> - >> - - "vesa-24" - 24-bit data mapping compatible with the [VESA] specification. >> - Data are transferred as follows on 4 LVDS lanes. >> - >> - Slot 0 1 2 3 4 5 6 >> - ________________ _________________ >> - Clock \_______________________/ >> - ______ ______ ______ ______ ______ ______ ______ >> - DATA0 ><__G0__><__R5__><__R4__><__R3__><__R2__><__R1__><__R0__>< >> - DATA1 ><__B1__><__B0__><__G5__><__G4__><__G3__><__G2__><__G1__>< >> - DATA2 ><_CTL2_><_CTL1_><_CTL0_><__B5__><__B4__><__B3__><__B2__>< >> - DATA3 ><_CTL3_><__B7__><__B6__><__G7__><__G6__><__R7__><__R6__>< >> - >> - Control signals are mapped as follows. >> - >> - CTL0: HSync >> - CTL1: VSync >> - CTL2: Data Enable >> - CTL3: 0 >> - >> data-mirror: >> type: boolean >> description: >> - If set, reverse the bit order described in the data mappings below on all >> + If set, reverse the bit order described in the data mappings on all >> data lanes, transmitting bits for slots 6 to 0 instead of 0 to 6. >> >> additionalProperties: true >> > -- Pengutronix e.K. | Johannes Zink | Steuerwalder Str. 21 | https://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686| Fax: +49-5121-206917-5555 |