Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp4854737imm; Tue, 19 Jun 2018 00:37:26 -0700 (PDT) X-Google-Smtp-Source: ADUXVKISCFYmx39houX0/bQ65seCq5kQi1XRUsw2zzZrhZEBWTLy+qkYp4X0WRyOonlZe0+9gs9a X-Received: by 2002:a63:7d4c:: with SMTP id m12-v6mr13620221pgn.201.1529393846305; Tue, 19 Jun 2018 00:37:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529393846; cv=none; d=google.com; s=arc-20160816; b=emYmPHss0dibRwyPloxH4D4//oA5MjoSv8/2o71Zwcm1SLrTjFrrEaLLu+B9KgYWNO ipTwRdbKsYI0jAiY7wjZa9zqtPORJuKg3+9F4qzVxmcsERUdUxPxbVxue3cypRFXdsje djZKL+h/KY0/WZaqQEI6OFZx6BCDvCknyhvsT/rj0u3oRP9hK+oPFFxMoIajOWqxgWg3 8QWLJ72bkH37UeZxvsL846uwFMOIQkpaf3ZF4QdgeV/SlUwFUNCvcIQuf5TDgkenQy90 UI9VkexXEB0K9Uv//pG4ezBAMJaNJX+Q6hYJo2SkTbMzvWkf/6Y5dt85Ge8kwexq5e4x uQZg== 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=jdw1etyX54koxvlvxiUH0twBb3Uw7HeEi1EzVUspCRAjg9aGHszKaajcDl0PiN+PK2 C+sm79azSUUga1TiwveshdutOY9hieV8WwlAnNnf7F0PGskwsYVOA0/AVpJKe84UgLV9 hFV/k3swGs7SAihoh0sPTkeF6QUy7ZDktdfX4GupE/NKaJV+J0nGxBQuf0eW9CqLStHS 2UvhP1dpxXVGpI93OjaNwMzJlyeLbmr8Q1V1ZoB1JmJDrSsKAOeVbFzc0h1dt9R5cQSY v/RbKTQ204WpNz3c06nOe3xWHyd3Ny/RW+8wW8RAxi39BoGGGbqEKTY6EZqxmMls0u0d 4qnA== 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 y35-v6si14026414pga.319.2018.06.19.00.37.12; Tue, 19 Jun 2018 00:37:26 -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 S966000AbeFSHgJ (ORCPT + 99 others); Tue, 19 Jun 2018 03:36:09 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:48261 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S965362AbeFSHfL (ORCPT ); Tue, 19 Jun 2018 03:35:11 -0400 X-UUID: 02f2dffbf64a4a378cd567555bf60fb5-20180619 Received: from mtkexhb02.mediatek.inc [(172.21.101.103)] by mailgw02.mediatek.com (envelope-from ) (mhqrelay.mediatek.com ESMTP with TLS) with ESMTP id 1209567439; Tue, 19 Jun 2018 15:35:09 +0800 Received: from mtkcas07.mediatek.inc (172.21.101.84) by mtkmbs03n2.mediatek.inc (172.21.101.182) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Tue, 19 Jun 2018 15:35:08 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkcas07.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1210.3 via Frontend Transport; Tue, 19 Jun 2018 15:35:08 +0800 From: Stu Hsieh To: CK Hu , Philipp Zabel CC: David Airlie , Rob Herring , Mark Rutland , Matthias Brugger , , , , , , , Stu Hsieh Subject: [PATCH v6 28/29] drm/mediatek: add third ddp path Date: Tue, 19 Jun 2018 15:34:29 +0800 Message-ID: <1529393670-26862-29-git-send-email-stu.hsieh@mediatek.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1529393670-26862-1-git-send-email-stu.hsieh@mediatek.com> References: <1529393670-26862-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