From patchwork Fri Sep 29 12:33:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johannes Zink X-Patchwork-Id: 1841279 Return-Path: X-Original-To: incoming-dt@patchwork.ozlabs.org Delivered-To: patchwork-incoming-dt@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=permerror (SPF Permanent Error: More than 10 MX records returned) smtp.mailfrom=vger.kernel.org (client-ip=139.178.88.99; helo=sv.mirrors.kernel.org; envelope-from=devicetree+bounces-4570-incoming-dt=patchwork.ozlabs.org@vger.kernel.org; receiver=patchwork.ozlabs.org) Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org [139.178.88.99]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4RxqXZ4Nhrz1yp0 for ; Fri, 29 Sep 2023 22:34:06 +1000 (AEST) Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by sv.mirrors.kernel.org (Postfix) with ESMTP id 2FA64283101 for ; Fri, 29 Sep 2023 12:34:05 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 94583C8DE; Fri, 29 Sep 2023 12:34:03 +0000 (UTC) X-Original-To: devicetree@vger.kernel.org Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net [23.128.96.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F01F54426 for ; Fri, 29 Sep 2023 12:34:00 +0000 (UTC) Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [IPv6:2a0a:edc0:2:b01:1d::104]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E4A78BE for ; Fri, 29 Sep 2023 05:33:58 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qmCgq-0008Sc-Fg; Fri, 29 Sep 2023 14:33:52 +0200 Received: from [2a0a:edc0:0:1101:1d::39] (helo=dude03.red.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qmCgp-009oFQ-GF; Fri, 29 Sep 2023 14:33:51 +0200 Received: from localhost ([::1] helo=dude03.red.stw.pengutronix.de) by dude03.red.stw.pengutronix.de with esmtp (Exim 4.94.2) (envelope-from ) id 1qmCgp-009S7x-4i; Fri, 29 Sep 2023 14:33:51 +0200 From: Johannes Zink Subject: [PATCH v5 0/3] Support non-default LVDS data mapping for simple panel Date: Fri, 29 Sep 2023 14:33:30 +0200 Message-Id: <20230523-simplepanel_support_nondefault_datamapping-v5-0-0d7928edafab@pengutronix.de> Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-B4-Tracking: v=1; b=H4sIABrEFmUC/53OTW7DIBAF4KtErEuCAf+kq96jqqyxGWwkGxBgl Cry3YuzqtSuvHwjzffek0QMBiN5vzxJwGyicbaE+u1CxhnshNSokglnXLCaCxrN6hf0YHHp4+a 9C6m3zirUsC2pV5BgBe+NnWglRqE5Au90Rwo4QEQ6BLDjfJC5uYpbct6Mt18oHbZItQsrpOPHB 9Tm8Rr4+VXybGJy4fu1N/Pjempa5pTRrq3ujWaKDY388GinLQVnzeOqkBxdWZz3RfHbDhWKViq h7v/68rwvi48NtqyqtJBD/cff9/0HMNnJf90BAAA= To: David Airlie , Daniel Vetter , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Laurent Pinchart , Thierry Reding , Neil Armstrong , Sam Ravnborg Cc: kernel test robot , Dan Carpenter , patchwork-jzi@pengutronix.de, kernel@pengutronix.de, Laurent Pinchart , dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Johannes Zink , Conor Dooley X-Mailer: b4 0.12.2 X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: j.zink@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: devicetree@vger.kernel.org X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Some LVDS panels, such as the innolux,g101ice-l01 support multiple LVDS data mapping modes, which can be configured by strapping a dataformat pin on the display to a specific voltage. This can be particularly useful for using the jeida-18 format, which requires only 3 instead of 4 LVDS lanes. This series moves the data-mapping property for LVDS panels in a separate file and optionally adds it to simple-panel when matching to the innolux,g101ice-l01 compatible. This property allows to override the default data mapping set in the panel description in simple-panel. The last patch in this series actually adds the driver support for parsing the data format override device tree property and modifying the corresponding values for bit per color and media bus format in the panel descriptor. Best regards Johannes --- Changelog: v4 -> v5: - no changes, but added the reviewed-by-tags from v3 that were lost in v3/v4 - Link to v4: https://lore.kernel.org/r/20230523-simplepanel_support_nondefault_datamapping-v4-0-e6e7011f34b5@pengutronix.de v3 -> v4: - driver: worked in Dan's Feedback: - return with proper error in case the call into panel_simple_override_nondefault_lvds_datamapping() failed - drop the unneeded and ambiguous ret local value - Link to v3: https://lore.kernel.org/r/20230523-simplepanel_support_nondefault_datamapping-v3-0-78ede374d3d9@pengutronix.de v2 -> v3: - dt bindings: Worked in Conor's and Laurent's Feedback (thanks for your review): Drop the chomping indicator - dt bindings: Worked in Laurent's Feedback: fix typos - driver: worked in Laurent's review findings: - extract function for fixing up the bus format - only call this function on LVDS panels - fix typo - Link to v2: https://lore.kernel.org/r/20230523-simplepanel_support_nondefault_datamapping-v2-0-87196f0d0b64@pengutronix.de v1 -> v2: - dt bindings: Worked in Rob's review findings (thanks for your review), refactored to use common include instead of duplication - driver: added missing error unwinding goto, as found by Dan Carpenter's test robot: Reported-by: kernel test robot Reported-by: Dan Carpenter Link: https://lore.kernel.org/r/202304160359.4LHmFOlU-lkp@intel.com/ To: David Airlie To: Daniel Vetter To: Rob Herring To: Krzysztof Kozlowski To: Conor Dooley To: Laurent Pinchart To: Thierry Reding To: Neil Armstrong To: Sam Ravnborg Cc: patchwork-jzi@pengutronix.de Cc: kernel@pengutronix.de Cc: Laurent Pinchart Cc: dri-devel@lists.freedesktop.org Cc: devicetree@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Johannes Zink --- --- Johannes Zink (3): dt-bindings: display: move LVDS data-mapping definition to separate file dt-bindings: display: simple: support non-default data-mapping drm/panel-simple: allow LVDS format override .../bindings/display/lvds-data-mapping.yaml | 84 ++++++++++++++++++++++ .../devicetree/bindings/display/lvds.yaml | 77 +++----------------- .../bindings/display/panel/panel-simple.yaml | 26 ++++++- drivers/gpu/drm/panel/panel-simple.c | 53 ++++++++++++++ 4 files changed, 171 insertions(+), 69 deletions(-) --- base-commit: 79fb229b8810071648b65c37382aea7819a5f935 change-id: 20230523-simplepanel_support_nondefault_datamapping-13c3f2ea28f8 Best regards,