Received: by 2002:a05:6a10:6006:0:0:0:0 with SMTP id w6csp229690pxa; Wed, 26 Aug 2020 09:04:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx+nrw4IBvCXlfWYWyikl6zsq0G5VZNRnv/mx69jW4ozy8La6LtqOZs7VHDN236wgNrFUVK X-Received: by 2002:a17:906:6b87:: with SMTP id l7mr15683459ejr.198.1598457888116; Wed, 26 Aug 2020 09:04:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1598457888; cv=none; d=google.com; s=arc-20160816; b=BhUanbPc86MuRYKIOnShjX8C/akX93x7YOZj+rpMleI1+uRAFI7bGB95XCFd8x0X+L JHnFeWp79vIwH6WPSnhluQWrWNlk3Fhmm+Yd1Us4PXfFHaAMsn3hLn+2fNQCvLwlsvbN SNYmVLg8kgq/ZJEexzuMVHHdgKRn05YbhHdqVfs8KaGw90XoBDOKbHRHTj8uGKzu4BzL Lq5qptItBPQ5STheXUMSTlrQBPSRiWmynRB0Pk5KGMlZ4DCFxhXPskXK9Vc5HaRIh89S TS7TJnSqpIeDomDOyKVDm/thYmyCMRvjkRsZX1+IerSXQ+wkgBR6AYU1B6Rznd1hJSHO 1c7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=1MaekrRirwKyLzs9+Fv4keJH6CPIXWhtw9U0PCRkCag=; b=aBic6q6UCoKp34sVlNsBo6Bn6k4Q+JHuQ0ksJP8DfLuA8C8QeaLL3FEHpQj94CBkB1 l5WIbLmeGKB6KRLfv8kG6uOYpppPl4/jyn8vMmfmzRmU07GOO6qbwL3KHVV1nZVlBgsP aBk4xBCnPqls7gdCbVTW8s+aWm6dVK8aFCp3pHkxXDbngdlUYdATda570khNXhX+cpTE XjCl1Dj72wHB14QQKU+CYjcV+snFzQfqzq32MWq7Wv6phE/X9mV+fISW0lx45bLen4WA Czt+39OTks87OrREAsjzxl5hSINnWBuBvyL6wLW5Afg1ZVxjzQ3ZEfrqEJk5eE5hDz1O B+/A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=je8FKIC9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id q3si1825028ejb.543.2020.08.26.09.04.24; Wed, 26 Aug 2020 09:04:48 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=je8FKIC9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727879AbgHZQDn (ORCPT + 99 others); Wed, 26 Aug 2020 12:03:43 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45014 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727860AbgHZQDV (ORCPT ); Wed, 26 Aug 2020 12:03:21 -0400 Received: from mail-pg1-x541.google.com (mail-pg1-x541.google.com [IPv6:2607:f8b0:4864:20::541]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4D965C061756 for ; Wed, 26 Aug 2020 09:03:21 -0700 (PDT) Received: by mail-pg1-x541.google.com with SMTP id i10so1268519pgk.1 for ; Wed, 26 Aug 2020 09:03:21 -0700 (PDT) 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=1MaekrRirwKyLzs9+Fv4keJH6CPIXWhtw9U0PCRkCag=; b=je8FKIC9TGkUAFpMpoOz6n/MZ2qY+MYbDAsxEvFByHYwAys46YPtfyvinT5Tc5VoLm VfkjkpM0XzmxkSRNqoO9LHL6c+xnl99zoU8PzEayCX+rnKFVJjS1sNMeZlXdPasbmsSk asoFQHgi0de+x4c1buK756hG3y3ggRi50Iq0QQmTizbxaLpb7POgmp/WdQK7HHERY5Ha AqW78nNYRwAMtRXUrGe4zBbA4Tjaj8x8EO2FtzIq0gcqZLkTIM1SFym6ke4Aly7Pmat/ SNHnLNOMjlNdyBA0LsE0m3nB0cl/BiNF09/fY31IomJ77dFQVxqN60hnWdxEHdp5KUXZ WyGg== 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=1MaekrRirwKyLzs9+Fv4keJH6CPIXWhtw9U0PCRkCag=; b=UZO/aknZm2u1TEpYpMoQO46TcDW8Erxt6sodyeJfjVaEeil4Xa+kjqmX59IgbNvOOS oAHhYHVN4IUwFI7+gIobTUBsOWZirbt/KvmzlR5oK/bY41QR7l52fnawLTH5eSVBG80p 3/uwNLtZXfv58gE+DutuQkMGto9GEFoAOpcBsa918Z/V5ungPgl8kiGFNzc7dvy2FKMo vJYOLe87RxtP6z4RKvW6LEGX2JTHe3O8HFYRzAcm7ipSk0WwLp9tUH5BojYX/g0b7cpE BgPX2dxmRZ1Ews9lHvS56VQsudZJqZmqww8042/uQhHVNqnu3P+2I6JMd9GAoKCGPCnh Tamg== X-Gm-Message-State: AOAM5309l8Z2OUVMmudgWdUzO4raQVzrGjskP3+93BOvm2nEYjHhtvKY IQX9m4+Vj938lBMN3FNSL79J/A== X-Received: by 2002:a63:471b:: with SMTP id u27mr11023159pga.139.1598457800565; Wed, 26 Aug 2020 09:03:20 -0700 (PDT) Received: from nagraj.local ([49.206.21.239]) by smtp.gmail.com with ESMTPSA id u3sm2487555pjn.29.2020.08.26.09.03.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Aug 2020 09:03:19 -0700 (PDT) From: Sumit Semwal To: Thierry Reding , Sam Ravnborg , Rob Herring Cc: David Airlie , Daniel Vetter , Mauro Carvalho Chehab , "David S . Miller" , Rob Herring , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, Sumit Semwal Subject: [PATCH v5 0/2] Add support for Tianma nt36672a video mode panel Date: Wed, 26 Aug 2020 21:33:06 +0530 Message-Id: <20200826160308.18911-1-sumit.semwal@linaro.org> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Some Poco F1 phones from Xiaomi have a FHD+ video mode panel based on the Novatek NT36672A display controller; Add support for the same. Most of the panel data is taken from downstream panel dts, and is converted to drm-panel based driver by me. It has been validated with v5.9-rc1 based drm-misc-next on Poco F1 phone; my tree with other dependent patches is here [1] [1]: https://git.linaro.org/people/sumit.semwal/linux-dev.git/log/?h=dev/poco-panel-upstreaming --- v2: In dt-binding, removed ports node, making port@0 directly under panel@0 node. Also updated the panel_on delay to a safer 200ms as needed for latest Android. v3: Replaced port@0 with just port in panel@0 node. v4: Since "0425662fdf05: drm: Nuke mode->vrefresh", we have to calculate vrefresh on demand. Update for it. v5: Fixed review comments from Sam: - rebased on top of drm-misc-next remove return of drm_panel_add() remove drm_panel_detach() - renamed the panel driver file to reflect that this is a novatek nt36672a display driver and not only for tianma panels. Adjusted some internal names also to reflect the same. - corrected changelog to add info about the generic Novatek DSI IC - corrected compatible string accordingly - removed pinctrl - used drm_panel* API for prepare/unprepare/disable/remove Sumit Semwal (2): dt-bindings: display: panel: Add bindings for Novatek nt36672a drm: panel: Add novatek nt36672a panel driver .../display/panel/novatek,nt36672a.yaml | 81 ++ MAINTAINERS | 7 + drivers/gpu/drm/panel/Kconfig | 10 + drivers/gpu/drm/panel/Makefile | 1 + .../gpu/drm/panel/panel-novatek-nt36672a.c | 767 ++++++++++++++++++ 5 files changed, 866 insertions(+) create mode 100644 Documentation/devicetree/bindings/display/panel/novatek,nt36672a.yaml create mode 100644 drivers/gpu/drm/panel/panel-novatek-nt36672a.c -- 2.28.0