From nobody Fri Oct 3 18:02:41 2025 Received: from ironport.ite.com.tw (219-87-157-213.static.tfn.net.tw [219.87.157.213]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3A5E51B4224; Thu, 28 Aug 2025 04:03:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=219.87.157.213 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756353811; cv=none; b=XQ3Q+s6SXtZN18fqYrh5P2FvKh0+WjxEjX93dkyhCnDKMYlskYCWMjWRj9ekWvF/qsrySEmXRr1J2WnfYrfYgYhH1pMYRGveAcUPMJ824RgkKePjLCdCd0+WLWTtQHaf6KMTn0tmQ8JdRFJ6W1tzdvCsoRwD8bCqtICcEfZ8Ye8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756353811; c=relaxed/simple; bh=MW+KUs0GeUKMDvSIKYsAB1xWIfmbFgtgDo8cV1gB2Do=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:CC; b=DcqIwNEtxqvFRLIjTDw1AIYaJ40pZ5YwAp2mYCNKAxcMeYTw2NRHNFkcsz0wFin30R6XKc1mvJ0jySQGRvdav+cJOv7bdsSqEw5EhXJKEQ5RHeJxYNCTIvU0Jn3gvYr4P/L5HWcA8U1ZG73HgKECl53qfSU+osmtjrQWdhxvu6w= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ite.com.tw; spf=pass smtp.mailfrom=ite.com.tw; dkim=pass (2048-bit key) header.d=ite.com.tw header.i=@ite.com.tw header.b=YQjEXfuU; arc=none smtp.client-ip=219.87.157.213 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ite.com.tw Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ite.com.tw Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ite.com.tw header.i=@ite.com.tw header.b="YQjEXfuU" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ite.com.tw; s=dkim; h=from:date:subject:mime-version:content-transfer-encoding: message-id:references:in-reply-to:to:cc; bh=FMo5qeunxlLDE8fykqZdJ2819lDJTyht65Qt0imahFs=; b=YQjEXfuUmD3C0YYyP9L0zwDAVmgb9fZwC5XohUrcapXyE65rkCmSuSQh RnfB81ET1paf7LrNad9aszfFOThy1M0YyKrtN3LqcTwsZqx5P+Sib6dTv dxftAkev9Aq3Sk9BxKgetJv2DupVRgYiDtobt1vcHlW0imORFAUvDtRGO Z7QC2Yc6L+CSAkRz9Yw+OjSnOIWSxBfzPcCDUzKgw2gV/D3qB1jOuxc70 rVhf+UT/OU1E5nTUD7Zvjzr2A7RXaweGAF2NcKewYcB4ft6DJaJiixvC3 QFzaX765qktujlGlBMmO7rvf89uzR0lwMc2ecalZI6pzUpfasWbds1YQF A==; X-CSE-ConnectionGUID: rM22Z8yVS46dcGfBtsaPzQ== X-CSE-MsgGUID: kPN/Sp4JQpyPEIjzLVsOJg== Received: from unknown (HELO mse.ite.com.tw) ([192.168.35.30]) by ironport.ite.com.tw with ESMTP; 28 Aug 2025 12:02:13 +0800 Received: from CSBMAIL1.internal.ite.com.tw (CSBMAIL1.internal.ite.com.tw [192.168.65.58]) by mse.ite.com.tw with ESMTP id 57S428BV028014; Thu, 28 Aug 2025 12:02:08 +0800 (+08) (envelope-from Pet.Weng@ite.com.tw) Received: from [127.0.1.1] (192.168.72.40) by CSBMAIL1.internal.ite.com.tw (192.168.65.58) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 28 Aug 2025 12:02:07 +0800 From: Pet Weng Date: Thu, 28 Aug 2025 12:01:19 +0800 Subject: [PATCH v2 2/3] drm/bridge: Add ITE IT61620 MIPI DSI to HDMI bridge driver Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-ID: <20250828-it61620-0714-v2-2-586f5934d5f8@ite.com.tw> References: <20250828-it61620-0714-v2-0-586f5934d5f8@ite.com.tw> In-Reply-To: <20250828-it61620-0714-v2-0-586f5934d5f8@ite.com.tw> 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 CC: , , , Hermes Wu , Kenneth Hung , Pet Weng , Pin-yen Lin X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1756353731; l=89339; i=pet.weng@ite.com.tw; s=20250702; h=from:subject:message-id; bh=MW+KUs0GeUKMDvSIKYsAB1xWIfmbFgtgDo8cV1gB2Do=; b=ZWrjypLi6iKwSlCXsfr3cKe5ul5UGmapLeru0kLASbN+23MoLWiVvl2WQIJv3AzlFKE3SzEnh W93YNwKZcKrCClsbQ5Xtucsqhl4BNe/10nxRWq5SGm5eJexv/opYzB4 X-Developer-Key: i=pet.weng@ite.com.tw; a=ed25519; pk=wd08uBtTLb93x2ixbKVNsxiZPdMh1Ov4z5klodh2bqo= X-ClientProxiedBy: CSBMAIL1.internal.ite.com.tw (192.168.65.58) To CSBMAIL1.internal.ite.com.tw (192.168.65.58) X-TM-SNTS-SMTP: CFDD4ACE7AB660DB7677146B7CD6F11593E3B7E8E65059F553CF33D1E6A3D0F42002:8 X-MAIL: mse.ite.com.tw 57S428BV028014 This adds support for the ITE IT61620 bridge chip which converts MIPI DSI input to HDMI output. The Driver implements the basic bridge functions and integrates with the DRM bridge and connector frameworks. Supported fetures include: MIPI DSI input handling HDMI output setup Basic mode configuration I2C-based control and initialization HDCP 1.4 handling This driver will be used on platforms embedding the IT61620 for video output via HDMI from SoCs with MIPI DSI output. Signed-off-by: Pet Weng --- drivers/gpu/drm/bridge/Kconfig | 19 + drivers/gpu/drm/bridge/Makefile | 1 + drivers/gpu/drm/bridge/ite-it61620.c | 2944 ++++++++++++++++++++++++++++++= ++++ 3 files changed, 2964 insertions(+) diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig index 6945029b35929a8e30054ac1a699bd88ab0487f2..b10ca77a5a5da1d220aac400950= fe99c4e7e3ce0 100644 --- a/drivers/gpu/drm/bridge/Kconfig +++ b/drivers/gpu/drm/bridge/Kconfig @@ -111,6 +111,25 @@ config DRM_ITE_IT6263 help ITE IT6263 LVDS to HDMI bridge chip driver. =20 +config DRM_ITE_IT61620 + tristate "ITE IT61620 DSI/HDMI bridge" + depends on OF + select DRM_DISPLAY_CONNECTOR + select DRM_DISPLAY_HDMI_HELPER + select DRM_DISPLAY_HDCP_HELPER + select DRM_DISPLAY_HELPER + select DRM_MIPI_DSI + select DRM_KMS_HELPER + select DRM_HDMI_HELPER + select CRYPTO + select CRYPTO_HASH + help + Driver for ITE IT61620 MIPI DSI to HDMI bridge + chip driver. + + It enables display output through HDMI when connected to a MIPI + DSI source. The bridge translates the video signals for HDMI monitors. + config DRM_ITE_IT6505 tristate "ITE IT6505 DisplayPort bridge" depends on OF diff --git a/drivers/gpu/drm/bridge/Makefile b/drivers/gpu/drm/bridge/Makef= ile index c7dc03182e59273f52250ecd158d90ac3d29439c..41668786a909a217872ef2222b5= 45d2b5bf87b51 100644 --- a/drivers/gpu/drm/bridge/Makefile +++ b/drivers/gpu/drm/bridge/Makefile @@ -11,6 +11,7 @@ tda998x-y :=3D tda998x_drv.o obj-$(CONFIG_DRM_I2C_NXP_TDA998X) +=3D tda998x.o =20 obj-$(CONFIG_DRM_ITE_IT6263) +=3D ite-it6263.o +obj-$(CONFIG_DRM_ITE_IT61620) +=3D ite-it61620.o obj-$(CONFIG_DRM_ITE_IT6505) +=3D ite-it6505.o obj-$(CONFIG_DRM_LONTIUM_LT8912B) +=3D lontium-lt8912b.o obj-$(CONFIG_DRM_LONTIUM_LT9211) +=3D lontium-lt9211.o diff --git a/drivers/gpu/drm/bridge/ite-it61620.c b/drivers/gpu/drm/bridge/= ite-it61620.c new file mode 100644 index 0000000000000000000000000000000000000000..e19999a1ee53dea0b46ab9dbb37= dcb0200e91b11 --- /dev/null +++ b/drivers/gpu/drm/bridge/ite-it61620.c @@ -0,0 +1,2944 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2025 ITE Tech. Inc. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include