From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.remote-ip=209.85.218.50 ARC-Seal: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; cv=none; t=1793287792; b=siyNuctfTcH/9jaFBrMo477RGYARTwN8kqhsjcmNyKcLTuBAjwW6G/84DwXS/QXd3smJ jkpFRAqz95Z3hOBjCI+NsmWt5M5aDMNQ7UXRZcvuSZGPb01nPeylgRpsl3T0KCSGX3ulq 37z9iWV/yoUmo1IDHXrVtNbTFeY1F6cA/K6Wvk+CflrNDnSDcHGhalM9Uxs604+hj357b KikB/j7PjY9cAJZxFlWq3N0TYmsC0UyNtDmSgjbjjEvml2TIyo3Kcm9bkoIpLpjSDiJgY rUFptj7gW/cFUP7eTQlhQoalRjVNFtyNQc1yZtsR2nSO2LHzTiRrT7FeElG0gJH14BQ== ARC-Message-Signature: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; c=relaxed/relaxed; t=1793287792; h=DMARC-Filter:Received:DKIM-Signature:X-Google-DKIM-Signature: X-Forwarded-Encrypted:X-Gm-Message-State:X-Gm-Gg:X-Received:Received: From:To:Cc:Subject:Date:Message-ID:X-Mailer:In-Reply-To:References: MIME-Version:Content-Transfer-Encoding; bh=n20yp1WfOkKyJcvfjNoh+sYbq2k8HN+gg6g++LCKhag=; b=pKhejXCNjp3crU1Jm54xGTd999BkqA+W+X2crD6gKuMLxRQq0yBbTCbB9QDqlm7LbeF9 wkgpjMTm8gA6z0a+SDrj477oPeX+Xc4Y7Gycais2PQUJvhvRlgZ+4Nin/LbBI/ec2ZMCR yLR3Qz2GxTI8BFVuc0WsZy+XrSzbBps/VgZM7Ap5Kt89L/mpmA+ki3kWlzn2ajxMWJkHH gALFf4oe9+jlOhY3jQYiIn6+CyYI1hKxCqkztkPsZk7VwdsNYWz9BQ1gctTlI7kaoAEkZ BeCdnUsDYN1jMsFUeIrnONMc8IYkfwiAjyOmEMGyZ5B6UdKyZRDfQMFJCSER70/DGmQ== ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20260707 header.b=NA6r896v; arc=none smtp.remote-ip=209.85.218.50 Received: from mail-ej1-f50.google.com (mail-ej1-f50.google.com [209.85.218.50]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9D53E606A32E for ; Thu, 29 Oct 2026 15:29:51 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.2 smtp.subspace.kernel.org 9D53E606A32E Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key, unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20260707 header.b=NA6r896v Received: by mail-ej1-f50.google.com with SMTP id a640c23a62f3a-c43373ae89aso364502066b.3 for ; Thu, 29 Oct 2026 08:29:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20260707; t=1793287790; x=1793892590; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=n20yp1WfOkKyJcvfjNoh+sYbq2k8HN+gg6g++LCKhag=; b=NA6r896vwIR+nWDU6vvh+wTLpQPICZx+ug2L4FB+ikGYFZHED1itQp0lFFjM6EVmhG gGobCJ9+NxZHpOscDg4qzf86WdylQDRtBh9txMGIaEoKeOcSQiseUazYM+Do6i9BrEKU iUZkSVLwRPfumVavILw+/XOSHYus2PzbBw3XWmPNCeaG4xMEZyym4kJHIGe3B52+GRsk W1IvrQZ5QMDZQaJ5Gdzpwf2YSV7IYA6pHcplrwwGFP8Eb8fosR0aRMcsRHE/MlHxmmAo dvmXF1G48bkjx+dVBnZ728QZySDCRsEpNcsqEdFpcBf/3n2YbTIDk1hF0mX7GNNJoPpu vIKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1793287790; x=1793892590; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=n20yp1WfOkKyJcvfjNoh+sYbq2k8HN+gg6g++LCKhag=; b=0y5aoj0QTmA/5Q1xoJiD1dC0whR5Ry2bUSPCJC8UQRh7ZaxGf43IKx/jgSvXlZxIHY zeJt3QrxkqZQxgyWnY3193NEf19aICnlpDU/dPGH8Tr8L1P0zFcg0vCple0oCk66IDcd HESyj7MyADzSU9cRQRHVG7KSGV2DY+/8mWZLVebC1Lbsl+0PpFtoSg7fWCLKJWJ9vkkM /Nq0r5bF8kEYKqd3MZIug5DOHmri6SgZOssj12xPvZ8fLk3gYBKpQO1hGI+fajd5KpSB UdjQHgj8zLMvZ5E6DlkqT2AMbp6PkfJVms2G4/vqowgkValY8hsLw2CdBYGcxtInTeaR y/IA== X-Forwarded-Encrypted: i=1; AKwUvBwhr3+UjvCKaFqyIkWwy7YBwOxFvTLrpdDAyJaP693pmNRzMueGcX3btk8YOt+sd66G3VnYTvNi/SRI@vger.kernel.org X-Gm-Message-State: AFq9FYIwMDbcNw53iQ1KaqqhZrcSlhTicCi59MAegsYN79anbNxyh3fE 9hefYzbYRc3uq1qr4vwQNPNLiEN44P1ISHXm1D4A03fC9Cvyo8+nqPfW X-Gm-Gg: AYBFou3gqZdSzwIEeGssUQi0O0f9KocfWV6jYgkx1KpODXdIlRLf0hw6VGG676+RIp4 wft2HDHw3CGqUruuXEqgZ9cMsY7RFkaFuffveZ4ig5L8emwq7LuBCJOQHBpmWPvpE+YqoTQo2Tf zLxlzu7ebuu3iw5u913uQsbkP3+d+JMApJzJ4DTCR8AQkL3xNWv0404I+NHBdU8IIYGMCOO3xBm K8a91fWJaTCGLqOEsjrw/4gLxwoEeZ4oHZT0dsfJqN8wAN47ggpW/c0Sgtq67lqWTQzY9DULowt 0ghQwm+oycUTjZNt+enjMYqnH2RzRs68rKWM0zInztiatPuljleEfOrt8LY7aI+ovpum6F+qz3A boOWLtVluY9FkXd7YRI9tQj8mZyWAm5rNvOtuy4OFJmMfPDOKa4+R3vEsaSLjM3rUgf9FWBjYLt nupZ3FbbWGxvBKuMwW/OzTHcWfqFQzjyU9Ti5kbNukdaWcNT5+27PT/UsW48gZccuFRRJ3lL9zw gjU69+VK9Ae9RF7N6IdZhUrTUwk6D08/iKwgIedJVUSCvP+bYWkYLrjfwd7pAug79v+bgpQecGM 6lmy/8ZLRh6Cr47PHZrDM2NxnxR9CCfKjXidbvOg0nlKuqnPow== X-Received: by 2002:a17:906:ef07:b0:c3e:4f41:e2a6 with SMTP id a640c23a62f3a-c49bdd7dcd4mr513550366b.6.1793287789850; Thu, 29 Oct 2026 08:29:49 -0700 (PDT) Received: from xeon ([188.163.112.62]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-c4ca27984f8sm1252166b.80.2026.10.29.08.29.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Oct 2026 08:29:49 -0700 (PDT) From: Svyatoslav Ryhel To: Neil Armstrong , Jessica Zhang , David Airlie , Simona Vetter , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Thierry Reding , Jonathan Hunter , Mikko Perttunen , Svyatoslav Ryhel Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-tegra@vger.kernel.org Subject: [PATCH v5 11/11] drm/tegra: Add support for 8-bit CPU interface Date: Thu, 29 Oct 2026 17:29:09 +0200 Message-ID: <20261029152909.234584-12-clamor95@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20261029152909.234584-1-clamor95@gmail.com> References: <20261029152909.234584-1-clamor95@gmail.com> X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The display controller in Tegra20/30 SoCs features an 8-bit SPI interface that closely resembles the MIPI DBI Type B protocol and is referred to as '8-bit CPU'. Each display controller provides two such interfaces, which can be used to send MIPI DCS commands to initialize and control the panel while image data is transmitted via 16/18/24-line RGB. The '8-bit CPU', although being the DC interface, is modeled using a bridge framework for flexibility and convenience. This implementation does not change the existing codebase besides registering the bus. Suggested-by: Mikko Perttunen # DC command transfer Signed-off-by: Svyatoslav Ryhel --- drivers/gpu/drm/tegra/Makefile | 1 + drivers/gpu/drm/tegra/dbi.c | 632 +++++++++++++++++++++++++++++++++ drivers/gpu/drm/tegra/dc.c | 4 + drivers/gpu/drm/tegra/dc.h | 3 + 4 files changed, 640 insertions(+) create mode 100644 drivers/gpu/drm/tegra/dbi.c diff --git a/drivers/gpu/drm/tegra/Makefile b/drivers/gpu/drm/tegra/Makefile index e399b40d64a1d..ae7fccb3d6421 100644 --- a/drivers/gpu/drm/tegra/Makefile +++ b/drivers/gpu/drm/tegra/Makefile @@ -18,6 +18,7 @@ tegra-drm-y := \ hdmi.o \ mipi-phy.o \ dsi.o \ + dbi.o \ sor.o \ dpaux.o \ gr2d.o \ diff --git a/drivers/gpu/drm/tegra/dbi.c b/drivers/gpu/drm/tegra/dbi.c new file mode 100644 index 0000000000000..e129be0f21da5 --- /dev/null +++ b/drivers/gpu/drm/tegra/dbi.c @@ -0,0 +1,632 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Nvidia Tegra20/30 MIPI-DBI Type B host driver + * + * Copyright (C) 2026 Svyatoslav Ryhel + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#include