stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Quentin Schulz <quentin.schulz@theobroma-systems.com>,
	Quentin Schulz <foss+kernel@0leil.net>,
	Heiko Stuebner <heiko@sntech.de>, Sasha Levin <sashal@kernel.org>,
	robh+dt@kernel.org, jakob.unterwurzacher@theobroma-systems.com,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-rockchip@lists.infradead.org
Subject: [PATCH AUTOSEL 5.16 02/27] arm64: dts: rockchip: fix rk3399-puma-haikou USB OTG mode
Date: Wed,  9 Mar 2022 11:16:39 -0500	[thread overview]
Message-ID: <20220309161711.135679-2-sashal@kernel.org> (raw)
In-Reply-To: <20220309161711.135679-1-sashal@kernel.org>

From: Quentin Schulz <quentin.schulz@theobroma-systems.com>

[ Upstream commit ed2c66a95c0c5669880aa93d0d34c6e9694b4cbd ]

The micro USB3.0 port available on the Haikou evaluation kit for Puma
RK3399-Q7 SoM supports dual-role model (aka drd or OTG) but its support
was broken until now because of missing logic around the ID pin.

This adds proper support for USB OTG on Puma Haikou by "connecting" the
GPIO used for USB ID to the USB3 controller device.

Cc: Quentin Schulz <foss+kernel@0leil.net>
Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Link: https://lore.kernel.org/r/20220120125156.16217-1-quentin.schulz@theobroma-systems.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 .../arm64/boot/dts/rockchip/rk3399-puma-haikou.dts |  1 +
 arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi      | 14 ++++++++++++++
 2 files changed, 15 insertions(+)

diff --git a/arch/arm64/boot/dts/rockchip/rk3399-puma-haikou.dts b/arch/arm64/boot/dts/rockchip/rk3399-puma-haikou.dts
index 292bb7e80cf3..3ae5d727e367 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-puma-haikou.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3399-puma-haikou.dts
@@ -232,6 +232,7 @@ &usbdrd3_0 {
 
 &usbdrd_dwc3_0 {
 	dr_mode = "otg";
+	extcon = <&extcon_usb3>;
 	status = "okay";
 };
 
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi
index fb67db4619ea..002ece51c3ba 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi
@@ -25,6 +25,13 @@ module_led: led-0 {
 		};
 	};
 
+	extcon_usb3: extcon-usb3 {
+		compatible = "linux,extcon-usb-gpio";
+		id-gpio = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&usb3_id>;
+	};
+
 	clkin_gmac: external-gmac-clock {
 		compatible = "fixed-clock";
 		clock-frequency = <125000000>;
@@ -422,6 +429,13 @@ vcc5v0_host_en: vcc5v0-host-en {
 			  <4 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
 		};
 	};
+
+	usb3 {
+		usb3_id: usb3-id {
+			rockchip,pins =
+			  <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
+		};
+	};
 };
 
 &sdhci {
-- 
2.34.1


  reply	other threads:[~2022-03-09 16:23 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-09 16:16 [PATCH AUTOSEL 5.16 01/27] arm64: dts: rockchip: fix dma-controller node names on rk356x Sasha Levin
2022-03-09 16:16 ` Sasha Levin [this message]
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 03/27] xfrm: Check if_id in xfrm_migrate Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 04/27] xfrm: Fix xfrm migrate issues when address family changes Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 05/27] arm64: dts: rockchip: fix rk3399-puma eMMC HS400 signal integrity Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 06/27] arm64: dts: rockchip: align pl330 node name with dtschema Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 07/27] arm64: dts: rockchip: reorder rk3399 hdmi clocks Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 08/27] arm64: dts: agilex: use the compatible "intel,socfpga-agilex-hsotg" Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 09/27] ARM: dts: rockchip: reorder rk322x hmdi clocks Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 10/27] ARM: dts: rockchip: fix a typo on rk3288 crypto-controller Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 11/27] mac80211: refuse aggregations sessions before authorized Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 12/27] MIPS: smp: fill in sibling and core maps earlier Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 13/27] ARM: 9178/1: fix unmet dependency on BITREVERSE for HAVE_ARCH_BITREVERSE Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 14/27] Bluetooth: hci_core: Fix leaking sent_cmd skb Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 15/27] can: rcar_canfd: rcar_canfd_channel_probe(): register the CAN device when fully ready Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 16/27] net: sparx5: Add #include to remove warning Sasha Levin
2022-03-09 16:49   ` Jakub Kicinski
2022-03-16 14:45     ` Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 17/27] atm: firestream: check the return value of ioremap() in fs_init() Sasha Levin
2022-03-09 16:48   ` Jakub Kicinski
2022-03-16 14:49     ` Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 18/27] netfilter: egress: silence egress hook lockdep splats Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 19/27] Input: goodix - use the new soc_intel_is_byt() helper Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 20/27] Input: goodix - workaround Cherry Trail devices with a bogus ACPI Interrupt() resource Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 21/27] iwlwifi: don't advertise TWT support Sasha Levin
2022-03-09 16:16 ` [PATCH AUTOSEL 5.16 22/27] drm/vrr: Set VRR capable prop only if it is attached to connector Sasha Levin
2022-03-09 16:17 ` [PATCH AUTOSEL 5.16 23/27] nl80211: Update bss channel on channel switch for P2P_CLIENT Sasha Levin
2022-03-09 16:17 ` [PATCH AUTOSEL 5.16 24/27] tcp: make tcp_read_sock() more robust Sasha Levin
2022-03-09 16:17 ` [PATCH AUTOSEL 5.16 25/27] sfc: extend the locking on mcdi->seqno Sasha Levin
2022-03-09 16:17 ` [PATCH AUTOSEL 5.16 26/27] bnx2: Fix an error message Sasha Levin
2022-03-09 16:17 ` [PATCH AUTOSEL 5.16 27/27] kselftest/vm: fix tests build with old libc Sasha Levin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220309161711.135679-2-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=foss+kernel@0leil.net \
    --cc=heiko@sntech.de \
    --cc=jakob.unterwurzacher@theobroma-systems.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=quentin.schulz@theobroma-systems.com \
    --cc=robh+dt@kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).