From patchwork Mon Jul 8 14:56:18 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Josef_Lu=C5=A1tick=C3=BD?= X-Patchwork-Id: 11035263 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 4882C138B for ; Mon, 8 Jul 2019 14:56:47 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 37E931FE8D for ; Mon, 8 Jul 2019 14:56:47 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 2BA33232A7; Mon, 8 Jul 2019 14:56:47 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 6D2E01FE8D for ; Mon, 8 Jul 2019 14:56:46 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 2765589E19; Mon, 8 Jul 2019 14:56:44 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-wr1-x442.google.com (mail-wr1-x442.google.com [IPv6:2a00:1450:4864:20::442]) by gabe.freedesktop.org (Postfix) with ESMTPS id 93CB989E14 for ; Mon, 8 Jul 2019 14:56:41 +0000 (UTC) Received: by mail-wr1-x442.google.com with SMTP id n4so17516106wrs.3 for ; Mon, 08 Jul 2019 07:56:41 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Qks6huK9PjJ7axz52EWgNZCOtNEhVZbSxesN0cPqE5g=; b=c08XCHI6mHiQN/IukzO80gjECSmdA55oHDBI1tfGJdYDJPIE1cucdMH9Z/28ZU27iq BiH8DfHcPnLQSV2KGDoVnVoCOeAJOLrEgO9g1+AxNepiOFwhN4Se0jeioWDjcEUZvAUb 8tl9e6fta+xcZDO0AcRKLtyco0lpDAfpRh6EtGUx9orov/+rm58XIOjBRTEYg73ZmxMe hNBmgC+u4f8hFNU0chcRM9gj7PDDxwsXPkNQiycc2SbaSEPKTmhjKXctjyfZN45TX+We t+FzTa9JYHOzYEQfqJqBtwk1oKKxafjpFE9VfmbnqhwWhQvVUogRDavRMHH0PVL4OdZQ b9BQ== X-Gm-Message-State: APjAAAXtekWaNSt6oaq5diyXvPWcyhUCxYTu4dFi5Vs4ZQvrgs/mGA+Q SKnxaKw32fnXa9cmPj3lWP1Xxw== X-Google-Smtp-Source: APXvYqyCQ5Qs2d8AWgSDe31YNLghM90udICUq4+rAc+I4xIfponO0N4QRio/daOLAczwi/JzORanFw== X-Received: by 2002:adf:eb06:: with SMTP id s6mr19940685wrn.151.1562597800156; Mon, 08 Jul 2019 07:56:40 -0700 (PDT) Received: from e430.riomail.cz (188-175-152-238.client.rionet.cz. [188.175.152.238]) by smtp.gmail.com with ESMTPSA id f70sm11887595wme.22.2019.07.08.07.56.39 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Mon, 08 Jul 2019 07:56:39 -0700 (PDT) From: Josef Lusticky To: sam@ravnborg.org, robh@kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org Subject: [PATCH v2 2/2] drm/panel: Add Ilitek ILI9341 parallel RGB panel driver Date: Mon, 8 Jul 2019 16:56:18 +0200 Message-Id: <20190708145618.26031-3-josef@lusticky.cz> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190708145618.26031-1-josef@lusticky.cz> References: <20190304125033.28841-1-josef@lusticky.cz> <20190708145618.26031-1-josef@lusticky.cz> MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lusticky.cz; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Qks6huK9PjJ7axz52EWgNZCOtNEhVZbSxesN0cPqE5g=; b=qw+5vHURgVqu0/D/7NqQwSOlNOEDd6uHGo7IpQXK7eiQWAV+HMvfxHpk44kgoLNf9G fguxglf/7pCP655ZwCPFIIOrbTqcP+frS3Lz+HpPo8+XeRzG8nI/GvvRc3kU2il+R4Lg ubW74Q9k1mszBzpxTYTdUp0bxcYr+I51pPy5yPoaekW2EYymaNdcYY6xzxJBABGrF/lQ 0mZIvj4OP5IcmcWZUYhgt0fIGmq50J75Tsd/SW/g0Qa45ja0rkQUYmRQ0Cymd+s5BoVr Rzlx2mhnSB6ylHk1B80qWwDbDWPTmv1hn9JATGr5KrhRHLSNHKaQ15Rky8904lyi3qTM H51Q== X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: airlied@linux.ie, thierry.reding@gmail.com, Josef Lusticky Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP Add driver for Ilitek ILI9341 panels in parallel RGB mode Signed-off-by: Josef Lusticky Reviewed-by: Sam Ravnborg --- MAINTAINERS | 6 + drivers/gpu/drm/panel/Kconfig | 9 + drivers/gpu/drm/panel/Makefile | 1 + drivers/gpu/drm/panel/panel-ilitek-ili9341.c | 291 +++++++++++++++++++ 4 files changed, 307 insertions(+) create mode 100644 drivers/gpu/drm/panel/panel-ilitek-ili9341.c diff --git a/MAINTAINERS b/MAINTAINERS index 0a76716874bd..a35bf56cc018 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -5028,6 +5028,12 @@ S: Maintained F: drivers/gpu/drm/tinydrm/hx8357d.c F: Documentation/devicetree/bindings/display/himax,hx8357d.txt +DRM DRIVER FOR ILITEK ILI9341 PANELS +M: Josef Lusticky +S: Maintained +F: drivers/gpu/drm/panel/panel-ilitek-ili9341.c +F: Documentation/devicetree/bindings/display/panel/ilitek,ili9341.txt + DRM DRIVER FOR INTEL I810 VIDEO CARDS S: Orphan / Obsolete F: drivers/gpu/drm/i810/ diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig index eaecd40cc32e..34a5b262f924 100644 --- a/drivers/gpu/drm/panel/Kconfig +++ b/drivers/gpu/drm/panel/Kconfig @@ -56,6 +56,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_ILI9341 + tristate "Ilitek ILI9341 240x320 panels" + depends on OF && SPI + depends on BACKLIGHT_CLASS_DEVICE + select TINYDRM_MIPI_DBI + help + Say Y here if you want to enable support for Ilitek ILI9341 + QVGA (240x320) RGB panel. + config DRM_PANEL_ILITEK_ILI9881C tristate "Ilitek ILI9881C-based panels" depends on OF diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile index 62dae45f8f74..ba4a303c1a66 100644 --- a/drivers/gpu/drm/panel/Makefile +++ b/drivers/gpu/drm/panel/Makefile @@ -4,6 +4,7 @@ obj-$(CONFIG_DRM_PANEL_LVDS) += panel-lvds.o obj-$(CONFIG_DRM_PANEL_SIMPLE) += panel-simple.o obj-$(CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D) += panel-feiyang-fy07024di26a30d.o obj-$(CONFIG_DRM_PANEL_ILITEK_IL9322) += panel-ilitek-ili9322.o +obj-$(CONFIG_DRM_PANEL_ILITEK_ILI9341) += panel-ilitek-ili9341.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 diff --git a/drivers/gpu/drm/panel/panel-ilitek-ili9341.c b/drivers/gpu/drm/panel/panel-ilitek-ili9341.c new file mode 100644 index 000000000000..0c700b171025 --- /dev/null +++ b/drivers/gpu/drm/panel/panel-ilitek-ili9341.c @@ -0,0 +1,291 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Ilitek ILI9341 drm_panel driver + * 240RGBx320 dots resolution TFT LCD display + * + * This driver supports the following panel configurations: + * - Command interface: + * - MIPI-DBI Type 3 Option 1 + * (9-bit SPI with Data/Command bit - IM[3:0] = 1101) + * - MIPI-DBI Type 3 Option 3 + * (8-bit SPI with Data/Command GPIO - IM[3:0] = 1110) + * - Graphical data interface: + * - MIPI-DPI 18-bit parallel RGB interface + * + * Copyright (C) 2019 Josef Lusticky + * + */ + +#include +#include +#include +#include +#include +#include + +#include