Commit d4fac9c1 authored by Hugo Villeneuve's avatar Hugo Villeneuve Committed by Shawn Guo

arm64: dts: imx8mn-var-som-symphony: update USB OTG for new board versions

USB OTG is currently not working for new versions of the Variscite
Symphony EVK and imx8mn nano SOM (versions >= 1.4a).

The PTN5150 circuitry on newer versions of the Symphony EVK board has
a non-standard configuration in which the PTN5150 IRQ pin is left
unconnected, and the PTN5150 ID pin is connected to GPIO1_IO11. This
requires changes to the ptn5150 driver to support this new mode.
Variscite have indicated their intention to submit those changes
upstream.

In the meantime, import device tree changes from linux-5.15 branch of
varigit repos to at least make the USB OTG port operate correctly in
host mode.
Signed-off-by: default avatarHugo Villeneuve <hvilleneuve@dimonoff.com>
Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
parent 8d58f4d2
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
* Supports Symphony evaluation board versions >= 1.4a.
*
* Copyright 2019-2020 Variscite Ltd.
* Copyright (C) 2020 Krzysztof Kozlowski <krzk@kernel.org>
*/
/dts-v1/;
#include <dt-bindings/usb/pd.h>
#include "imx8mn-var-som.dtsi"
/ {
......@@ -100,14 +103,26 @@ enet-sel-hog {
};
};
/*
* For Symphony board version <= 1.4, the PTN5150 IRQ pin is connected
* to GPIO1_IO11 on the SoM (R106 present, R132 absent). From Symphony
* board version >= 1.4a, the PTN5150 ID pin is connected to GPIO1_IO11
* on the SoM (R106 absent, R132 present).
*/
extcon_usbotg1: typec@3d {
compatible = "nxp,ptn5150";
reg = <0x3d>;
interrupt-parent = <&gpio1>;
interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ptn5150>;
status = "okay";
port {
typec1_dr_sw: endpoint {
remote-endpoint = <&usb1_drd_sw>;
};
};
};
};
......@@ -148,8 +163,21 @@ &uart3 {
};
&usbotg1 {
dr_mode = "otg";
hnp-disable;
srp-disable;
adp-disable;
usb-role-switch;
disable-over-current;
extcon = <&extcon_usbotg1>, <&extcon_usbotg1>;
samsung,picophy-pre-emp-curr-control = <3>;
samsung,picophy-dc-vol-level-adjust = <7>;
status = "okay";
port {
usb1_drd_sw: endpoint {
remote-endpoint = <&typec1_dr_sw>;
};
};
};
&iomuxc {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment