From nobody Fri Dec 19 15:18:36 2025 Received: from mail-lj1-f179.google.com (mail-lj1-f179.google.com [209.85.208.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B7BD4221DA4; Mon, 17 Feb 2025 14:09:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739801371; cv=none; b=WN8g9ERLGNfDG80Cc62B6QqzCo+jCbxgj3WS+Q4ONdcRjI+KqWvHTYaVdjCtcRS+UuujY8ojH0/NAtKpxt/zv6zduwtQ50HgzP4KytZ5oLaOWa9zpB7BeRc9ZTkIsVua3a4K3HyWCtWjaS54QyaTRSo+DHOUGcu3v/Dn2S+jaXE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739801371; c=relaxed/simple; bh=tslJuZYU9T70pnWczoEiXb1ETCjLy9vCbPsSNnDiQdE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pbAAqQXAyy3tvBwrnmtncZbKxQcK/HRu/XRuGmomoOE0eCRk3BIXyxo/LIBt5UcPGHw5/0ycH5JO3+DyTKNWq0n23OTGR6ko4AJHbzK4SKVhIfJhmKm83mIospKUbNG/SCXHOK88X0bfbqKVxdGAfQ9qyAodErJEWYw3/+Eqg8w= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=QeaTOJkN; arc=none smtp.client-ip=209.85.208.179 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) header.d=gmail.com header.i=@gmail.com header.b="QeaTOJkN" Received: by mail-lj1-f179.google.com with SMTP id 38308e7fff4ca-307bc125e2eso41904321fa.3; Mon, 17 Feb 2025 06:09:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739801367; x=1740406167; 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; bh=ciy+5XcpcAscK2izNPHwRlg361ofDyui4agTOOyCNlM=; b=QeaTOJkN6F4+De4ywUctpA4NPveAr8rpuOH9CfkxjtfD1stqVxs8AZDwZYHPxIwAMW COMH9eu5pcbd0zS3vCThYyim5RKiL/m3hATardtVf7Uip5+4hsoUpawRvkPfmckBk4u9 hZ6PvdB7y9zsgkz01dU87AgQxNmY6n/EFFAWylwLjB898K4A9c+Fk/Q2TFswpzhT9mxR ffOOqpbWKn938+vA/qRBkwE3Pgc8GaPMXfTAFNIYO9QU+udSfb7vbAcEKBWwDx9Adetf QuisA8MnsmyqQ7jpfRopH/xA+pnnexvUv2q+qQDUYnLs2QJJrQrTFLwz13lAh0q4NxRQ 3E5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739801367; x=1740406167; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ciy+5XcpcAscK2izNPHwRlg361ofDyui4agTOOyCNlM=; b=i6qmCtfVoCtqQ60cXs2mQceg9hqzf644jxHlXb6Y9D4AmYnj/GCRWZWZNnuU0bBPaL fteIgrju3c48t8HXCRSyswZTjT/OVCtPs42CkSQs82Ugz/YV1rxnmzEcR+Je6/6d+5PX 2FjGie0kOW9NT5vikMiRekhFC/nt75LMJqetsCYMfr5Kxuhm9uH6Ul+0GML9hhz7GX/h Si3W+Unyj5PusJeN/gGk/B5EIG9KFQR90yo3Sc/PI76yypz61tREUFyWX/wgdiJh6OEQ eXmQVwardm7Wxe2NEDdGMmP7Uyey4u0NJkz7OyBuMWjOV/EALmJ3giOpSYtyI+aZ8rb/ 8fSg== X-Forwarded-Encrypted: i=1; AJvYcCVcM7/YYHrVIueYxOaKbfC4IKwGbMa0G2VRXeRj0FDg4S0AVsFBLzYFmNNVwlItDhxZpxJsXqdXy7Ur@vger.kernel.org, AJvYcCXuoWYTFLYFoKkdOd0iOLD7GFvoe9t70Mr21pl2d+Hh2SZ16gEb0fVSyrrjispTvlQ+r71rIyEUeXt7NnCq@vger.kernel.org X-Gm-Message-State: AOJu0YzGV+163ox6kDOh7oiWuAsbReNbwG7QCk2NTPaP+9DXT9uCiKbJ 8ZJo1jgFAyFfbmdMUhVQ/px0/VrhNNd73jGlgwowRufYSbDVrge7 X-Gm-Gg: ASbGncuwU+HtoprTwrMh+aqY8laTcjZ6gxeaoLy5lZVMY4CrBn3jtdz+Q/eewDRwPRK OlXavIXPoOLcSV9g7Qm9FadErg5kk75kK/twl2Z4RgFEaTGxZpWjkV0vEEG04vljF+wHokezrbj BJD4PnFXNgtKYtmQdiR/8hP3REQ9zn6tKUYa9IZQS4FnzCsKrrErzyunv+RDY7eJJW3oGQqyZ9v 5vxtKJDypInHUNm4cN1Q1pNq77IN6iS+rNItnFKGZDxT4PR4SPR7lSOMVFGYuH2YM+EOASVZset UAq0NQ== X-Google-Smtp-Source: AGHT+IHfLywelDOE7b/EzPtWDBl8nQiFtlDzeSzpbZghkpWMJJYzUzgFjNuWzOkvP+3rPBZePlgF6A== X-Received: by 2002:a05:6512:ba6:b0:545:bda:f20 with SMTP id 2adb3069b0e04-5452fe9041dmr3192641e87.32.1739801366409; Mon, 17 Feb 2025 06:09:26 -0800 (PST) Received: from xeon.. ([188.163.112.51]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-54531b8ac1dsm866855e87.75.2025.02.17.06.09.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Feb 2025 06:09:25 -0800 (PST) From: Svyatoslav Ryhel To: Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Svyatoslav Ryhel Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 2/2] drm: bridge: Add support for Solomon SSD2825 RGB/DSI bridge Date: Mon, 17 Feb 2025 16:09:10 +0200 Message-ID: <20250217140910.108175-3-clamor95@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250217140910.108175-1-clamor95@gmail.com> References: <20250217140910.108175-1-clamor95@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" SSD2825 is a cost-effective MIPI Bridge Chip solution targeting mainly smartphones. It can convert 24bit RGB interface into 4-lane MIPI-DSI interface to drive display modules of up to 800 x 1366, while supporting AMOLED, a-si LCD or LTPS panel technologies for smartphone applications. Signed-off-by: Svyatoslav Ryhel --- drivers/gpu/drm/bridge/Kconfig | 14 + drivers/gpu/drm/bridge/Makefile | 1 + drivers/gpu/drm/bridge/ssd2825.c | 824 +++++++++++++++++++++++++++++++ 3 files changed, 839 insertions(+) create mode 100644 drivers/gpu/drm/bridge/ssd2825.c diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig index 6b4664d91faa..a6eca3aef258 100644 --- a/drivers/gpu/drm/bridge/Kconfig +++ b/drivers/gpu/drm/bridge/Kconfig @@ -306,6 +306,20 @@ config DRM_SIMPLE_BRIDGE Support for non-programmable DRM bridges, such as ADI ADV7123, TI THS8134 and THS8135 or passive resistor ladder DACs. =20 +config DRM_SOLOMON_SSD2825 + tristate "SSD2825 RGB/DSI bridge" + depends on SPI_MASTER && OF + select DRM_MIPI_DSI + select DRM_KMS_HELPER + select DRM_PANEL + select VIDEOMODE_HELPERS + help + Say Y here if you want support for the Solomon SSD2825 RGB/DSI + SPI bridge driver. + + Say M here if you want to support this hardware as a module. + The module will be named "solomon-ssd2825". + config DRM_THINE_THC63LVD1024 tristate "Thine THC63LVD1024 LVDS decoder bridge" depends on OF diff --git a/drivers/gpu/drm/bridge/Makefile b/drivers/gpu/drm/bridge/Makef= ile index 97304b429a53..c621ab3fa3a9 100644 --- a/drivers/gpu/drm/bridge/Makefile +++ b/drivers/gpu/drm/bridge/Makefile @@ -23,6 +23,7 @@ obj-$(CONFIG_DRM_SIL_SII8620) +=3D sil-sii8620.o obj-$(CONFIG_DRM_SII902X) +=3D sii902x.o obj-$(CONFIG_DRM_SII9234) +=3D sii9234.o obj-$(CONFIG_DRM_SIMPLE_BRIDGE) +=3D simple-bridge.o +obj-$(CONFIG_DRM_SOLOMON_SSD2825) +=3D ssd2825.o obj-$(CONFIG_DRM_THINE_THC63LVD1024) +=3D thc63lvd1024.o obj-$(CONFIG_DRM_TOSHIBA_TC358762) +=3D tc358762.o obj-$(CONFIG_DRM_TOSHIBA_TC358764) +=3D tc358764.o diff --git a/drivers/gpu/drm/bridge/ssd2825.c b/drivers/gpu/drm/bridge/ssd2= 825.c new file mode 100644 index 000000000000..cc6f5d480812 --- /dev/null +++ b/drivers/gpu/drm/bridge/ssd2825.c @@ -0,0 +1,824 @@ +// SPDX-License-Identifier: GPL-2.0 +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include