From patchwork Sun Feb 23 15:32:44 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Svyatoslav Ryhel X-Patchwork-Id: 13987067 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 6C008C021B2 for ; Sun, 23 Feb 2025 15:33:44 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 7E07010E027; Sun, 23 Feb 2025 15:33:43 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="KkhMX9ow"; dkim-atps=neutral Received: from mail-lf1-f42.google.com (mail-lf1-f42.google.com [209.85.167.42]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7265610E027 for ; Sun, 23 Feb 2025 15:33:19 +0000 (UTC) Received: by mail-lf1-f42.google.com with SMTP id 2adb3069b0e04-54626a71b40so3519817e87.3 for ; Sun, 23 Feb 2025 07:33:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1740324798; x=1740929598; darn=lists.freedesktop.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=78M/0Nez5cUJxIBZadJWbUxgypznPIuSGkiLHMGj3oU=; b=KkhMX9owRVkzmZHBnNrvjLYrTgTSYoWdjpl+JYvcrecua3FeX3uquugBXWv62aFSfL wZyB0lnBglOKv9Hrj6DS5xDwlkbHKa47sl5fiEjuEO4tHQeZjvSAoOBOhllQatu4J5j6 Q5oTsyn+30o09ZZjPE33tKWassZBHQ9ci78ohjBzDUeTKq4jZ03yLyT/Kk3oPiAZPZCJ xNRGhD2Ffs7QSzso0urLWBbbuuWMeeSvX9bmOFT/1gZw0HzidxCMyywQF5RsabYNmJ0Q nhXZesXywVg550w8K+M2DuiDsFlU70joil+jQV84IVJg+cwY7muD5uKVE8ISfwYWm+ep uGjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740324798; x=1740929598; 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=78M/0Nez5cUJxIBZadJWbUxgypznPIuSGkiLHMGj3oU=; b=h/lHBB5xXBY7Cf9kGDwwGwWCFltpWCuvRAJ7nugjStdoYYd6RhoxxMWUEQ2aCrvUOV I8cEs5D/OP3x0ks70k1M3nx7w6ByP59JS6ENpDfrzVvj0F5Jxat0TXZtckWABVvMcp1S zac+fE8TBnBKvMcXkBQ/F7ZinSfQs6QadAGG/rdKHIRr6JqtR8QA89VNJLRItECq/JEP 2JCoFQkYvPhjQuvQfIrZ7cUp0PIEDrzk2GjypUxBzrNvtjttEoCVNt+JjwgO8bBuwcYO ymFT+pkmWsO6qqqM4UG8pYfqYQ0zKj4mDJp0IXnV57D3hU+x+yTtk5OUn1IIWwNl+FLb c4vw== X-Gm-Message-State: AOJu0YxBm6TjwGBXfso9G7RORuE7SPYwzS6QDBB6nxpcabFB+Dh3RhYp ZBqBovDUIOq6i+4Tp5CWzVekKnq6Zba2dNMSGtvv2o/NSuv13V9A X-Gm-Gg: ASbGnctfW2oquJ7WhzbbDJixcD/5Nz7AfxT54a/NWjeMapMqnP6fHLdeIFcrlMYbYbQ MUHtBxa9eMGcURfYjoPr/tIBh9enbPS3vOg/DGqhMaA/LdxKZ4QoYlx6KQ9fS+pS2prFfDgOhqE UMBNxv72kRVQkc5xZkE9dMPsLHJwVlOncB3M6O8DRZmLwjNdlqQaRvTiE9w1mm2dSnlU4zIdIkL qmWDeAeYfCzz/68YxR7xiaOmyVOi2AYGyO7H0wVjLlRM9bgY216eanKeWmStfJJJRiGIEQI/Rzs 6prvUjOzQhEY8lkf X-Google-Smtp-Source: AGHT+IGnfAOVfNJC7Xp2SZDDh4llQv3SYBgcWo9LVlo4AgHfPoBK3PItV3XuZNdyMAJ5sCH9m43AcQ== X-Received: by 2002:a05:6512:1390:b0:545:1773:30a0 with SMTP id 2adb3069b0e04-54839140092mr4141379e87.21.1740324797277; Sun, 23 Feb 2025 07:33:17 -0800 (PST) Received: from xeon.. ([188.163.112.51]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-54523dd8ca3sm3025569e87.181.2025.02.23.07.33.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 23 Feb 2025 07:33:16 -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 v3 2/2] drm: bridge: Add support for Solomon SSD2825 RGB/DSI bridge Date: Sun, 23 Feb 2025 17:32:44 +0200 Message-ID: <20250223153244.149102-3-clamor95@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250223153244.149102-1-clamor95@gmail.com> References: <20250223153244.149102-1-clamor95@gmail.com> MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" 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 | 821 +++++++++++++++++++++++++++++++ 3 files changed, 835 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. +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/Makefile 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) += sil-sii8620.o obj-$(CONFIG_DRM_SII902X) += sii902x.o obj-$(CONFIG_DRM_SII9234) += sii9234.o obj-$(CONFIG_DRM_SIMPLE_BRIDGE) += simple-bridge.o +obj-$(CONFIG_DRM_SOLOMON_SSD2825) += ssd2825.o obj-$(CONFIG_DRM_THINE_THC63LVD1024) += thc63lvd1024.o obj-$(CONFIG_DRM_TOSHIBA_TC358762) += tc358762.o obj-$(CONFIG_DRM_TOSHIBA_TC358764) += tc358764.o diff --git a/drivers/gpu/drm/bridge/ssd2825.c b/drivers/gpu/drm/bridge/ssd2825.c new file mode 100644 index 000000000000..102e24a1fb40 --- /dev/null +++ b/drivers/gpu/drm/bridge/ssd2825.c @@ -0,0 +1,821 @@ +// 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