From patchwork Sun Feb 23 12:18:39 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 11398775 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 1585814BC for ; Sun, 23 Feb 2020 12:19:00 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E7D9820656 for ; Sun, 23 Feb 2020 12:18:59 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="emNMLzoW" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E7D9820656 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linaro.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id BB6C26E178; Sun, 23 Feb 2020 12:18:55 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lj1-x241.google.com (mail-lj1-x241.google.com [IPv6:2a00:1450:4864:20::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 99B326E178 for ; Sun, 23 Feb 2020 12:18:54 +0000 (UTC) Received: by mail-lj1-x241.google.com with SMTP id x14so6910056ljd.13 for ; Sun, 23 Feb 2020 04:18:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=BXKksNkbkU6OrFeniHxIoTPEPDtrdEfi9fYOE86NNJw=; b=emNMLzoWBw1eL3Wr7KPh3+nmoIjK8h0PmEzCWejMB70d8JO+9Xx/SdqCGJ5vb3IMdu mLhp9cxMjOmmEuJqD6s+h1Ef3D7KqmY5rwgJ8a0NQZb0H2HQl8VzGCcKc2To0fnitxHf irnLaPZXlWA1vHntpz/cq2EagYVszc3Hqy6u7Gq2c3LAn8n4nwM6wqHLAqQsJCWtOJMg 4F0NppoVR8kJo5M6ekudUuE5JTouhst4uoJ1sYZRQZdRO/uyxBK8v/7+YfO2wcwBZhdr vYz8rCLXi9LtRghhWKFsd/gF4m5ASFHGaZ0YGys4rshVTt75TTyvvcBNiNjq7jHu3O7R ZnLg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=BXKksNkbkU6OrFeniHxIoTPEPDtrdEfi9fYOE86NNJw=; b=U6QoFpKI7o/nxwUy+wPHYlvUx3za1aSnrScFLncvDqym2BWqrr11IDrzE5Ba4nIyAw izY7W90Oz3LJE+403Xy4hZk1AKmuRdt6JVMYhxj9172TK6bco6UvYUUB/ZPn6/uuJ225 FqHZERQK7x6Kh3F1emlHGTUwdktxwc2bcPLVh9TFal+8aaPMUV5iuVk19HekRLmdTAsQ oEvz8QesPRKod/eudehzpEWprPQ7zKtLYVvotajlH4RDdifMK8zCjhl2qNWoKywxKs/M ndZ0DciP0BF3009EqnwwTZAlBe6WO+kWFtYo+oq+DmOv0O15nwyQ6a7WNVrlWpkskUj+ srgQ== X-Gm-Message-State: APjAAAUbMdeosB19LYx9MELJfwnKEOIq+UC/6Akun/e5evPrhp6jhnV/ pLjuNwB5Yjx7vUi/RJhOHJ9J4A== X-Google-Smtp-Source: APXvYqzazielqJ7POJpbkvLpUVC0yKxgxrXXqnsw9lP01N6dySQphWiTLsH9BQYsuVkQGt+gWHrJNQ== X-Received: by 2002:a2e:b5b4:: with SMTP id f20mr28395925ljn.112.1582460332906; Sun, 23 Feb 2020 04:18:52 -0800 (PST) Received: from localhost.bredbandsbolaget (c-5ac9225c.014-348-6c756e10.bbcust.telenor.se. [92.34.201.90]) by smtp.gmail.com with ESMTPSA id r10sm5458553ljk.9.2020.02.23.04.18.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2020 04:18:51 -0800 (PST) From: Linus Walleij To: Thierry Reding , Sam Ravnborg , dri-devel@lists.freedesktop.org, Rob Herring Subject: [PATCH 1/3 v2] dt-bindings: Add vendor prefix for Hydis technologies Date: Sun, 23 Feb 2020 13:18:39 +0100 Message-Id: <20200223121841.26836-1-linus.walleij@linaro.org> X-Mailer: git-send-email 2.21.1 MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Stephan Gerhold Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" This vendor has produced a number of display panels, including HVA40WV1. Cc: devicetree@vger.kernel.org Cc: Stephan Gerhold Signed-off-by: Linus Walleij Acked-by: Rob Herring --- ChangeLog v1->v2: - New patch adding this vendor. --- Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml index 9e67944bec9c..95ef233dbb52 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml @@ -421,6 +421,8 @@ patternProperties: description: Shenzhen Hugsun Technology Co. Ltd. "^hwacom,.*": description: HwaCom Systems Inc. + "^hydis,.*": + description: Hydis Technologies "^hyundai,.*": description: Hyundai Technology "^i2se,.*": From patchwork Sun Feb 23 12:18:40 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 11398777 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 472B61580 for ; Sun, 23 Feb 2020 12:19:03 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 25EDE20656 for ; Sun, 23 Feb 2020 12:19:03 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="dGguut1p" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 25EDE20656 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linaro.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 77A796E17A; Sun, 23 Feb 2020 12:18:57 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lj1-x241.google.com (mail-lj1-x241.google.com [IPv6:2a00:1450:4864:20::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 91D216E17C for ; Sun, 23 Feb 2020 12:18:56 +0000 (UTC) Received: by mail-lj1-x241.google.com with SMTP id h23so6945471ljc.8 for ; Sun, 23 Feb 2020 04:18:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=aRGzSkSHgczFsciecVAokfTdkPHn+AG3ECWjmVIUPgk=; b=dGguut1pzGDsUAgroOEop/ne3R93zfJLfz7iidgWLbPVomYfY7H+SH65RCkUKuMJLc BhaobR0xlOyDPyEfv3pF+S50xJjypcTH8M/bLrU+uH+Pdfq0ffWBGk+EIhGb1T/wkYZb fBw3s4e7aO8b9H3ZWxxvx4rl4QWLttro0YlKXHFnpkTa78q8bcVudm9vXtzhNEA1WEE5 /g2Y4U3AQTeqWz7AKJcIny0cPVWQmwT7aer46uUrxRJ20BaMsNdCoGXA6rmqbSe28Zr5 hxTZJjY44hKq3pvvU5/B1G0bDZ8S0sJhRADHi/C1niJNYt9LGk2yFqyHNEkSlTdbi6Y1 8dcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=aRGzSkSHgczFsciecVAokfTdkPHn+AG3ECWjmVIUPgk=; b=t+afH2QUIVNW5GQwxyPqVgPHOFtjC+9+VfwOaFqoR3A3GYvFQS1aSKoybE0cwttswO k8Up25ELqp8TRpSanHTF3Cpdpf9H4D555JEhxRrxfpALvhubnPY3XVoUXx034fqjLa5m q7Fh89G2GOOzM/QI8fI37rUVIsVRKuIRVw9yV2rp6WGOnRgQiKeqz1Cw50zhLuvdZsEd xIeb7NBAW0xTGNF4GOWQHnU04e5mqlTUXKcQo1KaVpLAeaNXsaEjt0AVIVTv6NvFiHeM kxnSMI3nuKSyfRGqyotPuhJrrRTi+mIQUDAuR5iv+eqhfyr9Wybm4p7DxJXAexLWcssH y5ew== X-Gm-Message-State: APjAAAVYQL/Lr2BBIh8OmYmy86TL1NT/samrmZRRQpyQiQs5LF49upMs xVNQOLog2A+N3URJEzWulVBKPg== X-Google-Smtp-Source: APXvYqwG7AyjEOj+PMsDeBjBb+ptB1qKv1HeFB4H1TfJy+5emdbpard7QQkjhuLvi48koCsYed3HGw== X-Received: by 2002:a2e:8e70:: with SMTP id t16mr27732613ljk.73.1582460335026; Sun, 23 Feb 2020 04:18:55 -0800 (PST) Received: from localhost.bredbandsbolaget (c-5ac9225c.014-348-6c756e10.bbcust.telenor.se. [92.34.201.90]) by smtp.gmail.com with ESMTPSA id r10sm5458553ljk.9.2020.02.23.04.18.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2020 04:18:54 -0800 (PST) From: Linus Walleij To: Thierry Reding , Sam Ravnborg , dri-devel@lists.freedesktop.org, Rob Herring Subject: [PATCH 2/3 v2] drm/panel: Add DT bindings for Novatek NT35510-based panels Date: Sun, 23 Feb 2020 13:18:40 +0100 Message-Id: <20200223121841.26836-2-linus.walleij@linaro.org> X-Mailer: git-send-email 2.21.1 In-Reply-To: <20200223121841.26836-1-linus.walleij@linaro.org> References: <20200223121841.26836-1-linus.walleij@linaro.org> MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Stephan Gerhold Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" This adds device tree bindings for the Novatek NT35510-based family of panels. Since several such panels are in existence we define bindings common for all, and define the compatible string for one certain panel (Hydis HVA40WV1). As other panels are discovered and investigated, we can add more compatibles to the binding using oneOf constructions. Cc: Stephan Gerhold Cc: devicetree@vger.kernel.org Signed-off-by: Linus Walleij Reviewed-by: Rob Herring --- ChangeLog v1->v2: - Rename file to novatek,nt35510,yaml to match the first compatible. - Require both the specific display manufacturer compatible and the novatek,nt35510 compatible in strict sequence. --- .../display/panel/novatek,nt35510.yaml | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 Documentation/devicetree/bindings/display/panel/novatek,nt35510.yaml diff --git a/Documentation/devicetree/bindings/display/panel/novatek,nt35510.yaml b/Documentation/devicetree/bindings/display/panel/novatek,nt35510.yaml new file mode 100644 index 000000000000..791fc9daa68b --- /dev/null +++ b/Documentation/devicetree/bindings/display/panel/novatek,nt35510.yaml @@ -0,0 +1,56 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/panel/novatek,nt35510.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Novatek NT35510-based display panels + +maintainers: + - Linus Walleij + +allOf: + - $ref: panel-common.yaml# + +properties: + compatible: + items: + - const: hydis,hva40wv1 + - const: novatek,nt35510 + description: This indicates the panel manufacturer of the panel + that is in turn using the NT35510 panel driver. The compatible + string determines how the NT35510 panel driver shall be configured + to work with the indicated panel. The novatek,nt35510 compatible shall + always be provided as a fallback. + reg: true + reset-gpios: true + vdd-supply: + description: regulator that supplies the vdd voltage + vddi-supply: + description: regulator that supplies the vddi voltage + backlight: true + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + #include + + dsi@a0351000 { + #address-cells = <1>; + #size-cells = <0>; + panel { + compatible = "hydis,hva40wv1", "novatek,nt35510"; + reg = <0>; + vdd-supply = <&ab8500_ldo_aux4_reg>; + vddi-supply = <&ab8500_ldo_aux6_reg>; + reset-gpios = <&gpio4 11 GPIO_ACTIVE_LOW>; + backlight = <&gpio_bl>; + }; + }; + +... From patchwork Sun Feb 23 12:18:41 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Linus Walleij X-Patchwork-Id: 11398779 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id BD6981580 for ; Sun, 23 Feb 2020 12:19:05 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9BCF020656 for ; Sun, 23 Feb 2020 12:19:05 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="AfXixhpO" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9BCF020656 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linaro.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id E3E056E17C; Sun, 23 Feb 2020 12:19:02 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-lf1-x144.google.com (mail-lf1-x144.google.com [IPv6:2a00:1450:4864:20::144]) by gabe.freedesktop.org (Postfix) with ESMTPS id B2D9A6E17C for ; Sun, 23 Feb 2020 12:19:00 +0000 (UTC) Received: by mail-lf1-x144.google.com with SMTP id y17so1725028lfe.8 for ; Sun, 23 Feb 2020 04:19:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=XlGo8wu9AKlFVr1dyScojmKDuiEk8agWM+O0u1l3f0M=; b=AfXixhpOCqJhgJJxMP+VZTd+plUh0CXFpAWTEF+JEqv8+eEDTIp6L4hY6thlYxx2+t dfygDNab4wijinH8bvTwdFo1YCjN7NXfrRAlu2dQcDQgZJpAhsJmKvd0N/4x026rQBRE 2KeBV+WlAfZw4m5nj47b92xJegA1B9VMW8LLiRi0rArXyyYu+THDn/eqig8lAmmJAJbT uAoKO+Bgil/nGLI7mlc7dvsKUaOoiDDEyQfBle9DOZNoNmR1AmFz7U55FYC+ox3k6uVR 0NKiqJ+SXppSsGBkMNf9xjkRZ4IuJ1SLvb2RNXBF+iiloPvcf5mUOf7dSuk/tjoCvvn6 5L/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=XlGo8wu9AKlFVr1dyScojmKDuiEk8agWM+O0u1l3f0M=; b=sxKqBp9K50HZy+JyV7pIm0UO72y1kHwLCX1KjHe3YlNsIUZWyzqN7iW3Ms2lKZUQXg QjgGmiRJcx+fO9C8oCul+rodRJJ/X9IFrWEk8sAlA+YKC/L/FDM8dCTgVK890fxNfhOo dKjmwnrCb9PEiy13qisPAo7SVKUtIH6PkREf1JIRnNJ2UNBFg+8nrp89pFQXZPWMEigm aMDbeXXVSXwzvwKd7/YEx9KERbcC+A62leSEOiQndq7rET6C0LYT9Fj2ygCs2FNFWnZC le3fO3Ep8SDsjJiXsDoZh4pQBFDqmVKQCL6XKj8BBqm/q0ZpsNN0wvYH+cKCNdpZrBP9 rf2A== X-Gm-Message-State: APjAAAXafSaN3kadF8i0GlI4x/9YfHQaagSeXhSuRD8nQLYyNg7xImhW l6wjK4Xfa+mYe0QTVWnmoLj4WA== X-Google-Smtp-Source: APXvYqwnhq0iZ76Z4C+U/DPS8xiBKhjBZKCloTJ6gNu3EpDUnI/ukPv+ofUi0wFktiCeV4ub/FRkpg== X-Received: by 2002:a19:c205:: with SMTP id l5mr24742375lfc.159.1582460338306; Sun, 23 Feb 2020 04:18:58 -0800 (PST) Received: from localhost.bredbandsbolaget (c-5ac9225c.014-348-6c756e10.bbcust.telenor.se. [92.34.201.90]) by smtp.gmail.com with ESMTPSA id r10sm5458553ljk.9.2020.02.23.04.18.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2020 04:18:57 -0800 (PST) From: Linus Walleij To: Thierry Reding , Sam Ravnborg , dri-devel@lists.freedesktop.org, Rob Herring Subject: [PATCH 3/3 v2] drm/panel: Add driver for Novatek NT35510-based panels Date: Sun, 23 Feb 2020 13:18:41 +0100 Message-Id: <20200223121841.26836-3-linus.walleij@linaro.org> X-Mailer: git-send-email 2.21.1 In-Reply-To: <20200223121841.26836-1-linus.walleij@linaro.org> References: <20200223121841.26836-1-linus.walleij@linaro.org> MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Stephan Gerhold Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" This adds a driver for panels based on the Novatek NT35510 display driver IC, such as the Hydis HVA40WV1 panel found in the Samsung GT-S7710. The NT35510 can be used with both internal and external backlight (such as GPIO backlight) so we support both: if no external backlight is found, we register a subdriver for the internal backlight. Cc: Stephan Gerhold Signed-off-by: Linus Walleij --- ChangeLog v1->v2: - Rebase onto v5.6-rc1 - Account for changes in the panel struct and get_modes() passing the connector as argument. - Use specific full filename for the panel driver. - Update to match rename of DT binding file. - Drop select VIDEO_MODE_HELPERS - Fix spelling errors and stray characters, call 4bit groups nibbles rather than nybbles - Alphabetize includes and order them as requested by Sam - Drop the surplus videomode includes - Drop any backlight handling from .enable() and .disable() callbacks and rely on the backlight handling in the DRM panel core, but still assign a backlight from within the driver if we don't find one in the device tree. --- MAINTAINERS | 7 + drivers/gpu/drm/panel/Kconfig | 10 + drivers/gpu/drm/panel/Makefile | 1 + drivers/gpu/drm/panel/panel-novatek-nt35510.c | 1098 +++++++++++++++++ 4 files changed, 1116 insertions(+) create mode 100644 drivers/gpu/drm/panel/panel-novatek-nt35510.c diff --git a/MAINTAINERS b/MAINTAINERS index 17f502467c8a..8e7433d74530 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -5322,6 +5322,13 @@ F: drivers/gpu/drm/msm/ F: include/uapi/drm/msm_drm.h F: Documentation/devicetree/bindings/display/msm/ +DRM DRIVER FOR NOVATEK NT35510 PANELS +M: Linus Walleij +T: git git://anongit.freedesktop.org/drm/drm-misc +S: Maintained +F: drivers/gpu/drm/panel/panel-novatek-nt35510.c +F: Documentation/devicetree/bindings/display/panel/novatek,nt35510.yaml + DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS M: Ben Skeggs L: dri-devel@lists.freedesktop.org diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig index 19eac3d799a7..b37495a5acce 100644 --- a/drivers/gpu/drm/panel/Kconfig +++ b/drivers/gpu/drm/panel/Kconfig @@ -149,6 +149,16 @@ config DRM_PANEL_NEC_NL8048HL11 panel (found on the Zoom2/3/3630 SDP boards). To compile this driver as a module, choose M here. +config DRM_PANEL_NOVATEK_NT35510 + tristate "Novatek NT35510 RGB panel driver" + depends on OF + depends on DRM_MIPI_DSI + depends on BACKLIGHT_CLASS_DEVICE + help + Say Y here if you want to enable support for the panels built + around the Novatek NT35510 display controller, such as some + Hydis panels. + config DRM_PANEL_NOVATEK_NT39016 tristate "Novatek NT39016 RGB/SPI panel" depends on OF && SPI diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile index c4ca0e3b9b3c..7bc8a57ede2b 100644 --- a/drivers/gpu/drm/panel/Makefile +++ b/drivers/gpu/drm/panel/Makefile @@ -13,6 +13,7 @@ obj-$(CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829) += panel-leadtek-ltk500hd1829.o obj-$(CONFIG_DRM_PANEL_LG_LB035Q02) += panel-lg-lb035q02.o obj-$(CONFIG_DRM_PANEL_LG_LG4573) += panel-lg-lg4573.o obj-$(CONFIG_DRM_PANEL_NEC_NL8048HL11) += panel-nec-nl8048hl11.o +obj-$(CONFIG_DRM_PANEL_NOVATEK_NT35510) += panel-novatek-nt35510.o obj-$(CONFIG_DRM_PANEL_NOVATEK_NT39016) += panel-novatek-nt39016.o obj-$(CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO) += panel-olimex-lcd-olinuxino.o obj-$(CONFIG_DRM_PANEL_ORISETECH_OTM8009A) += panel-orisetech-otm8009a.o diff --git a/drivers/gpu/drm/panel/panel-novatek-nt35510.c b/drivers/gpu/drm/panel/panel-novatek-nt35510.c new file mode 100644 index 000000000000..b4c014126781 --- /dev/null +++ b/drivers/gpu/drm/panel/panel-novatek-nt35510.c @@ -0,0 +1,1098 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Novatek NT35510 panel driver + * Copyright (C) 2020 Linus Walleij + * Based on code by Robert Teather (C) 2012 Samsung + * + * This display driver (and I refer to the physical component NT35510, + * not this Linux kernel software driver) can handle: + * 480x864, 480x854, 480x800, 480x720 and 480x640 pixel displays. + * It has 480x840x24bit SRAM embedded for storing a frame. + * When powered on the display is by default in 480x800 mode. + * + * The actual panels using this component have different names, but + * the code needed to set up and configure the panel will be similar, + * so they should all use the NT35510 driver with appropriate configuration + * per-panel, e.g. for physical size. + * + * This driver is for the DSI interface to panels using the NT35510. + * + * The NT35510 can also use an RGB (DPI) interface combined with an + * I2C or SPI interface for setting up the NT35510. If this is needed + * this panel driver should be refactored to also support that use + * case. + */ +#include +#include +#include +#include +#include +#include +#include + +#include