From nobody Tue Feb 10 00:58:30 2026 Received: from mail-ed1-f47.google.com (mail-ed1-f47.google.com [209.85.208.47]) (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 138621DE4E7; Sat, 3 May 2025 09:47:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746265659; cv=none; b=iCcl7ZdL5LLLupeAsBZTWCwbPTZG487nhqIcg5cJfRA494gY4DUNMAEwYqh3xeK0LKSAPRfrEBxfD6XSmHk8xKPR9O5Syn6skwIXqheU6bxx2xsQC7ojLrvWrFmSu7INROLZR4jPuKnm1ax6qEgikg2WxN9yrtzzsIElJ8Xm62s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746265659; c=relaxed/simple; bh=u9sxIpLy8IKeovtbXxzc0hsOCvLDGmV9M3RMFw80bzw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VN512zOYmUJV6raoB+UofMe2NjZ2ddFHn3brFooLB9HvKGReQW903ZH3Yw87PL/P85ejuwBp+2+XO3O16or3sdHpedqyRFIjHAB8WgHVqpZSbiUDoXPXZxpbbD09l0NpNbZXLj2xQ9t4pfwQkRE6It5CGroCsFP6p6cOgLV4xJk= 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=F2P64A2A; arc=none smtp.client-ip=209.85.208.47 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="F2P64A2A" Received: by mail-ed1-f47.google.com with SMTP id 4fb4d7f45d1cf-5f7ec0e4978so259293a12.1; Sat, 03 May 2025 02:47:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746265655; x=1746870455; 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=Qexk9eeQaYJa8GVaQDVZs+HijJGIqPWmhwmOIfZ461E=; b=F2P64A2AqHRwD9xq5eNCf1Sr/qJq6b5MAqQKEUej9ENbT+3iJmgIFaa0WFjvJ0DKu8 TpMeijagsm98yVgbH1ka6Rl/RmzRLLOC3vY/5C0ffDixJcUGmCsBe2lSFyxb0Mmzz/yO FaLK4DNLxie7EC4mzcEepycJJ8HgdUc21J3ISVcAausMQRQUy8e3lmSPaaJy96Z5Eb1W Vs1pURuXUkEYeckB4cHedgs0MrdsyDOacUcdkVGs+5nGGF1KhvmdUWXnscx1Q0IcM67i CcKZnUgQrFNZprBzqP6dlIm6Ge7/VFlPwj1g5F8jgbfA/AG3oWdraWIj1eLf6P8F1yDL NUMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746265655; x=1746870455; 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=Qexk9eeQaYJa8GVaQDVZs+HijJGIqPWmhwmOIfZ461E=; b=kYEDf/ncunhNKvEFQkZWLJnfIHYYKcBRb87A/gGALd+WiGmg6Vj7OpzPxzxCQ9w7qp 7Agx5s8D47T59qKpBEY09rFg8EhMNOb49gN0pCoJWgPNgZgkTLcWUNlSbPlEmCXPRk32 LAcmtJV7uguFDP5aXWCUP4Itart9Jl5WwtJJNugu096FBUg0Z8l1kmeniElIbH74Wm8g 62Kps+J2wDnzRka5mEfXm8YmNHXIWa1AmItnRRSlvEWq0cYWs+YPir4wvcge2lHEDJIy OufFD183/VPV7GWN6ck1tIzrR5UTQQ8E+Btqp5WumIiV1hSj4pSsHYPyPT9GWEsBiFuV EMBg== X-Forwarded-Encrypted: i=1; AJvYcCX43rFXDSkHcr1oEeUoIm0po/ZBRrDmFFB8tsFZ5kRJ+PpHfaaQQ5hMkGRk80ICjUk4+fu64ipLAWBk@vger.kernel.org, AJvYcCXjos9fFY7lWoLBZCkdyGG2LtXFVC8DSuuRnzuH6aKChu8xUXwUUm3+UcV+N9pyBrrX0G7snpdyWfgWxTXQ@vger.kernel.org X-Gm-Message-State: AOJu0YyNLnnYOJoSzx5PCYCetyfxRf1fQuRQtkHeZHt2Cx1E6qwwB+rb 53FL4zCfVA3+b9lgh1cB7ixpNLHzPAPRqRKsW8PnQdB3bhcRlpsy X-Gm-Gg: ASbGncv4eKnPog7iwMRXda5eAJ11yZIYIf1OkN9fkqbPvsYTTObbBdmQYlhS79UzLAC j+dthYL+WvonOyzBP/rtCqpnKgnq//M4h8eTqGVD0vBVgkKWKjvN2o4SSSugPZ5+m5XK2aUiEWt vKbvfNCEjKjxsloMdQA9JBJgaOZJD5N6ux9Y59EYLCs0BkCCX/LgjbEh+5h4c/SvALFxs8eRkJ+ gpdEkSPvUwVdtvzAESjzsk/6KApRzn7D7siivJT03T4uO6RzkrxsdXHxhDYju6Zom6Z5rVTJwvG i5YrldcLMJUejHQn1bdFkr9ysrroKj9SaUWwrR+OzYk= X-Google-Smtp-Source: AGHT+IGuLl+zstaJy+A7xyeSm4nntmG277Zml4cH80iHD4iFxXmwmxhnpeQgnt5L1ynnZu3E6B9UJg== X-Received: by 2002:a17:907:948e:b0:ace:f078:e08b with SMTP id a640c23a62f3a-ad190829ceemr192081366b.47.1746265654734; Sat, 03 May 2025 02:47:34 -0700 (PDT) Received: from xeon.. ([188.163.112.70]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ad188ea7f41sm174732066b.0.2025.05.03.02.47.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 03 May 2025 02:47:34 -0700 (PDT) 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 v4 2/2] drm: bridge: Add support for Solomon SSD2825 RGB/DSI bridge Date: Sat, 3 May 2025 12:47:20 +0300 Message-ID: <20250503094721.29572-3-clamor95@gmail.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250503094721.29572-1-clamor95@gmail.com> References: <20250503094721.29572-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 | 13 + drivers/gpu/drm/bridge/Makefile | 1 + drivers/gpu/drm/bridge/ssd2825.c | 813 +++++++++++++++++++++++++++++++ 3 files changed, 827 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..8e915bab1cfd 100644 --- a/drivers/gpu/drm/bridge/Kconfig +++ b/drivers/gpu/drm/bridge/Kconfig @@ -306,6 +306,19 @@ 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 + 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..b75cd022b201 --- /dev/null +++ b/drivers/gpu/drm/bridge/ssd2825.c @@ -0,0 +1,813 @@ +// SPDX-License-Identifier: GPL-2.0 + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include