Re: [PATCH] arm64: dts: qcom: qrb2210-arduino-imola: describe DSI / DP bridge

From: Loic Poulain

Date: Thu Feb 12 2026 - 03:34:07 EST


On Wed, Feb 11, 2026 at 10:28 AM Dmitry Baryshkov
<dmitry.baryshkov@xxxxxxxxxxxxxxxx> wrote:
>
> Aruino Uno-Q uses Analogix ANX7625 DSI-to-DP bridge to convert DSI
> signals to the connected USB-C DisplayPort dongles. Decribe the chip,
> USB-C connector and routing of USB and display signals.
>
> Co-developed-by: Martino Facchin <m.facchin@xxxxxxxxxx>
> Signed-off-by: Martino Facchin <m.facchin@xxxxxxxxxx>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxxxxxxxx>

Tested-by: Loic Poulain <loic.poulain@xxxxxxxxxxxxxxxx>


> ---
> Note, to function correctly this patch depends on several patch series,
> fixing the ANX7625 driver:
>
> - https://lore.kernel.org/r/20251218151307.95491-1-loic.poulain@xxxxxxxxxxxxxxxx/
> (part of 7.0-rc1)
>
> - https://lore.kernel.org/r/20260121-anx7625-typec-v2-0-d14f31256a17@xxxxxxxxxxxxxxxx/
> (part of drm-misc-next, to be landed in 7.1)
>
> - https://lore.kernel.org/r/20260211-anx7625-fix-pd-v1-1-1dd31451b06f@xxxxxxxxxxxxxxxx/
> (recently submitted, hopefully to land in 7.1)
> ---
> arch/arm64/boot/dts/qcom/qrb2210-arduino-imola.dts | 112 +++++++++++++++++++++
> 1 file changed, 112 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/qrb2210-arduino-imola.dts b/arch/arm64/boot/dts/qcom/qrb2210-arduino-imola.dts
> index 197ab6eb1666..ba3f0c74e814 100644
> --- a/arch/arm64/boot/dts/qcom/qrb2210-arduino-imola.dts
> +++ b/arch/arm64/boot/dts/qcom/qrb2210-arduino-imola.dts
> @@ -6,6 +6,7 @@
> /dts-v1/;
>
> #include <dt-bindings/leds/common.h>
> +#include <dt-bindings/usb/pd.h>
> #include "agatti.dtsi"
> #include "pm4125.dtsi"
>
> @@ -109,6 +110,16 @@ multi-led {
> leds = <&ledr>, <&ledg>, <&ledb>;
> };
>
> + vreg_anx_30: regulator-anx-30 {
> + /* ANX7625 VDD3 */
> + compatible = "regulator-fixed";
> + regulator-name = "anx30";
> + regulator-min-microvolt = <3000000>;
> + regulator-max-microvolt = <3000000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> /* PM4125 charger out, supplied by VBAT */
> vph_pwr: regulator-vph-pwr {
> compatible = "regulator-fixed";
> @@ -142,6 +153,83 @@ &i2c1 {
> clock-frequency = <100000>;
>
> status = "okay";
> +
> + anx7625: encoder@58 {
> + compatible = "analogix,anx7625";
> + reg = <0x58>;
> + interrupts-extended = <&tlmm 81 IRQ_TYPE_EDGE_FALLING>;
> + vdd10-supply = <&pm4125_l11>;
> + vdd18-supply = <&pm4125_l15>;
> + vdd33-supply = <&vreg_anx_30>;
> + analogix,audio-enable;
> + analogix,lane0-swing = /bits/ 8 <0x14 0x54 0x64 0x74>;
> + analogix,lane1-swing = /bits/ 8 <0x14 0x54 0x64 0x74>;
> +
> + pinctrl-0 = <&anx7625_int_pin>, <&anx7625_cable_det_pin>;
> +
> + connector {
> + compatible = "usb-c-connector";
> + power-role = "sink";
> + data-role = "dual";
> + try-power-role = "sink";
> +
> + pd-revision = /bits/ 8 <0x03 0x00 0x00 0x00>;
> + op-sink-microwatt = <15000000>;
> + sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)
> + PDO_VAR(5000, 20000, 3000)>;
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> + anx_hs_in: endpoint {
> + remote-endpoint = <&usb_dwc3_hs>;
> + };
> + };
> +
> + port@1 {
> + reg = <1>;
> + anx_ss_in: endpoint {
> + remote-endpoint = <&usb_qmpphy_out>;
> + };
> + };
> + };
> + };
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> + anx_dsi0_in: endpoint {
> + remote-endpoint = <&mdss_dsi0_out>;
> + data-lanes = <0 1 2 3>;
> + };
> + };
> + };
> + };
> +};
> +
> +&mdss {
> + status = "okay";
> +};
> +
> +&mdss_dsi0 {
> + vdda-supply = <&pm4125_l5>;
> +
> + status = "okay";
> +};
> +
> +&mdss_dsi0_out {
> + remote-endpoint = <&anx_dsi0_in>;
> + data-lanes = <0 1 2 3>;
> +};
> +
> +&mdss_dsi0_phy {
> + status = "okay";
> };
>
> &pm4125_vbus {
> @@ -361,6 +449,22 @@ key_vold_n: key-vold-n-state {
> output-disable;
> };
>
> + anx7625_cable_det_pin: anx7625-cable-det-pins-state {
> + pins = "gpio46";
> + function = "gpio";
> + drive-strength = <16>;
> + output-disable;
> + bias-pull-up;
> + };
> +
> + anx7625_int_pin: anx7625-int-pins-state {
> + pins = "gpio81";
> + function = "gpio";
> + drive-strength = <16>;
> + output-disable;
> + bias-pull-up;
> + };
> +
> key_volp_n: key-volp-n-state {
> pins = "gpio96";
> function = "gpio";
> @@ -428,6 +532,10 @@ &usb {
> status = "okay";
> };
>
> +&usb_dwc3_hs {
> + remote-endpoint = <&anx_hs_in>;
> +};
> +
> &usb_hsphy {
> vdd-supply = <&pm4125_l12>;
> vdda-pll-supply = <&pm4125_l13>;
> @@ -443,6 +551,10 @@ &usb_qmpphy {
> status = "okay";
> };
>
> +&usb_qmpphy_out {
> + remote-endpoint = <&anx_ss_in>;
> +};
> +
> &wifi {
> vdd-0.8-cx-mx-supply = <&pm4125_l7>;
> vdd-1.8-xo-supply = <&pm4125_l13>;
>
> ---
> base-commit: 9845cf73f7db6094c0d8419d6adb848028f4a921
> change-id: 20260211-uno-q-anx7625-26f8fa8360ca
>
> Best regards,
> --
> With best wishes
> Dmitry
>
>