From patchwork Mon Mar 17 12:03:56 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrzej Hajda X-Patchwork-Id: 3843231 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id ABC1C9F369 for ; Mon, 17 Mar 2014 12:04:39 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 663C2201BB for ; Mon, 17 Mar 2014 12:04:38 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id C88E12020E for ; Mon, 17 Mar 2014 12:04:36 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id CAFE74B127; Mon, 17 Mar 2014 05:04:35 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) by gabe.freedesktop.org (Postfix) with ESMTP id 9C8AE4B127 for ; Mon, 17 Mar 2014 05:04:34 -0700 (PDT) Received: from eucpsbgm2.samsung.com (unknown [203.254.199.245]) by mailout1.w1.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0N2K00L6KXJKMB60@mailout1.w1.samsung.com> for dri-devel@lists.freedesktop.org; Mon, 17 Mar 2014 12:04:32 +0000 (GMT) X-AuditID: cbfec7f5-b7fc96d000004885-ab-5326e4d066fd Received: from eusync1.samsung.com ( [203.254.199.211]) by eucpsbgm2.samsung.com (EUCPMTA) with SMTP id 05.65.18565.0D4E6235; Mon, 17 Mar 2014 12:04:32 +0000 (GMT) Received: from AMDC1061.digital.local ([106.116.147.88]) by eusync1.samsung.com (Oracle Communications Messaging Server 7u4-23.01 (7.0.4.23.0) 64bit (built Aug 10 2011)) with ESMTPA id <0N2K00ENRXJFZV40@eusync1.samsung.com>; Mon, 17 Mar 2014 12:04:32 +0000 (GMT) From: Andrzej Hajda To: dri-devel@lists.freedesktop.org Subject: [PATCH v2 5/9] drm/exynos: restore parallel output interface support Date: Mon, 17 Mar 2014 13:03:56 +0100 Message-id: <1395057836-11368-1-git-send-email-a.hajda@samsung.com> X-Mailer: git-send-email 1.8.3.2 In-reply-to: <1395052045-23848-6-git-send-email-a.hajda@samsung.com> References: <1395052045-23848-6-git-send-email-a.hajda@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrGLMWRmVeSWpSXmKPExsVy+t/xy7oXnqgFG7Q8ZbG4te4cq8W8VROZ LeYfAbKufH3PZtH/ZiGrxYE/Oxgtzr1ayWgx6f4EFouzTW/YLWac38dksfbIXXaLpdcvMllM mL6WxaJ17xF2i7sbzjI68HusmbeG0WN2w0UWj8t9vUweM5a8YPRYufwLm8emVZ1sHneu7WHz uN99nMmjb8sqRo/Pm+QCuKK4bFJSczLLUov07RK4Mv5PW8BS8Dem4sS88ywNjPt9uxg5OSQE TCSub1zPBGGLSVy4t56ti5GLQ0hgKaPEzju9LCAJIYE+JokTF0NAbDYBTYm/m2+ygdgiAsoS fyeuYgRpYBaYyCIxY+11sISwgK/EuivbGUFsFgFViemT/rGC2LwCzhLPTj9jhNimILHsy1rm LkYODk4BF4k1R3UhdjlLfG/dwTyBkXcBI8MqRtHU0uSC4qT0XCO94sTc4tK8dL3k/NxNjJCw /rqDcekxq0OMAhyMSjy8E5TVgoVYE8uKK3MPMUpwMCuJ8KZdAwrxpiRWVqUW5ccXleakFh9i ZOLglGpgTFoV2pipkz67N6lMYebUxP8nKu+WvnnYsndFQxjb8QnmP6xuFCs93nl6vgn73ScP PW6pBHi8n/DVNGxXwH6hWe6Rbk9X57NNnMk+XenAzW7rW8uU5RxDp3Zsj0vW5PjG7MrssU/n iKpN/NSV88/rayUsacji+O6gHmY4Q/3P2y2dSrnOZ3nZlViKMxINtZiLihMBUahbRkkCAAA= Cc: Mark Rutland , devicetree@vger.kernel.org, linux-samsung-soc@vger.kernel.org, Pawel Moll , Ian Campbell , Andrzej Hajda , Kyungmin Park , Rob Herring , Kumar Gala , Grant Likely , Denis Carikli , Marek Szyprowski X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, T_RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The patch adds parallel output interface to FIMD device driver. It also restores support for panels initialized by boot loader, but without proper kernel driver. Driver uses video interface bindings to find connected panel. It uses drm_panel interface to interact with the panel. Signed-off-by: Andrzej Hajda --- v2: - corrected stub definitions --- drivers/gpu/drm/exynos/Kconfig | 8 + drivers/gpu/drm/exynos/Makefile | 1 + drivers/gpu/drm/exynos/exynos_drm_dpi.c | 339 +++++++++++++++++++++++++++++++ drivers/gpu/drm/exynos/exynos_drm_drv.h | 8 + drivers/gpu/drm/exynos/exynos_drm_fimd.c | 4 + 5 files changed, 360 insertions(+) create mode 100644 drivers/gpu/drm/exynos/exynos_drm_dpi.c diff --git a/drivers/gpu/drm/exynos/Kconfig b/drivers/gpu/drm/exynos/Kconfig index 7eea698..56f9581 100644 --- a/drivers/gpu/drm/exynos/Kconfig +++ b/drivers/gpu/drm/exynos/Kconfig @@ -31,6 +31,14 @@ config DRM_EXYNOS_FIMD help Choose this option if you want to use Exynos FIMD for DRM. +config DRM_EXYNOS_DPI + bool "EXYNOS DRM parallel output support" + depends on DRM_EXYNOS + select DRM_PANEL + default n + help + This enables support for Exynos parallel output. + config DRM_EXYNOS_DP bool "EXYNOS DRM DP driver support" depends on DRM_EXYNOS && ARCH_EXYNOS diff --git a/drivers/gpu/drm/exynos/Makefile b/drivers/gpu/drm/exynos/Makefile index b1839e8..babcd52 100644 --- a/drivers/gpu/drm/exynos/Makefile +++ b/drivers/gpu/drm/exynos/Makefile @@ -11,6 +11,7 @@ exynosdrm-y := exynos_drm_drv.o exynos_drm_encoder.o \ exynosdrm-$(CONFIG_DRM_EXYNOS_IOMMU) += exynos_drm_iommu.o exynosdrm-$(CONFIG_DRM_EXYNOS_DMABUF) += exynos_drm_dmabuf.o exynosdrm-$(CONFIG_DRM_EXYNOS_FIMD) += exynos_drm_fimd.o +exynosdrm-$(CONFIG_DRM_EXYNOS_DPI) += exynos_drm_dpi.o exynosdrm-$(CONFIG_DRM_EXYNOS_DP) += exynos_dp_core.o exynos_dp_reg.o exynosdrm-$(CONFIG_DRM_EXYNOS_HDMI) += exynos_hdmi.o exynos_mixer.o exynosdrm-$(CONFIG_DRM_EXYNOS_VIDI) += exynos_drm_vidi.o diff --git a/drivers/gpu/drm/exynos/exynos_drm_dpi.c b/drivers/gpu/drm/exynos/exynos_drm_dpi.c new file mode 100644 index 0000000..2b09c7c --- /dev/null +++ b/drivers/gpu/drm/exynos/exynos_drm_dpi.c @@ -0,0 +1,339 @@ +/* + * Exynos DRM Parallel output support. + * + * Copyright (c) 2014 Samsung Electronics Co., Ltd + * + * Contacts: Andrzej Hajda + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. +*/ + +#include +#include +#include + +#include + +#include