Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp535452imm; Wed, 20 Jun 2018 02:27:45 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJz7SsGYCX+l+OFgt4ecrvnXrAH5XHsPjx2PIBl04K7jJWO1//t2uJSb/YPAPl7LU7bxRCo X-Received: by 2002:a65:46cb:: with SMTP id n11-v6mr17668902pgr.193.1529486865664; Wed, 20 Jun 2018 02:27:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529486865; cv=none; d=google.com; s=arc-20160816; b=zNewJR8R1OlQhj43DU+kpbixYZJZ6FDwKky4ZD9mgh9eNM6pWXNA1w/CoEFPFToBqu /t9R+agJIKtNiKksktSB2rQM0bmu8FKdfccMnS8KlXRMB35Ah+ysRvbMax27ZYSL8EIv DqxRHHeki+48ycA98jeEMbnCONqzax9JJp8wQ8K1jcwelsZRTb2Q7lcuXAO/WKXdasLm vvTCE8dVzv0Fnn+82rNTONqm1hr2l/PEOA1EiMrDQjAaZqLKuk2UsyNCG5A0ieQ36npq 3PXGau2OkA6Xg/QDD/+GJaS37YMN07Lfq7VstZe/eSdZ6GIlpoSBvJaW5mVowACY/qUb sEGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:arc-authentication-results; bh=UVLwq5eElWqPDX72iORdOvNRnyIhYjcthupPcVqENhY=; b=Smo4mr+GlpA0cB92l0jtY6DAxcuJdNnp2n1A4rTe0Z2qK2JUVMA2KndfY9bQW5HeJL wy1NiHd+2bcridCJKRga8IVGMB9NiozsLPBcgaPVon62y7WlAPQI5Wvi2ccqvJge2kRy h3Chas57J1X9x80CKuB9NyBfM8E86TghwE9syK3M8SIlEbZjdksAVRbY2ryGssJrUVcW MtO76YOPIhKm/X+o2dx0IfJmWIWI4qVrTY9VZl/h6zdmcO1NV2TSyBxR7lgJh/grjsfd jj5vMWCntw687SisCzLQn9gUJ4ssybpjV7guMVj/jfat/rR9A9LeecnaIG69F0q60JzN /MPg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x15-v6si1590252pgv.389.2018.06.20.02.27.31; Wed, 20 Jun 2018 02:27:45 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754790AbeFTJ0t (ORCPT + 99 others); Wed, 20 Jun 2018 05:26:49 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:4623 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1754529AbeFTI3x (ORCPT ); Wed, 20 Jun 2018 04:29:53 -0400 X-UUID: 87872f5036c04406abd6e236909999c6-20180620 Received: from mtkcas07.mediatek.inc [(172.21.101.84)] by mailgw02.mediatek.com (envelope-from ) (mhqrelay.mediatek.com ESMTP with TLS) with ESMTP id 1210371838; Wed, 20 Jun 2018 16:19:49 +0800 Received: from mtkcas08.mediatek.inc (172.21.101.126) by mtkmbs01n2.mediatek.inc (172.21.101.79) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Wed, 20 Jun 2018 16:19:47 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkcas08.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1210.3 via Frontend Transport; Wed, 20 Jun 2018 16:19:48 +0800 From: Stu Hsieh To: CK Hu , Philipp Zabel CC: David Airlie , Rob Herring , Mark Rutland , Matthias Brugger , , , , , , , Stu Hsieh Subject: [PATCH v7 28/29] drm/mediatek: add third ddp path Date: Wed, 20 Jun 2018 16:19:30 +0800 Message-ID: <1529482771-2153-29-git-send-email-stu.hsieh@mediatek.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1529482771-2153-1-git-send-email-stu.hsieh@mediatek.com> References: <1529482771-2153-1-git-send-email-stu.hsieh@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain X-MTK: N Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch create third crtc by third ddp path Signed-off-by: Stu Hsieh Reviewed-by: CK Hu --- drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 3 +++ drivers/gpu/drm/mediatek/mtk_drm_drv.c | 5 +++++ drivers/gpu/drm/mediatek/mtk_drm_drv.h | 5 ++++- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c index 658b8dd45b83..2d6aa150a9ff 100644 --- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c +++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c @@ -539,6 +539,9 @@ int mtk_drm_crtc_create(struct drm_device *drm_dev, int ret; int i; + if (!path) + return 0; + for (i = 0; i < path_len; i++) { enum mtk_ddp_comp_id comp_id = path[i]; struct device_node *node; diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c index 08d5d0b47bfe..3d279a299383 100644 --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c @@ -232,6 +232,11 @@ static int mtk_drm_kms_init(struct drm_device *drm) if (ret < 0) goto err_component_unbind; + ret = mtk_drm_crtc_create(drm, private->data->third_path, + private->data->third_len); + if (ret < 0) + goto err_component_unbind; + /* Use OVL device for all DMA memory allocations */ np = private->comp_node[private->data->main_path[0]] ?: private->comp_node[private->data->ext_path[0]]; diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.h b/drivers/gpu/drm/mediatek/mtk_drm_drv.h index c3378c452c0a..ecc00ca3221d 100644 --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.h +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.h @@ -17,7 +17,7 @@ #include #include "mtk_drm_ddp_comp.h" -#define MAX_CRTC 2 +#define MAX_CRTC 3 #define MAX_CONNECTOR 2 struct device; @@ -33,6 +33,9 @@ struct mtk_mmsys_driver_data { unsigned int main_len; const enum mtk_ddp_comp_id *ext_path; unsigned int ext_len; + const enum mtk_ddp_comp_id *third_path; + unsigned int third_len; + bool shadow_register; }; -- 2.12.5