Received: by 2002:a17:90b:8d0:0:0:0:0 with SMTP id ds16csp5070659pjb; Mon, 27 Jul 2020 12:09:19 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzAPHY8vK4rOEHxhMhdxrJ2RhRQVJPr9d33S/kVoX6SnT9YY4/z0CE3Jv7taRDEhvWLxWaA X-Received: by 2002:a17:906:248d:: with SMTP id e13mr3929212ejb.169.1595876959449; Mon, 27 Jul 2020 12:09:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1595876959; cv=none; d=google.com; s=arc-20160816; b=PNUO9+pdVhTkdODvSASIzOgz3+MoGCrTzmRE3CLMC71SrsTA0HZX3g2egq1zoPEs7b Jh4J1N/1mkobNWE0edvRDS+Dlv/L7aAvl3C87CPVkm9tY5tKaKJgtta2cSmHb1aSuvzt 2KKZhU8lxYR6c0GSJcsBdnxi5m6XMCr6WwdnfoIO0APFkWG/v03IFoteUf6sd+2qYxZL 65NhZWePTcm494Q9ijR8Q3dd3XZvwNCdiEMGJjF5cx5wAWnNlavgq9La1LJbJAd10IWx nFcKLiGCF/FXf6413SsCycgR2ZNYYtdsiuTT99/08jkvOfH3fbthhcPGE/kmVC/wYZ7c ZQEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:cc:to:subject:from:date :dkim-signature; bh=+4C4GzR18AIe9cjQjP0708WVWejC/aKyzBgrtwhGm98=; b=fmdMrBuzcwzqjGw+Lj4RjABKCXLSVF/aVT21A+OrXXkcJQBbhYgxembwtRXOUodZyO e4LbvM0NjDKavO5xBEQLXcw/XnPhLE6r8YC5BvpjoQtANN9j3M3bUB/VLKTySnEgcA13 CfQE+lY/7eVwfZ1bHm40m/X9P5+TgRTKe179NJfayQmpGTp9iCWiKMjbUkAlw48LSZVr wrIZwbeZe4WZKigZ3KVrgAxpNcVdecf6QCLgFxDZl9By6AhWq0WJUeOyCWd7Xg3eiHo0 rLeRTTWAD2UncoonKSesgypgGk7t+v2bGO5VYRoU0lTvkhoqf8Yhhc4/MJDKYeta0bnm v2yQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@crapouillou.net header.s=mail header.b=VdgLz7qb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=crapouillou.net Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bd20si5777217edb.136.2020.07.27.12.08.56; Mon, 27 Jul 2020 12:09:19 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=fail header.i=@crapouillou.net header.s=mail header.b=VdgLz7qb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=crapouillou.net Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730098AbgG0SD4 (ORCPT + 99 others); Mon, 27 Jul 2020 14:03:56 -0400 Received: from crapouillou.net ([89.234.176.41]:39880 "EHLO crapouillou.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728313AbgG0SDz (ORCPT ); Mon, 27 Jul 2020 14:03:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=crapouillou.net; s=mail; t=1595873032; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+4C4GzR18AIe9cjQjP0708WVWejC/aKyzBgrtwhGm98=; b=VdgLz7qb/6UA7++JuErzDz5cDShB0gFhN+CfZlEXJ+lmIsPF3dm0B9zSNo59u3DPhxualL eGtujYoJfbHWWV5xVb2hbGcTdIKk6KO9tCHrX4ujUHZd+yFwJymy+O8gB5IfwKjQ6Sh3sj PDLmTWLiN5Q1Xn9XYt/KwojX89aKKjk= Date: Mon, 27 Jul 2020 19:54:13 +0200 From: Paul Cercueil Subject: Re: [PATCH 3/6] drm/bridge: Add SPI DBI host driver To: Laurent Pinchart Cc: Thierry Reding , Sam Ravnborg , David Airlie , Daniel Vetter , Rob Herring , Andrzej Hajda , Neil Armstrong , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Noralf =?iso-8859-1?q?Tr=F8nnes?= , od@zcrc.me, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Message-Id: In-Reply-To: <20200727170638.GG17521@pendragon.ideasonboard.com> References: <20200727164613.19744-1-paul@crapouillou.net> <20200727164613.19744-4-paul@crapouillou.net> <20200727170638.GG17521@pendragon.ideasonboard.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Laurent, Le lun. 27 juil. 2020 =E0 20:06, Laurent Pinchart=20 a =E9crit : > Hi Paul, >=20 > Thank you for the patch. >=20 > On Mon, Jul 27, 2020 at 06:46:10PM +0200, Paul Cercueil wrote: >> This driver will register a DBI host driver for panels connected=20 >> over >> SPI. >>=20 >> DBI types c1 and c3 are supported. C1 is a SPI protocol with 9 bits=20 >> per >> word, with the data/command information in the 9th (MSB) bit. C3 is=20 >> a >> SPI protocol with 8 bits per word, with the data/command information >> carried by a separate GPIO. >>=20 >> Signed-off-by: Paul Cercueil >> --- >> drivers/gpu/drm/bridge/Kconfig | 8 + >> drivers/gpu/drm/bridge/Makefile | 1 + >> drivers/gpu/drm/bridge/dbi-spi.c | 261=20 >> +++++++++++++++++++++++++++++++ >> 3 files changed, 270 insertions(+) >> create mode 100644 drivers/gpu/drm/bridge/dbi-spi.c >>=20 >> diff --git a/drivers/gpu/drm/bridge/Kconfig=20 >> b/drivers/gpu/drm/bridge/Kconfig >> index c7f0dacfb57a..ed38366847c1 100644 >> --- a/drivers/gpu/drm/bridge/Kconfig >> +++ b/drivers/gpu/drm/bridge/Kconfig >> @@ -219,6 +219,14 @@ config DRM_TI_TPD12S015 >> Texas Instruments TPD12S015 HDMI level shifter and ESD=20 >> protection >> driver. >>=20 >> +config DRM_MIPI_DBI_SPI >> + tristate "SPI host support for MIPI DBI" >> + depends on OF && SPI >> + select DRM_MIPI_DSI >> + select DRM_MIPI_DBI >> + help >> + Driver to support DBI over SPI. >> + >> source "drivers/gpu/drm/bridge/analogix/Kconfig" >>=20 >> source "drivers/gpu/drm/bridge/adv7511/Kconfig" >> diff --git a/drivers/gpu/drm/bridge/Makefile=20 >> b/drivers/gpu/drm/bridge/Makefile >> index 7d7c123a95e4..c2c522c2774f 100644 >> --- a/drivers/gpu/drm/bridge/Makefile >> +++ b/drivers/gpu/drm/bridge/Makefile >> @@ -20,6 +20,7 @@ obj-$(CONFIG_DRM_I2C_ADV7511) +=3D adv7511/ >> obj-$(CONFIG_DRM_TI_SN65DSI86) +=3D ti-sn65dsi86.o >> obj-$(CONFIG_DRM_TI_TFP410) +=3D ti-tfp410.o >> obj-$(CONFIG_DRM_TI_TPD12S015) +=3D ti-tpd12s015.o >> +obj-$(CONFIG_DRM_MIPI_DBI_SPI) +=3D dbi-spi.o >> obj-$(CONFIG_DRM_NWL_MIPI_DSI) +=3D nwl-dsi.o >>=20 >> obj-y +=3D analogix/ >> diff --git a/drivers/gpu/drm/bridge/dbi-spi.c=20 >> b/drivers/gpu/drm/bridge/dbi-spi.c >> new file mode 100644 >> index 000000000000..1060b8f95fba >> --- /dev/null >> +++ b/drivers/gpu/drm/bridge/dbi-spi.c >> @@ -0,0 +1,261 @@ >> +// SPDX-License-Identifier: GPL-2.0-or-later >> +/* >> + * MIPI Display Bus Interface (DBI) SPI support >> + * >> + * Copyright 2016 Noralf Tr=F8nnes >> + * Copyright 2020 Paul Cercueil >> + */ >> + >> +#include >> +#include >> +#include >> + >> +#include >> +#include >> + >> +#include