From patchwork Tue Dec 9 09:29:05 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Hyungwon Hwang X-Patchwork-Id: 5461431 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id E45E6BEEBA for ; Tue, 9 Dec 2014 09:29:20 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 62EB720160 for ; Tue, 9 Dec 2014 09:29:19 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id B11CF2011D for ; Tue, 9 Dec 2014 09:29:17 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 4A6897209B; Tue, 9 Dec 2014 01:29:16 -0800 (PST) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mailout3.samsung.com (mailout3.samsung.com [203.254.224.33]) by gabe.freedesktop.org (Postfix) with ESMTP id 9B0A27209B for ; Tue, 9 Dec 2014 01:29:14 -0800 (PST) MIME-version: 1.0 Received: from epcpsbgr2.samsung.com (u142.gpu120.samsung.co.kr [203.254.230.142]) by mailout3.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0NGB00I976COKWB0@mailout3.samsung.com> for dri-devel@lists.freedesktop.org; Tue, 09 Dec 2014 18:29:12 +0900 (KST) Received: from epcpsbgm2.samsung.com ( [172.20.52.116]) by epcpsbgr2.samsung.com (EPCPMTA) with SMTP id 18.6F.11124.8E0C6845; Tue, 09 Dec 2014 18:29:12 +0900 (KST) X-AuditID: cbfee68e-f79b46d000002b74-59-5486c0e88792 Received: from epmmp2 ( [203.254.227.17]) by epcpsbgm2.samsung.com (EPCPMTA) with SMTP id 12.A4.09430.8E0C6845; Tue, 09 Dec 2014 18:29:12 +0900 (KST) Received: from localhost.localdomain ([10.88.98.185]) by mmp2.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0NGB00J246CKOU70@mmp2.samsung.com>; Tue, 09 Dec 2014 18:29:11 +0900 (KST) From: Hyungwon Hwang To: dri-devel@lists.freedesktop.org Subject: [PATCH v2 2/3] drm/panel: add s6e63j0x03 LCD panel driver Date: Tue, 09 Dec 2014 18:29:05 +0900 Message-id: <1418117346-9078-3-git-send-email-human.hwang@samsung.com> X-Mailer: git-send-email 1.9.1 In-reply-to: <1418117346-9078-1-git-send-email-human.hwang@samsung.com> References: <1418117346-9078-1-git-send-email-human.hwang@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrLIsWRmVeSWpSXmKPExsWyRsSkRPfFgbYQg1dblC1urTvHatF77iST xfwjQNaVr+/ZLPrfLGS1WDqjj9Xi3KuVjBaT7k9gsehdcJXN4mzTG3aLGef3MVksvX6RyWLC 9LUsFq17j7Bb/Nw1j8WB32PNvDWMHpf7epk8ds66y+6xcvkXNo9NqzrZPLZ/e8Dqcb/7OJNH 35ZVjB6fN8kFcEZx2aSk5mSWpRbp2yVwZTz4foC5YH8bY8XHnXNZGxjf5nYxcnBICJhItF1U 62LkBDLFJC7cW88GYgsJLGWUmLFICSJuItH9/ThjFyMXUHw6o8SvCR+ZQRK8AoISPybfYwGZ wywgL3HkUjZImFlAXWLSvEXMEPWtTBKNB06B1bMJ6EksuPaDHcQWEVCW+DtxFSNEw0cmiad/ wI4QFnCS2LKhGewIFgFViSWn/7NA7HKTeLG6lwXiIDmJk8cms4LYnALuEh3PJrBAHO0msfnV XhaQxRICSzkk2lp2skAMEpD4NvkQC8TDshKbDjBDzJGUOLjiBssERrFZSN6ZhfDOLCTvLGBk XsUomlqQXFCclF5kpFecmFtcmpeul5yfu4kRGOun/z3r28F484D1IUYBDkYlHl5Ny7YQIdbE suLK3EOMpkBHTGSWEk3OByaUvJJ4Q2MzIwtTE1NjI3NLMyVx3gSpn8FCAumJJanZqakFqUXx RaU5qcWHGJk4OKUaGDkc3/l+/bbzJdvtmN92FzRuqxoJzjt0yymWr+1+BJti70a/He38r9nk N7Jx7ytg8Hj046/93T3Jn+88KuRy285qqrdltcveiu9f3HPerln7J1ZLaNLuhZu1TuoePXzN X9TPqfny35mvN52cYidUZTd9186zrr9LVzU1dMk739l3ftpxV/PLpVeUWIozEg21mIuKEwET hVEe8AIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrJKsWRmVeSWpSXmKPExsVy+t9jQd0XB9pCDK5eFLa4te4cq0XvuZNM FvOPAFlXvr5ns+h/s5DVYumMPlaLc69WMlpMuj+BxaJ3wVU2i7NNb9gtZpzfx2Sx9PpFJosJ 09eyWLTuPcJu8XPXPBYHfo8189Ywelzu62Xy2DnrLrvHyuVf2Dw2repk89j+7QGrx/3u40we fVtWMXp83iQXwBnVwGiTkZqYklqkkJqXnJ+SmZduq+QdHO8cb2pmYKhraGlhrqSQl5ibaqvk 4hOg65aZA/SDkkJZYk4pUCggsbhYSd8O04TQEDddC5jGCF3fkCC4HiMDNJCwhjHjwfcDzAX7 2xgrPu6cy9rA+Da3i5GTQ0LARKL7+3FGCFtM4sK99WxdjFwcQgLTGSV+TfjIDJLgFRCU+DH5 HksXIwcHs4C8xJFL2SBhZgF1iUnzFjFD1LcySTQeOAVWzyagJ7Hg2g92EFtEQFni78RVjBAN H5kknv5RA7GFBZwktmxoZgOxWQRUJZac/s8CsctN4sXqXhaIg+QkTh6bzApicwq4S3Q8mwAW FwKq2fxqL8sERoFZSM6bhXDeLCTnLWBkXsUomlqQXFCclJ5rpFecmFtcmpeul5yfu4kRnEye Se9gXNVgcYhRgINRiYdXw7ItRIg1say4MvcQowQHs5IIr9JSoBBvSmJlVWpRfnxRaU5q8SFG U6DDJzJLiSbnAxNdXkm8obGJmZGlkbmhhZGxuZI4r5I9UJNAemJJanZqakFqEUwfEwenVANj f0f1FwvLGDerS3vtJ24Vkti9/6k6rwPPTKlb4TMCLtzr9TrAmP6v9kbLj8Wh1iXnZBpWHdk3 bbvHDM8FU1i9ZTiUqjdOyp6yrsg25djTgkijmhkJZ1/9SniRVxzRZfx3odPc1sgcYd4vWe/O HThfsSGfJUQ88Ygf23ZfdeN7/c6MRxcKrT6rxFKckWioxVxUnAgAfz9MMDwDAAA= DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Cc: mark.rutland@arm.com, devicetree@vger.kernel.org, linux-samsung-soc@vger.kernel.org, pawel.moll@arm.com, ijc+devicetree@hellion.org.uk, a.hajda@samsung.com, kyungmin.park@samsung.com, robh+dt@kernel.org, Hyungwon Hwang , galak@codeaurora.org, kgene.kim@samsung.com X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , 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 From: Inki Dae This patch adds MIPI-DSI based S6E63J0X03 AMOLED LCD panel driver which uses mipi_dsi bus to communicate with panel. The panel has 320×320 resolution in 1.63-inch physical panel. This panel is used in Samsung Galaxy Gear 2. Signed-off-by: Inki Dae Signed-off-by: Hyungwon Hwang Acked-by: Kyungmin Park --- Changes for v2: - Change the gamma table to 2-dimensional array - Change the way to make index for brightness - Make command functions to an array so that it can be called simply - Change command id for reading device ID - Change the way to handle the error condition - Remove power variable, and use the same name variable in bl_dev - Add the state FB_BLANK_NORMAL to represent the state which the panel is working but blanked - Miscellaneous changes to increase the readability and follow the coding-style standard drivers/gpu/drm/panel/Kconfig | 6 + drivers/gpu/drm/panel/Makefile | 1 + drivers/gpu/drm/panel/panel-s6e63j0x03.c | 549 +++++++++++++++++++++++++++++++ 3 files changed, 556 insertions(+) create mode 100644 drivers/gpu/drm/panel/panel-s6e63j0x03.c diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig index bee9f72..bc133e2 100644 --- a/drivers/gpu/drm/panel/Kconfig +++ b/drivers/gpu/drm/panel/Kconfig @@ -27,4 +27,10 @@ config DRM_PANEL_S6E8AA0 select DRM_MIPI_DSI select VIDEOMODE_HELPERS +config DRM_PANEL_S6E63J0X03 + tristate "S6E63J0X03 DSI video mode panel" + depends on OF + select DRM_MIPI_DSI + select VIDEOMODE_HELPERS + endmenu diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile index 8b92921..7f36dc2 100644 --- a/drivers/gpu/drm/panel/Makefile +++ b/drivers/gpu/drm/panel/Makefile @@ -1,3 +1,4 @@ obj-$(CONFIG_DRM_PANEL_SIMPLE) += panel-simple.o obj-$(CONFIG_DRM_PANEL_LD9040) += panel-ld9040.o obj-$(CONFIG_DRM_PANEL_S6E8AA0) += panel-s6e8aa0.o +obj-$(CONFIG_DRM_PANEL_S6E63J0X03) += panel-s6e63j0x03.o diff --git a/drivers/gpu/drm/panel/panel-s6e63j0x03.c b/drivers/gpu/drm/panel/panel-s6e63j0x03.c new file mode 100644 index 0000000..28e4a51 --- /dev/null +++ b/drivers/gpu/drm/panel/panel-s6e63j0x03.c @@ -0,0 +1,549 @@ +/* + * MIPI-DSI based S6E63J0X03 AMOLED lcd 1.63 inch panel driver. + * + * Copyright (c) 2014 Samsung Electronics Co., Ltd + * + * Inki Dae, + * + * 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 +#include +#include + +#include