Received: by 2002:a05:6359:c8b:b0:c7:702f:21d4 with SMTP id go11csp1013450rwb; Sat, 17 Sep 2022 21:44:57 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5DzvFy7KMvs8JAW5DmN+nSNJVW6SaoC5/HRsaITRKrN6DEmw8DRIbKUdFrWpMvvdcdCGrY X-Received: by 2002:a17:906:5d04:b0:77f:ca9f:33d1 with SMTP id g4-20020a1709065d0400b0077fca9f33d1mr8909601ejt.526.1663476296968; Sat, 17 Sep 2022 21:44:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1663476296; cv=none; d=google.com; s=arc-20160816; b=dgfWmXEo5DemKcSKn3ABweuEtWPdhjYzjTNVkE2ImlqwKwbkqQ7FCeTagTSK/4lB7X et8l1NZJ4TyX2DHTPJilELkIh0pEVI5gi6tqJYFxOspynQVYuprEQIxqrNRFuaPtJeEj v+AVf8tnsnZC0Uwc9WM81nE9fiYZBBam9o8+FBMeelOOtLVsw9PRwH6LH7E8U0CRSbuS aE47eBLw5RoLjZmoqGWu/z7IA/P2JF7mAG15ayUYg8Rz8eHsQtpofl3W11HPY2wkWalj 8Lvp9hKIYzQWq6UKFtEWJAv03N5CMl42lsp5GnwKoi3VXfF/avnRpRR7yMap/KchtlC7 i6PQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:feedback-id:dkim-signature :dkim-signature; bh=qyQljdV9brpQJ7X55JsdBpi3YH2RlBhC12hsk3NzNdM=; b=lFSSz3lyJQr5CjNEuqh7Vj8Zl89ePH5EA5zRYwKt2+pQjznXZxuBrl6VJuR1p+IbMt Y64IzTKkH4N/sA6jWJ3ZyF8nznV6b/6fcUIh2dCVCWrxSlWSshWJf+gdwTgFrLm2EEm1 o8muQTSCRqNAAB2lg93qsNCDrcw1+tDcnon/H2m1N4QDS7wFp+mTkIdAUHeNHgOWy3NZ GdKvV+plAKK/uPRUiLvnHSn92tDmFqpmUo1/fQwgSk4p/y11VzRB3h6o87DedBEoSOiA XUp20trM5JIXp+ZWgA/sdbw9KRr7BuqcX+8xUd1yzixOnROj2jtITkWa/6m8AyUL7wTt cAMQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@maxfierke.com header.s=fm2 header.b=tliP6Vx6; dkim=pass header.i=@messagingengine.com header.s=fm2 header.b="JnPzx/8N"; 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 hw9-20020a170907a0c900b007804fa231b1si3808289ejc.307.2022.09.17.21.44.29; Sat, 17 Sep 2022 21:44:56 -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=@maxfierke.com header.s=fm2 header.b=tliP6Vx6; dkim=pass header.i=@messagingengine.com header.s=fm2 header.b="JnPzx/8N"; 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 S229588AbiIRDof (ORCPT + 99 others); Sat, 17 Sep 2022 23:44:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55978 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229498AbiIRDod (ORCPT ); Sat, 17 Sep 2022 23:44:33 -0400 Received: from wout5-smtp.messagingengine.com (wout5-smtp.messagingengine.com [64.147.123.21]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 46C6720B; Sat, 17 Sep 2022 20:44:27 -0700 (PDT) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id D5193320099A; Sat, 17 Sep 2022 23:44:23 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Sat, 17 Sep 2022 23:44:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=maxfierke.com; h=cc:cc:content-transfer-encoding:date:date:from:from :in-reply-to:message-id:mime-version:reply-to:sender:subject :subject:to:to; s=fm2; t=1663472663; x=1663559063; bh=qyQljdV9br pQJ7X55JsdBpi3YH2RlBhC12hsk3NzNdM=; b=tliP6Vx6i4qWtfuv1MT5mY58wF VprFpjMbV2maKU4X7ev5oWu1FPwRARQvELBwizF9bWGy1XTuhZi4BMld27/og7M4 M8b1nfr0wpUfHhP/w23HiyZGI7QeaUKkrp5GNe8DzlaTTZcxl//rSMVST/wusLwS n5okqhk6qqdIhGDQhx/ZstMfypHzSwS10JcSjko5bmLJbmRduuc34YoxDAqM6AQS MmDe0iUjCs3R1izHsv7iL0/jGxoV62ekczfjq3qJ9VR3eIVKRXRUSzSLBUEOqv/U +bnl+ci5zNFr0lCHl+o202eG4OohVvy8JHwPajB4Or7lXXTEIgg3z39PL2Vw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding:date:date :feedback-id:feedback-id:from:from:in-reply-to:message-id :mime-version:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t= 1663472663; x=1663559063; bh=qyQljdV9brpQJ7X55JsdBpi3YH2RlBhC12h sk3NzNdM=; b=JnPzx/8N42/1t3r7Guau990PpqWPol35q2YGHlKhEzdM+u7PysY EsHXiz4p999PZCFm1s9sc4yVCRgtJYhAmkiOmZEZ4Qq8vH+yKhiEodq+K9fzzYHW q/6wxgIlG60CoNiZprlNQbHTp78WjCoYbAKJQcGUelOhHT6i2z7tVwx8skBTJeBe v48L7jpHFycevc6lhd7XVE5zUqCOLE5ccHtsTvSpBAFBDAOGgL3tGpftDBL5vKuN 2YmdrNOa43xDVFGkOT1U/Vp8iVNmlXtyiHBKY6LAoU+QG+XbpxoZ/6IpVlZmgSv6 a/AZlfgx0QXOuShWkITRS57dv1S8jYdzWQQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrfedvfedgjeehucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefhvfevufffkffoggfgsedtkeertd ertddtnecuhfhrohhmpeforgigucfhihgvrhhkvgcuoehmrgigsehmrgigfhhivghrkhgv rdgtohhmqeenucggtffrrghtthgvrhhnpedvtdffffegvdejheehudegkeefgffggffgge dutdeiheduheehhfefgeekgfektdenucffohhmrghinhepghhithhhuhgsrdgtohhmnecu vehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrgiesmh grgihfihgvrhhkvgdrtghomh X-ME-Proxy: Feedback-ID: idee9475d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 17 Sep 2022 23:44:22 -0400 (EDT) From: Max Fierke To: thierry.reding@gmail.com, sam@ravnborg.org, airlied@linux.ie, daniel@ffwll.ch, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Max Fierke Subject: [PATCH v3 0/4] Introduce ClockworkPi CWD686 DRM panel driver Date: Sat, 17 Sep 2022 22:44:11 -0500 Message-Id: <20220918034415.74641-1-max@maxfierke.com> X-Mailer: git-send-email 2.37.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_LOW,SPF_HELO_PASS, 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 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The ClockworkPi DevTerm (all models) uses a 6.86" IPS display of unknown provenance, which uses the Chipone ICNL9707 IC driver[1]. The display panel I have has two model numbers: TXW686001 and WTL068601G, but cannot find any manufacturer associated with either, so opting for the ClockworkPi model number. This driver is based on the GPL-licensed driver released by ClockworkPi[1], authored by Pinfan Zhu, with some additional cleanup, rotation support, and display sleep re-enabling done by me. [1] https://github.com/clockworkpi/DevTerm/blob/main/Schematics/ICNL9707_Datasheet.pdf [2] https://github.com/clockworkpi/DevTerm/blob/main/Code/patch/armbian_build_a06/patch/kernel-004-panel.patch Thanks to Krzysztof Kozlowski, Rob Herring, and Sam Ravnborg for their prior reviews and apologies for the long delay between patch set versions. Changes in v3: - dt-bindings: add missing lines for spacing Changes in v2: - dt-bindings: remove redundant backlight example - add missing regulators - remove some unused properties from definition (e.g. enable_gpio, supply) - reorder includes - remove redundant ctx->backlight in favor of backlight through drm_panel_of_backlight - remove now-unneeded ctx->enabled and enable/disable hooks - replace ICNL9707_DCS macro with mipi_dsi_dcs_write_seq - use dev_err_probe instead of checking EPROBE_DEFER - fixed return type of cwd686_remove to be void following changes to mipi_dsi_driver - add .get_orientation callback Max Fierke (4): dt-bindings: vendor-prefixes: Add prefix for ClockworkPi dt-bindings: display: Add ClockworkPi CWD686 panel drm: panel: Add driver for ClockworkPi cwd686 panel drm/panel: clockworkpi-cwd686: Implement .get_orientation callback .../display/panel/clockworkpi,cwd686.yaml | 65 +++ .../devicetree/bindings/vendor-prefixes.yaml | 2 + drivers/gpu/drm/panel/Kconfig | 12 + drivers/gpu/drm/panel/Makefile | 1 + .../gpu/drm/panel/panel-clockworkpi-cwd686.c | 456 ++++++++++++++++++ 5 files changed, 536 insertions(+) create mode 100644 Documentation/devicetree/bindings/display/panel/clockworkpi,cwd686.yaml create mode 100644 drivers/gpu/drm/panel/panel-clockworkpi-cwd686.c -- 2.37.2