From nobody Fri Jun 12 11:39:12 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (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 C2D9342DFFE; Fri, 15 May 2026 09:10:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836204; cv=none; b=V3gXXiXG+fkfsN6NyXkTvRNiisLgDyVhIv5UkB9Q4FpcpdcUwrvhG+cpU7PIoUMMb91P2o4+biipmWY0ykkycZGIErv9+RaeMoEve7ziPnqwgqWUYZWHPaAcjpMMxuCJRF5iD//RxjSJI3MU5079qq1s6AUYRfMaMYaK4gtRH/c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836204; c=relaxed/simple; bh=5x7Ln4iaXdF3MSB6XJc9r1qugg8DjCeCJV/XznDnxs4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=nhRK3WI30GZi3VYa9Dl/qLXt4k2d8AlPyxXgwMmhmMuLIUNYYCdO/v7rQkWNaasNwXmbyrwrIYhUwgM8gVlLRxEvNcfjLUcBT6SJqhgrC5ooPryM7VlRDDcwr5/mcvafiU7CwOPnTllUM+Xr/Mx0D8BRcBefO2uoJ1wuaXjkFpM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=Lu/hTgXR; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="Lu/hTgXR" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 703B380B; Fri, 15 May 2026 11:09:47 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1778836188; bh=5x7Ln4iaXdF3MSB6XJc9r1qugg8DjCeCJV/XznDnxs4=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Lu/hTgXRRNejU6mBiijzIhsuaG5H2NSLEq5x6HLoPiprFf6QBHbH1yBb6T+COdXov Jm+GNqwyezKpiY6IepoWq8SBdA63IeFpEbLL7cp7W4A2FD39ow1LeWlxLVsBzQIPoj b79hE68k2JYlGLJFlVCE9gcTfR8ZW1CorNi3rvmE= From: Tomi Valkeinen Date: Fri, 15 May 2026 12:09:26 +0300 Subject: [PATCH v3 1/7] clk: renesas: r8a779g0: Add DSC clock 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: <20260515-rcar-du-dsc-v3-1-164157820498@ideasonboard.com> References: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> In-Reply-To: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> To: Geert Uytterhoeven , Michael Turquette , Stephen Boyd , 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 , Magnus Damm , Marek Vasut , Laurent Pinchart , Kieran Bingham , Philipp Zabel Cc: linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, Tomi Valkeinen X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=929; i=tomi.valkeinen+renesas@ideasonboard.com; h=from:subject:message-id; bh=Sa58pHpMpn9uJbYQtT/HcZDpP5JrbrhbJQzUT3AA1cQ=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqBuLgtk9aZbQB/hwwMfaxXE6pb5OiaYBQNd54M 3t5ChtU9aWJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCagbi4AAKCRD6PaqMvJYe 9WIgD/4/kc0VWgIETeu5xXRiwUI5oRw1RnZr8ceFQj7Z5fZsE0GzO1HdKk2IWZeCdHJmvklyCmx UcT/+5uhk7C3UpQn3i2PEirXPtyyWjdUF/moJIUJpVvQ1Rr7lkLrnX3KG3KvUkK1PHEYMkWiA5h E2PBNWX9obTSp3F3ENs5HWx5xZL3rY8tZ//minQMvgkJdl6AL83Nzg6uXmYzyGgsVld6hgSW80h 8axe0GZiZqsDmaDdKTG8JPZc7iaZ6kg/BU9GuVmny0eYm0DnE6Z96Q+gwryXnYlHPS588XS+eOv XT3SfXsP6U5fpNiCYw3r8Rub50d8z30AFZTSlKOUsRcALy/+j0bjLeQf+D8MaXM7NU3eFRzPuiC /zq9DEuP63jTEfr6kAoqBnma6x+YByQkCs9UcI1KjVl54rt759J2oH7z/Np4UDIq93YjmXNIo73 lD2o2t24jx2nyf0gP1uC2RCwLa8MiWR93MuFDvcbWccEHCtiu8tVUVLiXrL3hw0wLQsy0jOnXBn ZOIET+CtqgqPaC/ceHyn/2T+4bMVZvtb+T1+JWFRwMAKIqc+2iXpM1CN6KBISaN5uD1095N3pCC b575u7+rNYiQdxHxGt610Uj0X7B0K7JcOrGI+Jx3HiJSvdk2Hqd9WlgdXJNgbcWCoKDe5c0Zird ArRj17W3Ct/gUYw== X-Developer-Key: i=tomi.valkeinen+renesas@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 From: Marek Vasut Add the DSC module clock for Renesas R-Car V4H (R8A779G0) SoC. Signed-off-by: Marek Vasut Signed-off-by: Tomi Valkeinen Reviewed-by: Geert Uytterhoeven Reviewed-by: Laurent Pinchart --- drivers/clk/renesas/r8a779g0-cpg-mssr.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/clk/renesas/r8a779g0-cpg-mssr.c b/drivers/clk/renesas/= r8a779g0-cpg-mssr.c index 015b9773cc55..54ba76ff5ab0 100644 --- a/drivers/clk/renesas/r8a779g0-cpg-mssr.c +++ b/drivers/clk/renesas/r8a779g0-cpg-mssr.c @@ -245,6 +245,7 @@ static const struct mssr_mod_clk r8a779g0_mod_clks[] __= initconst =3D { DEF_MOD("fcpvx0", 1100, R8A779G0_CLK_S0D1_VIO), DEF_MOD("fcpvx1", 1101, R8A779G0_CLK_S0D1_VIO), DEF_MOD("tsn", 2723, R8A779G0_CLK_S0D4_HSC), + DEF_MOD("dsc", 2819, R8A779G0_CLK_VIOBUSD2), DEF_MOD("ssiu", 2926, R8A779G0_CLK_S0D6_PER), DEF_MOD("ssi", 2927, R8A779G0_CLK_S0D6_PER), }; --=20 2.43.0 From nobody Fri Jun 12 11:39:12 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (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 7033F436362; Fri, 15 May 2026 09:10:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836205; cv=none; b=n1z5HPXfNVdTQBlm+JkhDI7BFBSDZKa6MwWaG4btiPMHfY8Jadc5SUjicXQxcIPDIS9bJbQc6JOo8IrYyiJrQ6iq1mnmUMgQ6NhqwZDr4y+TtCvs1kgEo3zCOUFMqPK/oe620cFzIRM6/nNjEFhZaG5vPGPiz2rLatRrybxXnJw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836205; c=relaxed/simple; bh=kHksZJfpFMV47h8nwdHcFDKgVfCurmMft/yFeQpokLU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=LS/0ZLk7wCwHv3/js7Cvjdtfn5K/YXVox3aWFUcSpzANR/CMdcByjW+cHjueNobQ1tz1vvDKFEv7KA4Xix1eAJW/vn4xwoV3nvJitrP9ce4Zw0EJruSnZ4ERQk12/9ZUYQr1y37iaMKK/tNZFzBg76KZ+FFmTNriR6dF/dogDJk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=DHKkwbeS; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="DHKkwbeS" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 0A0508FA; Fri, 15 May 2026 11:09:48 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1778836190; bh=kHksZJfpFMV47h8nwdHcFDKgVfCurmMft/yFeQpokLU=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=DHKkwbeSS5VYcx4gG5/X+1z7Y/8pVMELOaeTkpby2KYZcrKfSEZzBUOBOHWotYAMx M0sGiedY/dy1qwq4TaVD4qbhi/jDtxdj+akVcK9sUSaddgjACvJa9rKZQwdzl00saV 5nxi5M/woIWNq9VIK7B69IFUGh3742lRAwK1rzWg= From: Tomi Valkeinen Date: Fri, 15 May 2026 12:09:27 +0300 Subject: [PATCH v3 2/7] dt-bindings: display: bridge: Document Renesas R-Car V4H DSC bindings 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: <20260515-rcar-du-dsc-v3-2-164157820498@ideasonboard.com> References: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> In-Reply-To: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> To: Geert Uytterhoeven , Michael Turquette , Stephen Boyd , 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 , Magnus Damm , Marek Vasut , Laurent Pinchart , Kieran Bingham , Philipp Zabel Cc: linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, Tomi Valkeinen X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3100; i=tomi.valkeinen+renesas@ideasonboard.com; h=from:subject:message-id; bh=2I8UDeCqT/cBmhnGJPNLMM2v8v1+nikKwEBiZMwtls4=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqBuLhbW1mhCjr09AFE2KgytB8mnKa6AjvIuikT NyD2PGebFmJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCagbi4QAKCRD6PaqMvJYe 9TSfD/0YKMJMP2O2NflaziOWV6m+6vSbdgJxqk1w/6BmTL8dSzVAeNYs03V0D7qyb6+dgYdwpwQ oE1QxE5RbhQbgScVDrFRpy5CzjLQG5ivXgq3fbGE5VOSDXQdgu5Y4BjimG2Z1LY9uml8LUjRMhf 2a2AyCJuitisvfvXAvOklFqax+njfL7bEEENgIUdyOMXq3xHEmtjBqniVpYb2xDATFjbr8NSh9g LmTUYLU7HfYrv9vw8CsHAwBkBpqPrmPvgytbTHFOsW3/eclBhNLJWvQg8N/6sZPVtoGmWSFv3DT 9+Gz2BBr/Cm8BK1yro6z0Pb72vuukaIIOS9Tz7V+i9DT0jyTZgzene86mwD22kkKeUgtcq00ikw xqh7kRnag/g2zUVUJxNblJZW80+l+ACfl5lxif2f8FW+ep2TYta2bhjP8iUo+x7xmPwu/wyy2Nw l1tzkCQKRagba9DJPqM8IUmvoF2nrtA8lq2JmsbHhZtOZTUtWFJ2RKgtkPCXO/MamEeApKlahO8 XM0l4G9/0Bqwf7jJtpZgicyD3YbPSY6sQULQKnrlHVSBwJnV7xhCLT+BRPCVetsr1y1bB3yvloh ZCmji19tyhi8gaCNj0esJJA7Unuc7slB+pH8dns88nVkEuX1jBk8piw3ZorJlfZu+haZSGIWeRt H7CCBOKyMrV3b7g== X-Developer-Key: i=tomi.valkeinen+renesas@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 From: Marek Vasut The Renesas DSC Display Stream Compression is a bridge embedded in the Renesas R-Car V4H SoC. The bridge performs VESA DSC encoding of up to 8k or 400 Mpixel/s . Signed-off-by: Marek Vasut [tomi.valkeinen: fix the example] Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- .../bindings/display/bridge/renesas,dsc.yaml | 96 ++++++++++++++++++= ++++ 1 file changed, 96 insertions(+) diff --git a/Documentation/devicetree/bindings/display/bridge/renesas,dsc.y= aml b/Documentation/devicetree/bindings/display/bridge/renesas,dsc.yaml new file mode 100644 index 000000000000..2918d592732b --- /dev/null +++ b/Documentation/devicetree/bindings/display/bridge/renesas,dsc.yaml @@ -0,0 +1,96 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/bridge/renesas,dsc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Renesas R-Car DSC Display Stream Compression + +maintainers: + - Marek Vasut + +description: | + This binding describes the VESA DSC Display Stream Compression encoder + embedded in the Renesas R-Car V4H SoC. The encoder supports all DSC1.1 + encoding mechanisms, configurable bits-per-pixel, resolution up to 8k. + +properties: + compatible: + const: renesas,r8a779g0-dsc + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + + interrupts: + maxItems: 1 + + power-domains: + maxItems: 1 + + resets: + maxItems: 1 + + ports: + $ref: /schemas/graph.yaml#/properties/ports + + properties: + port@0: + $ref: /schemas/graph.yaml#/properties/port + description: R-Car DU input port + + port@1: + $ref: /schemas/graph.yaml#/properties/port + description: R-Car DSI output port + + required: + - port@0 + - port@1 + +required: + - compatible + - reg + - clocks + - interrupts + - power-domains + - resets + - ports + +unevaluatedProperties: false + +examples: + - | + #include + #include + #include + + dsc@feb8d000 { + compatible =3D "renesas,r8a779g0-dsc"; + reg =3D <0xfeb8d000 0x400>; + interrupts =3D ; + clocks =3D <&cpg CPG_MOD 2819>; + power-domains =3D <&sysc R8A779G0_PD_ALWAYS_ON>; + resets =3D <&cpg 2819>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + dsc_in_dsi1: endpoint { + remote-endpoint =3D <&du_out_dsi1>; + }; + }; + + port@1 { + reg =3D <1>; + dsc_out_dsi1: endpoint { + remote-endpoint =3D <&dsi1_in>; + }; + }; + }; + }; +... --=20 2.43.0 From nobody Fri Jun 12 11:39:12 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (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 C8F9B438FEE; Fri, 15 May 2026 09:10:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836207; cv=none; b=gdL5JklOXhcLDu1Hw41YTy8xQXBhAehwVMBjupe9A63XwoTC2k+2zN/uCUBH/iDYh2xXxZftP3wDTOBHe7DKbhgJ9ooE9kodPtfuEk56SSOrWmgTyQstJiSZkE2lqObt9LJQGAeiKpP8SWCX95SdZAFxCVdu1hS75/eSthXASMU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836207; c=relaxed/simple; bh=XXZPZjVwDE2HoX03g1ulcaBjlXV5Jlfo/sqTVaU8NOM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=mwwCeP//MmoZXtMwNJB0sW+W911YxQ+2z2dj69TQOF+ktUPZeHdX3i1kNZoMzqss1ITvxjXZ4ZWAVmqdDyOowHxYGzUwuMh+M5puiGyfLYZ4uV4H663CLJFLXQ6szKBGFHfO2KIjisPOAtLX17OyQeEf0yUYSLO3L4mlzeLeqWE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=FjXxAIxY; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="FjXxAIxY" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 95A51DF3; Fri, 15 May 2026 11:09:50 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1778836192; bh=XXZPZjVwDE2HoX03g1ulcaBjlXV5Jlfo/sqTVaU8NOM=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=FjXxAIxY+azS3Zie4XvYns4HkjbMIJHwiVwdw2DGNHSh7WIb5hQjTDoZdFI+Tx4xL 2nO4m9wTWTviJYRKq/m7ToDEM0TfavvQ3aCq/a3P2XhdsNmNLhvSHCHxqRUCKjwOBa X3/i6JLBmJTbkxJAVwSrh+0SNDEL/gJFLHMYDRBg= From: Tomi Valkeinen Date: Fri, 15 May 2026 12:09:28 +0300 Subject: [PATCH v3 3/7] drm/rcar-du: dsc: Add rudimentary Renesas R-Car V4H DSC 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: <20260515-rcar-du-dsc-v3-3-164157820498@ideasonboard.com> References: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> In-Reply-To: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> To: Geert Uytterhoeven , Michael Turquette , Stephen Boyd , 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 , Magnus Damm , Marek Vasut , Laurent Pinchart , Kieran Bingham , Philipp Zabel Cc: linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, Tomi Valkeinen X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=6565; i=tomi.valkeinen+renesas@ideasonboard.com; h=from:subject:message-id; bh=6RyvOy1vah8aQPX1HFdDvKqRB82zoxBVZZhVCgvsUyA=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqBuLhFN0yp5teWEOkskYB2ql72vclBl1/sxEOC LT9drD0m52JAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCagbi4QAKCRD6PaqMvJYe 9bQeD/sFyYDJEIEuhphmgTe6g1E/czzHU26oTe2EOUg3M9/XNs9WOGk0NVyoA31lX+FynyZJIi4 C0ul+PhnjlL8tcQA8LgtUjXGI39Gb+9xfl1HQSx92tc82eXP+HB9CB3hczFjA2yVdYWI1uEnwOD yZaKkeckKpAfwaXHi+KVq2yTCHxGBggECOTejQPzoAvUtBtbr9ZGJjde8aBGRH7PAFnnvD9aRS8 7KCRoy2XLKckvcQjitWwTH+byJp6IUiwacjqPjohod/HzUfRR3u5uCzeHCN+hF4D4NNoBytcdfI 79lwbU1XTkO63l7CCvU0UoOk7/Nup+rOrntZtWdZfOlj4BKUQZMcoXAe/wVoLo98KS2vLCmorsl lyjpUOhjHqetawnGbPHPXQuBqkd7OlDNZpJmsx8hoI9Cdlq38sfz+hTiCzuPRb1RHiC0tPH6oLz wmZDy9ONBM7iGVPXSMMt8OnMTtmjHjeEVpCX+AgDVC0gkQugslqezKjlhliFgFYhy1fZAFKas2K OXJ6dgqb47w0B4mEzlm7pNzos4m/fioTxgFrxbJ6SgJ8etGlCmw1o1qHXT8Em9lEtm9jUZySAiZ 9NOKNneeFc39JNzo3+zWaBMGw3Ccp1+kPzIluNSmE/UtLtiSPSBNTY9sqMbYM39f/exD67lb+qh NeB4EoGoCPRyi8g== X-Developer-Key: i=tomi.valkeinen+renesas@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 From: Marek Vasut The Renesas DSC Display Stream Compression is a bridge embedded in the Renesas R-Car V4H SoC. The bridge performs VESA DSC encoding of up to 8k or 400 Mpixel/s . Add rudimentary driver, which currently acts as a pass-through bridge and allows DSI1 to be operational on R-Car V4H. Signed-off-by: Marek Vasut [tomi.valkeinen: use bridge->next_bridge, minor changes] Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/renesas/rcar-du/Kconfig | 12 +++ drivers/gpu/drm/renesas/rcar-du/Makefile | 1 + drivers/gpu/drm/renesas/rcar-du/rcar_dsc.c | 160 +++++++++++++++++++++++++= ++++ 3 files changed, 173 insertions(+) diff --git a/drivers/gpu/drm/renesas/rcar-du/Kconfig b/drivers/gpu/drm/rene= sas/rcar-du/Kconfig index 840305fdeb49..c58dba949d85 100644 --- a/drivers/gpu/drm/renesas/rcar-du/Kconfig +++ b/drivers/gpu/drm/renesas/rcar-du/Kconfig @@ -33,6 +33,18 @@ config DRM_RCAR_DW_HDMI help Enable support for R-Car Gen3 or RZ/G2 internal HDMI encoder. =20 +config DRM_RCAR_USE_DSC + bool "R-Car DU DSC Encoder Support" + depends on DRM_BRIDGE && OF + depends on DRM_RCAR_DU || COMPILE_TEST + default DRM_RCAR_DU + help + Enable support for the R-Car Display Unit embedded DSC encoder. + +config DRM_RCAR_DSC + def_tristate DRM_RCAR_DU + depends on DRM_RCAR_USE_DSC + config DRM_RCAR_USE_LVDS bool "R-Car DU LVDS Encoder Support" depends on DRM_BRIDGE && OF diff --git a/drivers/gpu/drm/renesas/rcar-du/Makefile b/drivers/gpu/drm/ren= esas/rcar-du/Makefile index 6f132325c8b7..cc27b2265d94 100644 --- a/drivers/gpu/drm/renesas/rcar-du/Makefile +++ b/drivers/gpu/drm/renesas/rcar-du/Makefile @@ -12,5 +12,6 @@ rcar-du-drm-$(CONFIG_DRM_RCAR_WRITEBACK) +=3D rcar_du_wri= teback.o obj-$(CONFIG_DRM_RCAR_CMM) +=3D rcar_cmm.o obj-$(CONFIG_DRM_RCAR_DU) +=3D rcar-du-drm.o obj-$(CONFIG_DRM_RCAR_DW_HDMI) +=3D rcar_dw_hdmi.o +obj-$(CONFIG_DRM_RCAR_DSC) +=3D rcar_dsc.o obj-$(CONFIG_DRM_RCAR_LVDS) +=3D rcar_lvds.o obj-$(CONFIG_DRM_RCAR_MIPI_DSI) +=3D rcar_mipi_dsi.o diff --git a/drivers/gpu/drm/renesas/rcar-du/rcar_dsc.c b/drivers/gpu/drm/r= enesas/rcar-du/rcar_dsc.c new file mode 100644 index 000000000000..5d3d083e3ce6 --- /dev/null +++ b/drivers/gpu/drm/renesas/rcar-du/rcar_dsc.c @@ -0,0 +1,160 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * R-Car DSC Encoder + * + * Copyright (C) 2025 Marek Vasut + * Copyright (C) 2025 Renesas Electronics Corporation + */ + +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +struct rcar_dsc { + struct drm_bridge bridge; + + struct device *dev; + void __iomem *mmio; +}; + +static inline struct rcar_dsc *bridge_to_rcar_dsc(struct drm_bridge *bridg= e) +{ + return container_of(bridge, struct rcar_dsc, bridge); +} + +/* -----------------------------------------------------------------------= ------ + * Bridge + */ + +static int rcar_dsc_attach(struct drm_bridge *bridge, + struct drm_encoder *encoder, + enum drm_bridge_attach_flags flags) +{ + struct rcar_dsc *dsc =3D bridge_to_rcar_dsc(bridge); + + if (!(flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR)) + return -EINVAL; + + return drm_bridge_attach(encoder, dsc->bridge.next_bridge, bridge, + DRM_BRIDGE_ATTACH_NO_CONNECTOR); +} + +static void rcar_dsc_atomic_enable(struct drm_bridge *bridge, + struct drm_atomic_state *state) +{ + struct rcar_dsc *dsc =3D bridge_to_rcar_dsc(bridge); + + WARN_ON(pm_runtime_resume_and_get(dsc->dev)); +} + +static void rcar_dsc_atomic_disable(struct drm_bridge *bridge, + struct drm_atomic_state *state) +{ + struct rcar_dsc *dsc =3D bridge_to_rcar_dsc(bridge); + + pm_runtime_put(dsc->dev); +} + +static enum drm_mode_status +rcar_dsc_bridge_mode_valid(struct drm_bridge *bridge, + const struct drm_display_info *info, + const struct drm_display_mode *mode) +{ + if (mode->hdisplay < 320 || mode->hdisplay > 8190) + return MODE_BAD_HVALUE; + + if (mode->vdisplay < 160 || mode->vdisplay > 8190) + return MODE_BAD_VVALUE; + + if (mode->clock > 400000) /* Really 400 Mpixel/s */ + return MODE_CLOCK_HIGH; + + return MODE_OK; +} + +static const struct drm_bridge_funcs rcar_dsc_bridge_ops =3D { + .attach =3D rcar_dsc_attach, + .atomic_duplicate_state =3D drm_atomic_helper_bridge_duplicate_state, + .atomic_destroy_state =3D drm_atomic_helper_bridge_destroy_state, + .atomic_reset =3D drm_atomic_helper_bridge_reset, + .atomic_enable =3D rcar_dsc_atomic_enable, + .atomic_disable =3D rcar_dsc_atomic_disable, + .mode_valid =3D rcar_dsc_bridge_mode_valid, +}; + +/* -----------------------------------------------------------------------= ------ + * Probe & Remove + */ + +static int rcar_dsc_probe(struct platform_device *pdev) +{ + struct device *dev =3D &pdev->dev; + struct device_node *remote; + struct rcar_dsc *dsc; + int ret; + + dsc =3D devm_drm_bridge_alloc(dev, struct rcar_dsc, bridge, + &rcar_dsc_bridge_ops); + if (IS_ERR(dsc)) + return PTR_ERR(dsc); + + platform_set_drvdata(pdev, dsc); + + dsc->dev =3D &pdev->dev; + + dsc->mmio =3D devm_platform_ioremap_resource(pdev, 0); + if (IS_ERR(dsc->mmio)) + return PTR_ERR(dsc->mmio); + + remote =3D of_graph_get_remote_node(dev->of_node, 1, 0); + if (!remote) + return -EINVAL; + + dsc->bridge.next_bridge =3D of_drm_find_and_get_bridge(remote); + of_node_put(remote); + if (!dsc->bridge.next_bridge) + return -EPROBE_DEFER; + + dsc->bridge.of_node =3D dev->of_node; + + ret =3D devm_drm_bridge_add(dev, &dsc->bridge); + if (ret) + return ret; + + pm_runtime_enable(&pdev->dev); + + return 0; +} + +static void rcar_dsc_remove(struct platform_device *pdev) +{ + pm_runtime_disable(&pdev->dev); +} + +static const struct of_device_id rcar_dsc_of_table[] =3D { + { .compatible =3D "renesas,r8a779g0-dsc" }, + {} +}; + +MODULE_DEVICE_TABLE(of, rcar_dsc_of_table); + +static struct platform_driver rcar_dsc_platform_driver =3D { + .probe =3D rcar_dsc_probe, + .remove =3D rcar_dsc_remove, + .driver =3D { + .name =3D "rcar-dsc", + .of_match_table =3D rcar_dsc_of_table, + }, +}; + +module_platform_driver(rcar_dsc_platform_driver); + +MODULE_DESCRIPTION("Renesas R-Car DSC Encoder Driver"); +MODULE_LICENSE("GPL"); --=20 2.43.0 From nobody Fri Jun 12 11:39:12 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (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 4474A42DFFE; Fri, 15 May 2026 09:10:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836208; cv=none; b=XAv6kDYxTIOylRxW6yhvHnkJUcRzC1nIKC9GtMMk4xgnD6GS9+NbFBrxCNP2qtQZn8I1jwe23HP2pIwQ7e6fNlYy6CNPiuRV9Uv85UjAw5jWjL9rHC5WfULqxaE7Mb5pXbgjVvUHtZStp0DXK2Odkj9VkCwt6qUlCcb6GIvKNvQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836208; c=relaxed/simple; bh=gBQFB78X4KGzpd0DZyLsXnhD9qIE3f4obIum+k+GS5o=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=I4jwHArjY/08er4oOxrhtmjj+bfrTLyRHy3+zHogbXsoo11koqG5WcqaO9titTicZSmDEafTEYMgtvtR4qEfDgh2EUFgSjImx+Etx6Pe98mWflabAyMCN6J2HkUhmR6flyARa/2ldY3f5hhJQkuC+pf7VpZaDsfRyvysGJRcSuo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=AAyx7CGT; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="AAyx7CGT" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 2CD041123; Fri, 15 May 2026 11:09:52 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1778836193; bh=gBQFB78X4KGzpd0DZyLsXnhD9qIE3f4obIum+k+GS5o=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=AAyx7CGTxMpwqNDXZpxdnJMoxnJHZdKCvwoVX3FV+UAkWyLYdxNP421KsHe3ZrXyt ZKWW7VxzQO9UwoLQbqLPTjdIrN+60iXpSTh1UDgrI0E0KL0pN0NCiOpDRk68mI6Fge V7Mh5NngRHBd6PyaIaktt7hiwOeaGjWJpWSbOh2s= From: Tomi Valkeinen Date: Fri, 15 May 2026 12:09:29 +0300 Subject: [PATCH v3 4/7] drm/rcar-du: dsi: Support DSC in the pipeline 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: <20260515-rcar-du-dsc-v3-4-164157820498@ideasonboard.com> References: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> In-Reply-To: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> To: Geert Uytterhoeven , Michael Turquette , Stephen Boyd , 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 , Magnus Damm , Marek Vasut , Laurent Pinchart , Kieran Bingham , Philipp Zabel Cc: linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, Tomi Valkeinen X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2997; i=tomi.valkeinen+renesas@ideasonboard.com; h=from:subject:message-id; bh=gBQFB78X4KGzpd0DZyLsXnhD9qIE3f4obIum+k+GS5o=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqBuLhJ0hC8Yq7b2bP6uZ61PSSoK4QV30lgeyVu BikaFfnkS2JAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCagbi4QAKCRD6PaqMvJYe 9Xr6D/4mgsmuvgX6IPeKR7i8IESTN8ojqf8HWHW57ABeqPGwELcOfYaGBCYwlsMGkNSepSbaJaR UQttkxQywK1v/IVm1N5vW1h35Cb34TEHhP/eA4+fHglR7XPe4yg+IZgci9yoz8UVzebO2sqmvl9 7KKQDh+ggRSujarVj1gFpbTrQtSNyo23F6kdsdW/ph0dfMUuU6FCjYmLnhIolVmMDA73F7/7iPv Dg9+h/vCF6kfSBlsmmZKzq3fx/h77EO+7Tp6lWfc7gyduLtnYooDANLwdHFbBE6lmUS5Oo/BJuf a3jPIwAweqWQk2bAkh2cjKYt+91T3YyB8nwyGCevzs3adxxPBSyLdpZulkjvtA64lt6cwMTAJ4W y9LiVvzR0ArB+Y5BFNqKML1NH+IUQXZufaTiSyeYPmN6j7YubCwNAKnnQys4XkJf0ei65RqRLU1 BhHByRJn8KTUjpHdhGx6MxYpY5aYSR2GN3QwVLJpToSwSCCQbfWNjgwzwqOtEquLmf7ii0MeM3T 4Z9LoWynxK/jDCDBaPArVQhO/vUGbFy2zZOjO1poYzHZWJMOX8XHXIutakJIzU1Fz+dF3Ohflbx cAEW/2GPBS1MxU4BTdVhXtjiNIbXbJ95i4Hot9Pb/h07lvU+7eZjAwNXy/KQUNtMYTV4HJzXU0E 7PuLktvFpEB9gfQ== X-Developer-Key: i=tomi.valkeinen+renesas@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 Enabling DSI clocks on rcar-du needs some tricks as the DU dot clock is provided by the DSI. Thus, we call rcar_mipi_dsi_pclk_enable() from the crtc, when enabling the crtc. With DSC (added in upcoming patch) in the pipeline, between the DU and the DSI, the above call path is broken as the crtc tries to call rcar_mipi_dsi_pclk_enable() on the DSC. Adjust the rcar_mipi_dsi_pclk_enable() so that it detects the DSC, and in that case gets the next bridge from the DSC, which is the DSI. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/renesas/rcar-du/rcar_mipi_dsi.c | 36 +++++++++++++++++++++= ++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/renesas/rcar-du/rcar_mipi_dsi.c b/drivers/gpu/= drm/renesas/rcar-du/rcar_mipi_dsi.c index 4ef2e3c129ed..085e229bcb0b 100644 --- a/drivers/gpu/drm/renesas/rcar-du/rcar_mipi_dsi.c +++ b/drivers/gpu/drm/renesas/rcar-du/rcar_mipi_dsi.c @@ -88,6 +88,8 @@ struct dsi_setup_info { const struct dsi_clk_config *clkset; }; =20 +static const struct drm_bridge_funcs rcar_mipi_dsi_bridge_ops; + static inline struct rcar_mipi_dsi * bridge_to_rcar_mipi_dsi(struct drm_bridge *bridge) { @@ -844,15 +846,39 @@ static void rcar_mipi_dsi_atomic_disable(struct drm_b= ridge *bridge, rcar_mipi_dsi_stop_video(dsi); } =20 +/* + * We need to skip the DSC bridge when we have DSC in between the DU and + * the DSI. We detect the DSI bridge via bridge->funcs, and assume the + * next_bridge is the DSI bridge. If this is not the case, the DT data + * is wrong (so it shouldn't really happen). + */ +static struct drm_bridge * +rcar_mipi_dsi_resolve_bridge(struct drm_bridge *bridge) +{ + if (bridge->funcs !=3D &rcar_mipi_dsi_bridge_ops) + bridge =3D bridge->next_bridge; + + if (!bridge || bridge->funcs !=3D &rcar_mipi_dsi_bridge_ops) + return NULL; + + return bridge; +} + void rcar_mipi_dsi_pclk_enable(struct drm_bridge *bridge, struct drm_atomic_state *state) { - struct rcar_mipi_dsi *dsi =3D bridge_to_rcar_mipi_dsi(bridge); const struct drm_display_mode *mode; struct drm_connector *connector; + struct rcar_mipi_dsi *dsi; struct drm_crtc *crtc; int ret; =20 + bridge =3D rcar_mipi_dsi_resolve_bridge(bridge); + if (WARN_ON(!bridge)) + return; + + dsi =3D bridge_to_rcar_mipi_dsi(bridge); + connector =3D drm_atomic_get_new_connector_for_encoder(state, bridge->encoder); crtc =3D drm_atomic_get_new_connector_state(state, connector)->crtc; @@ -885,7 +911,13 @@ EXPORT_SYMBOL_GPL(rcar_mipi_dsi_pclk_enable); =20 void rcar_mipi_dsi_pclk_disable(struct drm_bridge *bridge) { - struct rcar_mipi_dsi *dsi =3D bridge_to_rcar_mipi_dsi(bridge); + struct rcar_mipi_dsi *dsi; + + bridge =3D rcar_mipi_dsi_resolve_bridge(bridge); + if (WARN_ON(!bridge)) + return; + + dsi =3D bridge_to_rcar_mipi_dsi(bridge); =20 rcar_mipi_dsi_shutdown(dsi); rcar_mipi_dsi_clk_disable(dsi); --=20 2.43.0 From nobody Fri Jun 12 11:39:12 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (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 ABAA643C076; Fri, 15 May 2026 09:10:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836210; cv=none; b=HDTk6cx5nj5ZCo3udxMWRX7q8953Embx4D381JyPOZb+sHzNDZZVPazBHqA6+w41bBsaETQhZ0UsMprB6NV05x05hKC/BXpW6fm0YPlIK+0aGjFISD4P4AQd+uJZUubaxV+k7YxDM45kThRxSbWxF0PLmCtTyz6b/7Wk6yHi4/0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836210; c=relaxed/simple; bh=Q0KK8Vnmn0OKEEcWFrpokO4RWx/VC1ho0JpGmPQEI5Q=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Um5XhZ+PdTj5PpAgX/UD6PJ4WADN8mH9Hg9fUPs7NWKbaL3VgadIWfzp7lju/3wycqlYXKuSodr4PuVzWXTQ77vFY9Co9e9j5AYk3skEbO0VQ07J/bVJGFR8lbjusyw8UOE8Uu6MoGuJevf69Wml8T6cny/XskxSg3r4zx/PcU8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=QxpDTze9; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="QxpDTze9" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id BDE3F1337; Fri, 15 May 2026 11:09:53 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1778836195; bh=Q0KK8Vnmn0OKEEcWFrpokO4RWx/VC1ho0JpGmPQEI5Q=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=QxpDTze9IPXVXHJyWDbbaXDTI2JoVnhsZgvSYrEwX8mzwMitYEeRIlO3sdUMWhhAB WkkNfRFlDM/IoH/NBXxeukRwzqujQgVVNrEQdbZzn3gPztkWHCjrfUdp4sqb6mUuDB T/QDwgIlSrf7HFWkzuaKNHsFPLJmUVnVZl0B3kCU= From: Tomi Valkeinen Date: Fri, 15 May 2026 12:09:30 +0300 Subject: [PATCH v3 5/7] arm64: dts: renesas: r8a779g0: Add DSC 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: <20260515-rcar-du-dsc-v3-5-164157820498@ideasonboard.com> References: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> In-Reply-To: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> To: Geert Uytterhoeven , Michael Turquette , Stephen Boyd , 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 , Magnus Damm , Marek Vasut , Laurent Pinchart , Kieran Bingham , Philipp Zabel Cc: linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, Tomi Valkeinen X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1848; i=tomi.valkeinen+renesas@ideasonboard.com; h=from:subject:message-id; bh=LB0h2hc6Sj2kvghRC2Rip9B8urRMXGeEfCaq9x9z/6Q=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqBuLiI9h3bVKCgisUxUZwYF14YJcg2kBLL3u2X Bluo9pkMTyJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCagbi4gAKCRD6PaqMvJYe 9egAD/4q54Y9c6EsRHM/rWayxcTqLqCxyZYt8tosp+hQvuZmKiYBwojjQUPk8u/o9QniHV6Nolb zKP1JR5Ww/X9OglYMOejbwPtoKwPDVRoM9Y3Crs4e5Dafqm0KV3g9IRUVxCPwfpm0IBs8QiGkx1 nFd4Dm3OQWq9JmHXzLt3n2MILpu3tCe+SYGxoJvuDqBZhSbALqztFEyAry6/RDKQPcO2EGUXEwL iy4nFUGFPD131rdxQCpyRmwrp+KLC/XJJ5+w5UiHr6mhioc6Al6anhC3PlZYCIXE8TiG7Lx4lxf DM5cnaarIguh80XubmHbR0+egF5uZYQCihEaWseTVIqsl6SLlfPAOo9M8f/WJmvGyWhubJln8Xu 3qfe8U/Z/96xZXzb1/CNAtbePAo6AHYT5E3KHVYVMG/BWO01JB7giSySsPNXsOrLejLk6FRhseo C8A0XWCcLdiJIY+efL6q1esDzQjjjda8eOfo23eCAn5ob/Rey8Z69joW0WGvyiJPtIm0if3V2nl CQk2s0EjVxU9AZfoniWNR4uNwxQLU3mbTQhaBWYyYMoU7Vsf+X3ZMC62bK6zZHBvkfsxiB53tCU wc3vioEaUqze14rlToLcyz7DrrBLi/meYrO5YrYh8GsanVIjHTlsUHhdqj1IveI8r7soQfR4fxQ 7HDMGyWBJvjIkQg== X-Developer-Key: i=tomi.valkeinen+renesas@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 From: Marek Vasut The Renesas DSC Display Stream Compression is a bridge embedded in the Renesas R-Car V4H SoC. The bridge is placed between DU and DSI1 units. The current dtsi file does not represent the DSC at all, and thus the pipeline for DSI1 has not been functional. Signed-off-by: Marek Vasut [tomi.valkeinen: separated the sparrowhawk changes] Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- arch/arm64/boot/dts/renesas/r8a779g0.dtsi | 31 +++++++++++++++++++++++++++= +++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/renesas/r8a779g0.dtsi b/arch/arm64/boot/dt= s/renesas/r8a779g0.dtsi index 82a7278836e5..52a6176f9fd0 100644 --- a/arch/arm64/boot/dts/renesas/r8a779g0.dtsi +++ b/arch/arm64/boot/dts/renesas/r8a779g0.dtsi @@ -2298,6 +2298,35 @@ du_out_dsi0: endpoint { port@1 { reg =3D <1>; du_out_dsi1: endpoint { + remote-endpoint =3D <&dsc_in_dsi1>; + }; + }; + }; + }; + + dsc: dsc@feb8d000 { + compatible =3D "renesas,r8a779g0-dsc"; + reg =3D <0 0xfeb8d000 0 0x400>; + interrupts =3D ; + clocks =3D <&cpg CPG_MOD 2819>; + power-domains =3D <&sysc R8A779G0_PD_ALWAYS_ON>; + resets =3D <&cpg 2819>; + status =3D "disabled"; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + dsc_in_dsi1: endpoint { + remote-endpoint =3D <&du_out_dsi1>; + }; + }; + + port@1 { + reg =3D <1>; + dsc_out_dsi1: endpoint { remote-endpoint =3D <&dsi1_in>; }; }; @@ -2534,7 +2563,7 @@ ports { port@0 { reg =3D <0>; dsi1_in: endpoint { - remote-endpoint =3D <&du_out_dsi1>; + remote-endpoint =3D <&dsc_out_dsi1>; }; }; =20 --=20 2.43.0 From nobody Fri Jun 12 11:39:12 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (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 41EB043D4E0; Fri, 15 May 2026 09:10:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836211; cv=none; b=ZEYRipbX0AlQCLEOfX4g7zQq9RCo7A7brdX6WJxW0N5PgqueLCN4xqtqj9fR69Ct8H3kJhgTT6XXZWCC590T5ESvDRr3VObd5kZao9nyprXZv7Y22esS6n0mqydCt25n3Gl70sCCRBEc1OSU3erJRIIF+ePHbNwFtkgiYC6qQbs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836211; c=relaxed/simple; bh=DWzkqIRHTRJjknXuzOwZzjBG6UpC2H2U3Eys36fgkuw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=bizdiSd4giblIK91ny+EBYlPNfwzpG5Yz80KYi/Fr7rEylPPyWfPQqlorVKSj1zYVrsdDQ8vX8uXSbFdq97hAybGeIyCSn776x7xUcVM514HOT3wEUvrQpK+FxsqTfJlmVHc0ixKMPjFB20BITup7GgNlx7/u4tRrwj3/O34wBs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=SJn3QliH; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="SJn3QliH" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 5E68F149B; Fri, 15 May 2026 11:09:55 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1778836196; bh=DWzkqIRHTRJjknXuzOwZzjBG6UpC2H2U3Eys36fgkuw=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=SJn3QliHDVG7fpTW6IRqUrfAcW/cldd6vO9J9XYgMUabJRkFyyRuTg9UDzH23EB+Y ESbxPsenT/gFa8xNMwaRM8p6U0Ra0foQKHymXO92PwIk7Lv7Q93CG+FK74W/yrMqrd KmyXZTgk9nmBDXfjGZjLhh+sj3bqqWcPrM/Vjq/4= From: Tomi Valkeinen Date: Fri, 15 May 2026 12:09:31 +0300 Subject: [PATCH v3 6/7] arm64: dts: renesas: sparrow-hawk: Enable DisplayPort by adding DSC 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: <20260515-rcar-du-dsc-v3-6-164157820498@ideasonboard.com> References: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> In-Reply-To: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> To: Geert Uytterhoeven , Michael Turquette , Stephen Boyd , 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 , Magnus Damm , Marek Vasut , Laurent Pinchart , Kieran Bingham , Philipp Zabel Cc: linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, Tomi Valkeinen X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1235; i=tomi.valkeinen+renesas@ideasonboard.com; h=from:subject:message-id; bh=ANA0pOGvbcFJPr/oOvpf6RijEfVZm+6cIfmd0bzB3rU=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqBuLixs99OiDBbPEBME7nzu5haOunCYoH1ekQl gzt6SydVyyJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCagbi4gAKCRD6PaqMvJYe 9ZpMD/9DlDWjvfmRl9pal1YS9gznGFBYEbhF0VK98Vh8FbWslthU/g0aAcXjV0886b8jBdgg5co 9DDr0IBIC24+xj0Nz1fpeGMGGT5NHZmuyibIN0zC/7amHJdoHI4ltG1k7/g1YwLfT8VVELoxleE TN9xSbpVldcxg8vDS/UXk4Lw7c7RfHCjxP1ATbK1FS1H13KJZWd1mUz1mKUuhgFFpsRHMZQ+/8V PoQp3m7WhUTrQwm1ap9WRme7S0/Oaoa+blW0sQaWN/tgDEV6JQbfP2WlYJ/4hp/9PyU8b+rtZK6 7vHttNcVy4P/42TldMwlRiMiqrAx1ojXl0LU0sD7aPlv6oRwOlLWajtHltWGXaWZWWO4S5MxPrt W8qdbe54gAw8tExtMmdFUiWs8B6RWofyVroObMziMFgKkwrgiAnRwlXqxfwHsgyyUh5uKI2Og7K NxjDYHvBfKmwgDQatnA7bzNhy67qk4o+XWbjbugVidpboJhLfHv+kTASevdxv/Zl6pQvKp3bpjB mFw9kVRf7i900eQFO4mIMY9gc2Dsmo+OXMi76cIq3tYjJrdQaRGZ4K+Y/naGztEzKsUXQvTglC2 J4InDyqhVJLoL9yTEXyJi7pBUgJOcQoWfVPMQlX+qAKksY9026r0r9K75IcHHjYuQ+UFKGz7NDp GJ9VtNliej134hg== X-Developer-Key: i=tomi.valkeinen+renesas@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 From: Marek Vasut DisplayPort on the Sparrow Hawk board uses sn65dsi86 bridge, which in turn gets the video stream from the SoC's DSI1 port. DSI1 pipeline has a DSC block in between the DU and the DSI1. However, there was no DSC driver in Linux and also the DSC was not defined in the dts files, and thus the DisplayPort output did not work. Now that we have DSC defined in the SoC dts file (r8a779g0.dtsi), we can enable DSC for sparrowhawk. Signed-off-by: Marek Vasut [tomi.valkeinen: separated the sparrow hawk changes from the soc changes] Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk.dts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk.dts b/arch/a= rm64/boot/dts/renesas/r8a779g3-sparrow-hawk.dts index 812b133cf29e..f418998c6b05 100644 --- a/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk.dts +++ b/arch/arm64/boot/dts/renesas/r8a779g3-sparrow-hawk.dts @@ -288,6 +288,11 @@ channel4 { }; }; =20 +/* Page 27 / DSI to Display */ +&dsc { + status =3D "okay"; +}; + /* Page 27 / DSI to Display */ &dsi1 { status =3D "okay"; --=20 2.43.0 From nobody Fri Jun 12 11:39:12 2026 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (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 81F1743DA22; Fri, 15 May 2026 09:10:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836212; cv=none; b=jdRnteCqk2drnqQJ5oyBR0oK3EAlhXs1gXljMAN/4hLtmBnpzEJd3Ijw1EQgdQBOKKMZ7DdlaqjDHeQNdsAopVuu9xdDpsXIn0LXV1mROp1lxAdMZ4STvoYd62GWQ7DVQbVT1ennl6c56bRgqqBgaVydjzHWEN14Cqamm7kzd/k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778836212; c=relaxed/simple; bh=sQ7dH7dQ/n7Rrc06bQe/1ItYvKBy46snwgvffXpYWQw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=XRG+v/auLFJAx0fcD3fca3X20svBGCRtTbzd2Co4myasvDfSjHIYPEEE1FMae0dyYFiuDsV+pcLWSuIpVr1tBRUJX4QycAesn5ziUHVX0FvcSLm8p8ElnUalCog7OCZ3DyBmPJKpIBF4WGJpjJykxJBPM2bojhPadCTyevUGjIs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=p0ryn/q/; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="p0ryn/q/" Received: from [127.0.1.1] (91-158-153-178.elisa-laajakaista.fi [91.158.153.178]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id E8BDC19EF; Fri, 15 May 2026 11:09:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1778836198; bh=sQ7dH7dQ/n7Rrc06bQe/1ItYvKBy46snwgvffXpYWQw=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=p0ryn/q/koHB4EiO3lUEZBGJiilxYg2Ju3pwaRJUOMw68YWtiDt9cVXiQ4C+H8Did nObo5oRehPB4FD7buNzVMzIStwCmCtx1JqMGya1UjIQSfojdL2vHklf8+OHu2AfCXR VQyD1FQRerLK9u+x0h3Mb3yV3DKMtaMeUm0fsTdg= From: Tomi Valkeinen Date: Fri, 15 May 2026 12:09:32 +0300 Subject: [PATCH v3 7/7] arm64: dts: renesas: white-hawk: Add second mini-DP output support 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: <20260515-rcar-du-dsc-v3-7-164157820498@ideasonboard.com> References: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> In-Reply-To: <20260515-rcar-du-dsc-v3-0-164157820498@ideasonboard.com> To: Geert Uytterhoeven , Michael Turquette , Stephen Boyd , 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 , Magnus Damm , Marek Vasut , Laurent Pinchart , Kieran Bingham , Philipp Zabel Cc: linux-renesas-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, Tomi Valkeinen X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2737; i=tomi.valkeinen+renesas@ideasonboard.com; h=from:subject:message-id; bh=C9rP9GABvcYb9jE1vUzXF6HhHnFgCbKipQ/Ea+SbMGY=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBqBuLiiTqP0RYYEkYtroljiEpni+J1CY4V6VoG8 JXMaS1cCKKJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCagbi4gAKCRD6PaqMvJYe 9SBaEACOaDZzTIQrGoWXa20lEGTRBsBiOPRk39I3W4jUj2vT/HXxsm754izvyNcLrExit01qCd+ 0Dyqc8bdMokPw+kZ9tgcrgpNygj0GhyCKOQUgWNEIoQz8B4C9R9xbf7ytyhZV7RsDDLWKMTgbGo UFFvlY215G98Woio/0cc31juMbD/c2QIgS393VE57YTCnhibSXTgNx2pRBxg0l5IWLlMZZ7T09j cTCUq4mbClqGEXyjT6pQkj1357ODLklbv7DJexilLJdhTllNuiFD4C041C8oOyGhacqlF2q3gvf RpfEbfdmRpNxeDEiH0kckpiEUhSEC0NdrGf4wlH79b7kMisNDFib44xrT8Ou6k8iR801Mfr3dK7 8fBfvQjSZjm7bRCIcNpR6eCMekjYtFcRhknWIT1MypuQnO7+1vH6eFEeypoQ+r5pwfiyIBqL6zK vZaIn+4BG3qZHKGbnvuQCgy3cWxZTs0ujKIFCqfnb9xqmJNXtt+I75atA9Xi1F8syp6wvPg9Vyy hWTl5euKDxQE1vbl8FY+U7parLfPJgfOJCDJG3wpSMa5g08p63E/w+QR8E2fejHGYwSv7qqgIOU sxrmtu+HcF/Rl64O2XqqStalOCKhN4QxLswKXuDaweH3EZTkwHHCYSDezJrc+JmgXVehZIqKYTG jLnzcMA7RbZc6rg== X-Developer-Key: i=tomi.valkeinen+renesas@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 From: Geert Uytterhoeven Add support for the mini-DisplayPort connector on the White Hawk BreakOut board. This port is driven by a TI SN65DSI86 DSI to eDP bridge, which in turn gets the pixel data from the second DSI channel on the R-Car V4H SoC. Note that this port is not present on the White Hawk Single development board. Signed-off-by: Geert Uytterhoeven [tomi.valkeinen: added status=3Dokay for dsc] Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- .../arm64/boot/dts/renesas/r8a779g0-white-hawk.dts | 94 ++++++++++++++++++= ++++ 1 file changed, 94 insertions(+) diff --git a/arch/arm64/boot/dts/renesas/r8a779g0-white-hawk.dts b/arch/arm= 64/boot/dts/renesas/r8a779g0-white-hawk.dts index 784d4e8b204c..89d60b83ac4f 100644 --- a/arch/arm64/boot/dts/renesas/r8a779g0-white-hawk.dts +++ b/arch/arm64/boot/dts/renesas/r8a779g0-white-hawk.dts @@ -12,4 +12,98 @@ / { model =3D "Renesas White Hawk CPU and Breakout boards based on r8a779g0"; compatible =3D "renesas,white-hawk-breakout", "renesas,white-hawk-cpu", "= renesas,r8a779g0"; + + sn65dsi86_refclk2: clk-x16 { + compatible =3D "fixed-clock"; + #clock-cells =3D <0>; + clock-frequency =3D <38400000>; + }; + + mini-dp-con2 { + compatible =3D "dp-connector"; + label =3D "CN15"; + type =3D "mini"; + + port { + mini_dp_con_in2: endpoint { + remote-endpoint =3D <&sn65dsi86_out2>; + }; + }; + }; +}; + +&dsc { + status =3D "okay"; +}; + +&dsi1 { + status =3D "okay"; + + ports { + port@1 { + dsi1_out: endpoint { + remote-endpoint =3D <&sn65dsi86_in2>; + data-lanes =3D <1 2 3 4>; + }; + }; + }; +}; + +&i2c4 { + pinctrl-0 =3D <&i2c4_pins>; + pinctrl-names =3D "default"; + + status =3D "okay"; + clock-frequency =3D <400000>; + + bridge@2c { + pinctrl-0 =3D <&irq1_pins>; + pinctrl-names =3D "default"; + + compatible =3D "ti,sn65dsi86"; + reg =3D <0x2c>; + + clocks =3D <&sn65dsi86_refclk2>; + clock-names =3D "refclk"; + + interrupts-extended =3D <&intc_ex 1 IRQ_TYPE_LEVEL_HIGH>; + + enable-gpios =3D <&gpio1 27 GPIO_ACTIVE_HIGH>; + + vccio-supply =3D <®_1p8v>; + vpll-supply =3D <®_1p8v>; + vcca-supply =3D <®_1p2v>; + vcc-supply =3D <®_1p2v>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + sn65dsi86_in2: endpoint { + remote-endpoint =3D <&dsi1_out>; + }; + }; + + port@1 { + reg =3D <1>; + sn65dsi86_out2: endpoint { + remote-endpoint =3D <&mini_dp_con_in2>; + }; + }; + }; + }; +}; + +&pfc { + i2c4_pins: i2c4 { + groups =3D "i2c4"; + function =3D "i2c4"; + }; + + irq1_pins: irq1 { + groups =3D "intc_ex_irq1_a"; + function =3D "intc_ex"; + }; }; --=20 2.43.0