Received: by 10.213.65.68 with SMTP id h4csp538033imn; Wed, 4 Apr 2018 02:59:54 -0700 (PDT) X-Google-Smtp-Source: AIpwx49q7JysacRLx4qATvN9bxoWVWHhswqasGWNolapvuk2mwkwgmnQMYEkoieSk2vAUDxg5weM X-Received: by 10.99.95.5 with SMTP id t5mr11505334pgb.295.1522835994624; Wed, 04 Apr 2018 02:59:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522835994; cv=none; d=google.com; s=arc-20160816; b=m63hLmspgj/OIC0xDOtX1b5HBeqp1fWTMyAt0FmhyfIvusa0KHj9CLbWBPhO/X9Fh4 K7d0tONR5iRZeGHeUgoFlpf0zSoR1uG6bVnlg5oALfAKQfftxREsoAdTMG1HOzqi8i0o m58Bwcdj96u1RSoznSTa6I3SoUDHerl3dz8eyp9YJyGrQbXYzQAgwQ50wGOyNsRGFDW9 yZfA6iuqykxd99U6TEGPdsTwSi9oupfUY35m16BLurAdD99JKnrf0LQwZo0e58cMFpjd ILPpNzs8Bg2YD2eMuXL4FYLBavQYm6xotJrhHMtTi5kpfaDdgFJ5IIFNX6SSSmv8sfSF l0Cg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=HJRL6fhvZQDgqcep94+iF2iJxyvLiLg1vRX5ru8stCs=; b=w218tGYfVVDjtaAn+d9mpH563v9VLfxBHHzMsm3UJH/X4dHuIT1TWcs/hO8GOSu7Yy rPfoh3YqQLb7/hGKDsK20GNkJD5ADIqCVXP2eeI9WDaUpn4+7fWuimEJG2hDk4WP2rxf YTZK4MR3MMwG9baJF2ZTg3uCwWY7am76e/rNl3eHf3TrX1BTWraZ3qbJ3AmPjAsjwBOS GWBG6bUxayofRDp0DPk6rOnrT1hKO27qnhpuyw6+nXS8GsfkyulmhYUnMLUTMUmJusxm DaVi75hjtM517jpwpKsArqZUqwaHsnCuG6oRywn3xIwMCoYMyNcLqxjTjZ9e5dPnoY3I M7SA== 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 u9si3460840pge.641.2018.04.04.02.59.40; Wed, 04 Apr 2018 02:59:54 -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 S1751447AbeDDJ6M (ORCPT + 99 others); Wed, 4 Apr 2018 05:58:12 -0400 Received: from mail.bootlin.com ([62.4.15.54]:42963 "EHLO mail.bootlin.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750916AbeDDJ5m (ORCPT ); Wed, 4 Apr 2018 05:57:42 -0400 Received: by mail.bootlin.com (Postfix, from userid 110) id 6730B208B1; Wed, 4 Apr 2018 11:57:40 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mail.bootlin.com X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,SHORTCIRCUIT, URIBL_BLOCKED shortcircuit=ham autolearn=disabled version=3.4.0 Received: from localhost (LStLambert-657-1-97-87.w90-63.abo.wanadoo.fr [90.63.216.87]) by mail.bootlin.com (Postfix) with ESMTPSA id ABD3D207EA; Wed, 4 Apr 2018 11:57:22 +0200 (CEST) From: Maxime Ripard To: Thierry Reding , Chen-Yu Tsai , Maxime Ripard , Mark Rutland , Rob Herring , Frank Rowand Cc: dri-devel@lists.freedesktop.org, Gustavo Padovan , Daniel Vetter , Maarten Lankhorst , Sean Paul , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Thomas Petazzoni Subject: [PATCH v4 6/8] drm/panel: Add Ilitek ILI9881c panel driver Date: Wed, 4 Apr 2018 11:57:14 +0200 Message-Id: X-Mailer: git-send-email 2.14.3 In-Reply-To: References: In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The LHR050H41 panel is the panel shipped with the BananaPi M2-Magic, and is based on the Ilitek ILI9881c Controller. Add a driver for it, modelled after the other Ilitek controller drivers. Signed-off-by: Maxime Ripard --- drivers/gpu/drm/panel/Kconfig | 9 +- drivers/gpu/drm/panel/Makefile | 1 +- drivers/gpu/drm/panel/panel-ilitek-ili9881c.c | 489 +++++++++++++++++++- 3 files changed, 499 insertions(+) create mode 100644 drivers/gpu/drm/panel/panel-ilitek-ili9881c.c diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig index 25682ff3449a..6020c30a33b3 100644 --- a/drivers/gpu/drm/panel/Kconfig +++ b/drivers/gpu/drm/panel/Kconfig @@ -46,6 +46,15 @@ config DRM_PANEL_ILITEK_IL9322 Say Y here if you want to enable support for Ilitek IL9322 QVGA (320x240) RGB, YUV and ITU-T BT.656 panels. +config DRM_PANEL_ILITEK_ILI9881C + tristate "Ilitek ILI9881C-based panels" + depends on OF + depends on DRM_MIPI_DSI + depends on BACKLIGHT_CLASS_DEVICE + help + Say Y if you want to enable support for panels based on the + Ilitek ILI9881c controller. + config DRM_PANEL_INNOLUX_P079ZCA tristate "Innolux P079ZCA panel" depends on OF diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile index f26efc11d746..5ccaaa9d13af 100644 --- a/drivers/gpu/drm/panel/Makefile +++ b/drivers/gpu/drm/panel/Makefile @@ -3,6 +3,7 @@ obj-$(CONFIG_DRM_PANEL_ARM_VERSATILE) += panel-arm-versatile.o obj-$(CONFIG_DRM_PANEL_LVDS) += panel-lvds.o obj-$(CONFIG_DRM_PANEL_SIMPLE) += panel-simple.o obj-$(CONFIG_DRM_PANEL_ILITEK_IL9322) += panel-ilitek-ili9322.o +obj-$(CONFIG_DRM_PANEL_ILITEK_ILI9881C) += panel-ilitek-ili9881c.o obj-$(CONFIG_DRM_PANEL_INNOLUX_P079ZCA) += panel-innolux-p079zca.o obj-$(CONFIG_DRM_PANEL_JDI_LT070ME05000) += panel-jdi-lt070me05000.o obj-$(CONFIG_DRM_PANEL_LG_LG4573) += panel-lg-lg4573.o diff --git a/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c b/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c new file mode 100644 index 000000000000..8992a6431c30 --- /dev/null +++ b/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c @@ -0,0 +1,489 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright (C) 2017, Free Electrons + * Author: Maxime Ripard + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include +#include +#include + +#include