From patchwork Tue Jan 7 11:27:28 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Harigovindan P X-Patchwork-Id: 11320763 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 BC80314B4 for ; Tue, 7 Jan 2020 11:27:59 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id A4FD520848 for ; Tue, 7 Jan 2020 11:27:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727875AbgAGL16 (ORCPT ); Tue, 7 Jan 2020 06:27:58 -0500 Received: from alexa-out-blr-02.qualcomm.com ([103.229.18.198]:20455 "EHLO alexa-out-blr-02.qualcomm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726937AbgAGL16 (ORCPT ); Tue, 7 Jan 2020 06:27:58 -0500 Received: from ironmsg02-blr.qualcomm.com ([10.86.208.131]) by alexa-out-blr-02.qualcomm.com with ESMTP/TLS/AES256-SHA; 07 Jan 2020 16:57:55 +0530 Received: from harigovi-linux.qualcomm.com ([10.204.66.157]) by ironmsg02-blr.qualcomm.com with ESMTP; 07 Jan 2020 16:57:41 +0530 Received: by harigovi-linux.qualcomm.com (Postfix, from userid 2332695) id 89EBE2574; Tue, 7 Jan 2020 16:57:40 +0530 (IST) From: Harigovindan P To: dri-devel@lists.freedesktop.org, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, devicetree@vger.kernel.org Cc: Harigovindan P , robdclark@gmail.com, seanpaul@chromium.org, sean@poorly.run Subject: [PATCH 1/2] dt-bindings: display: add sc7180 panel variant Date: Tue, 7 Jan 2020 16:57:28 +0530 Message-Id: <1578396449-17062-2-git-send-email-harigovi@codeaurora.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578396449-17062-1-git-send-email-harigovi@codeaurora.org> References: <1578396449-17062-1-git-send-email-harigovi@codeaurora.org> Sender: linux-arm-msm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org Add a compatible string to support sc7180 panel version. Changes in v1: -Added a compatible string to support sc7180 panel version. Changes in v2: -Removed unwanted properties from description. -Creating source files without execute permissions(Rob Herring). Signed-off-by: Harigovindan P --- .../bindings/display/visionox,rm69299.txt | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 Documentation/devicetree/bindings/display/visionox,rm69299.txt diff --git a/Documentation/devicetree/bindings/display/visionox,rm69299.txt b/Documentation/devicetree/bindings/display/visionox,rm69299.txt new file mode 100644 index 0000000..d7bbd5f --- /dev/null +++ b/Documentation/devicetree/bindings/display/visionox,rm69299.txt @@ -0,0 +1,48 @@ +Visionox model RM69299 DSI display driver + +The Visionox RM69299 is a generic display driver, currently only configured +for use in the 1080p display on the Qualcomm SC7180 MTP board. + +Required properties: +- compatible: should be "visionox,rm69299-1080p-display" +- vdda-supply: phandle of the regulator that provides the supply voltage + Power IC supply +- vdd3p3-supply: phandle of the regulator that provides the supply voltage + Power IC supply +- reset-gpios: phandle of gpio for reset line + This should be 8mA, gpio can be configured using mux, pinctrl, pinctrl-names + (active low) +- ports: This device has one video port driven by one DSI. Their connections + are modeled using the OF graph bindings specified in + Documentation/devicetree/bindings/graph.txt. + - port@0: DSI input port driven by master DSI + +Example: + + dsi@ae94000 { + panel@0 { + compatible = "visionox,rm69299-1080p-display"; + reg = <0>; + + vdda-supply = <&src_pp1800_l8c>; + vdd3p3-supply = <&src_pp2800_l18a>; + + pinctrl-names = "default", "suspend"; + pinctrl-0 = <&disp_pins_default>; + pinctrl-1 = <&disp_pins_default>; + + reset-gpios = <&pm6150l_gpios 3 0>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + port@0 { + reg = <0>; + panel0_in: endpoint { + remote-endpoint = <&dsi0_out>; + }; + }; + }; + }; + }; -- 2.7.4 From patchwork Tue Jan 7 11:27:29 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Harigovindan P X-Patchwork-Id: 11320765 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 1417B14B4 for ; Tue, 7 Jan 2020 11:28:03 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id DC8EB20848 for ; Tue, 7 Jan 2020 11:28:02 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727945AbgAGL2C (ORCPT ); Tue, 7 Jan 2020 06:28:02 -0500 Received: from alexa-out-blr-02.qualcomm.com ([103.229.18.198]:20455 "EHLO alexa-out-blr-02.qualcomm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726937AbgAGL2C (ORCPT ); Tue, 7 Jan 2020 06:28:02 -0500 Received: from ironmsg02-blr.qualcomm.com ([10.86.208.131]) by alexa-out-blr-02.qualcomm.com with ESMTP/TLS/AES256-SHA; 07 Jan 2020 16:57:55 +0530 Received: from harigovi-linux.qualcomm.com ([10.204.66.157]) by ironmsg02-blr.qualcomm.com with ESMTP; 07 Jan 2020 16:57:43 +0530 Received: by harigovi-linux.qualcomm.com (Postfix, from userid 2332695) id 3CE352574; Tue, 7 Jan 2020 16:57:43 +0530 (IST) From: Harigovindan P To: dri-devel@lists.freedesktop.org, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, devicetree@vger.kernel.org Cc: Harigovindan P , robdclark@gmail.com, seanpaul@chromium.org, sean@poorly.run Subject: [PATCH 2/2] drm/panel: add support for rm69299 visionox panel driver Date: Tue, 7 Jan 2020 16:57:29 +0530 Message-Id: <1578396449-17062-3-git-send-email-harigovi@codeaurora.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1578396449-17062-1-git-send-email-harigovi@codeaurora.org> References: <1578396449-17062-1-git-send-email-harigovi@codeaurora.org> Sender: linux-arm-msm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org Add support for Visionox panel driver. Changes in v1: -Split out panel driver patch from dsi config changes(Rob Clark). -Remove unrelated code(Stephen Boyd). -Remove static arrays to make regulator setup open coded in probe(Stephen Boyd). -Remove pre-assigning variables(Stephen Boyd). -Inline panel_add function into probe(Stephen Boyd). -Use mipi_dsi_dcs_write directly(Rob Clark). -Remove qcom_rm69299_1080p_panel_magic_cmds array(Rob Clark). Changes in v2: -Dropping redundant space in Kconfig(Sam Ravnborg). -Changing structure for include files(Sam Ravnborg). -Removing backlight related code and functions(Sam Ravnborg). -Removing repeated printing of error message(Sam Ravnborg). -Adding drm_connector as an argument for get_modes function. Signed-off-by: Harigovindan P --- drivers/gpu/drm/panel/Kconfig | 8 + drivers/gpu/drm/panel/Makefile | 1 + drivers/gpu/drm/panel/panel-visionox-rm69299.c | 370 +++++++++++++++++++++++++ 3 files changed, 379 insertions(+) create mode 100644 drivers/gpu/drm/panel/panel-visionox-rm69299.c diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig index f152bc4..123481f 100644 --- a/drivers/gpu/drm/panel/Kconfig +++ b/drivers/gpu/drm/panel/Kconfig @@ -355,4 +355,12 @@ config DRM_PANEL_TRULY_NT35597_WQXGA help Say Y here if you want to enable support for Truly NT35597 WQXGA Dual DSI Video Mode panel + +config DRM_PANEL_VISIONOX_RM69299 + tristate "Visionox RM69299" + depends on OF + depends on DRM_MIPI_DSI + help + Say Y here if you want to enable support for Visionox + RM69299 DSI Video Mode panel. endmenu diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile index b6cd39f..6f1e4c6 100644 --- a/drivers/gpu/drm/panel/Makefile +++ b/drivers/gpu/drm/panel/Makefile @@ -38,3 +38,4 @@ obj-$(CONFIG_DRM_PANEL_TPO_TD028TTEC1) += panel-tpo-td028ttec1.o obj-$(CONFIG_DRM_PANEL_TPO_TD043MTEA1) += panel-tpo-td043mtea1.o obj-$(CONFIG_DRM_PANEL_TPO_TPG110) += panel-tpo-tpg110.o obj-$(CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA) += panel-truly-nt35597.o +obj-$(CONFIG_DRM_PANEL_VISIONOX_RM69299) += panel-visionox-rm69299.o diff --git a/drivers/gpu/drm/panel/panel-visionox-rm69299.c b/drivers/gpu/drm/panel/panel-visionox-rm69299.c new file mode 100644 index 0000000..3fa1cb4 --- /dev/null +++ b/drivers/gpu/drm/panel/panel-visionox-rm69299.c @@ -0,0 +1,370 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (c) 2019, The Linux Foundation. All rights reserved. + */ + +#include +#include +#include +#include +#include + +#include