From patchwork Sun Aug 22 04:13:33 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sungbo Eo X-Patchwork-Id: 501644 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BE853C4320A for ; Sun, 22 Aug 2021 04:14:31 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A71EF61130 for ; Sun, 22 Aug 2021 04:14:31 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230238AbhHVEPJ (ORCPT ); Sun, 22 Aug 2021 00:15:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54324 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230254AbhHVEPJ (ORCPT ); Sun, 22 Aug 2021 00:15:09 -0400 Received: from mout-p-102.mailbox.org (mout-p-102.mailbox.org [IPv6:2001:67c:2050::465:102]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 07229C061575; Sat, 21 Aug 2021 21:14:29 -0700 (PDT) Received: from smtp1.mailbox.org (smtp1.mailbox.org [IPv6:2001:67c:2050:105:465:1:1:0]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-p-102.mailbox.org (Postfix) with ESMTPS id 4GshpV61kKzQjym; Sun, 22 Aug 2021 06:14:26 +0200 (CEST) X-Virus-Scanned: amavisd-new at heinlein-support.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gorani.run; s=MBO0001; t=1629605661; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+31EPRPMGVEy2Xpxt+EjtmwliDHXxQYcaVfkvS007Qw=; b=DxVAmhKTlqpkCYhwvRNC1T6FD3PfK/WNroEzQ8y17kyNsyLQGvW0kRBU2JuqDJCGO9Ym1l CTVyFArt3SkbDYkqpT6kh1TL+ucYNezRyURc9Zjaukrc3mn6kT2LgcvFOk2kaE2iMm50tb LsoJuIQmWKWcnWAESytJ8sWwFpP49eOMTyW3/EQ42NBIlrN7SGgnkgd7MvwxHI0XEOkY67 4rEK1OgKDDXRjtf13wCFHMknU0OBGSBbpidX6+2dWocaarKsKDjxXFboCmUlseM/FeybbR hV/4bfnFlsmehk0qRFhjmnjYe01a+gxbDxziiSCeI6CfEBgLv0ksKEuH8Ojrew== Received: from smtp1.mailbox.org ([80.241.60.240]) by spamfilter04.heinlein-hosting.de (spamfilter04.heinlein-hosting.de [80.241.56.122]) (amavisd-new, port 10030) with ESMTP id bGQP5vXKQSRq; Sun, 22 Aug 2021 06:14:19 +0200 (CEST) From: Sungbo Eo To: linux-mediatek@lists.infradead.org Cc: Chunfeng Yun , Greg Kroah-Hartman , Rob Herring , Matthias Brugger , Min Guo , Frank Wunderlich , devicetree@vger.kernel.org, linux-usb@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Sungbo Eo Subject: [PATCH v3 1/1] arm: dts: mt7623: add musb device nodes Date: Sun, 22 Aug 2021 13:13:33 +0900 Message-Id: <20210822041333.5264-2-mans0n@gorani.run> In-Reply-To: <20210822041333.5264-1-mans0n@gorani.run> References: <20210808123840.176738-1-mans0n@gorani.run> <20210822041333.5264-1-mans0n@gorani.run> MIME-Version: 1.0 X-Rspamd-Queue-Id: E13A81887 X-Rspamd-UID: 89d88d Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org MT7623 has an musb controller that is compatible with the one from MT2701. Signed-off-by: Sungbo Eo --- v3: * remove unnecessary status=okay from u2port2 v2: * rename usb3 label to usb0 * move usb0 & u2phy1 nodes to the right sorted place * disable u2phy1 by default * correct u2port2 node name to match its reg address --- arch/arm/boot/dts/mt7623.dtsi | 33 +++++++++++++++++++++++++++++++++ arch/arm/boot/dts/mt7623a.dtsi | 4 ++++ 2 files changed, 37 insertions(+) diff --git a/arch/arm/boot/dts/mt7623.dtsi b/arch/arm/boot/dts/mt7623.dtsi index 3c11f7cfcc40..21c8a291b74e 100644 --- a/arch/arm/boot/dts/mt7623.dtsi +++ b/arch/arm/boot/dts/mt7623.dtsi @@ -585,6 +585,39 @@ spi2: spi@11017000 { status = "disabled"; }; + usb0: usb@11200000 { + compatible = "mediatek,mt7623-musb", + "mediatek,mtk-musb"; + reg = <0 0x11200000 0 0x1000>; + interrupts = ; + interrupt-names = "mc"; + phys = <&u2port2 PHY_TYPE_USB2>; + dr_mode = "otg"; + clocks = <&pericfg CLK_PERI_USB0>, + <&pericfg CLK_PERI_USB0_MCU>, + <&pericfg CLK_PERI_USB_SLV>; + clock-names = "main","mcu","univpll"; + power-domains = <&scpsys MT2701_POWER_DOMAIN_IFR_MSC>; + status = "disabled"; + }; + + u2phy1: t-phy@11210000 { + compatible = "mediatek,mt7623-tphy", + "mediatek,generic-tphy-v1"; + reg = <0 0x11210000 0 0x0800>; + #address-cells = <2>; + #size-cells = <2>; + ranges; + status = "disabled"; + + u2port2: usb-phy@11210800 { + reg = <0 0x11210800 0 0x0100>; + clocks = <&topckgen CLK_TOP_USB_PHY48M>; + clock-names = "ref"; + #phy-cells = <1>; + }; + }; + audsys: clock-controller@11220000 { compatible = "mediatek,mt7623-audsys", "mediatek,mt2701-audsys", diff --git a/arch/arm/boot/dts/mt7623a.dtsi b/arch/arm/boot/dts/mt7623a.dtsi index 0735a1fb8ad9..d304b62d24b5 100644 --- a/arch/arm/boot/dts/mt7623a.dtsi +++ b/arch/arm/boot/dts/mt7623a.dtsi @@ -35,6 +35,10 @@ &scpsys { clock-names = "ethif"; }; +&usb0 { + power-domains = <&scpsys MT7623A_POWER_DOMAIN_IFR_MSC>; +}; + &usb1 { power-domains = <&scpsys MT7623A_POWER_DOMAIN_HIF>; }; From patchwork Mon Aug 30 15:59:03 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sungbo Eo X-Patchwork-Id: 504414 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER, INCLUDES_PATCH, MAILING_LIST_MULTI, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EFC59C432BE for ; Mon, 30 Aug 2021 15:59:45 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id CF52360F56 for ; Mon, 30 Aug 2021 15:59:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237823AbhH3QAi (ORCPT ); Mon, 30 Aug 2021 12:00:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41960 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237670AbhH3QAh (ORCPT ); Mon, 30 Aug 2021 12:00:37 -0400 Received: from mout-p-103.mailbox.org (mout-p-103.mailbox.org [IPv6:2001:67c:2050::465:103]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E55D6C061575; Mon, 30 Aug 2021 08:59:43 -0700 (PDT) Received: from smtp202.mailbox.org (smtp202.mailbox.org [80.241.60.245]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-p-103.mailbox.org (Postfix) with ESMTPS id 4Gyw4Y5kDJzQk9P; Mon, 30 Aug 2021 17:59:41 +0200 (CEST) Received: from spamfilter01.heinlein-hosting.de (spamfilter01.heinlein-hosting.de [80.241.56.115]) by smtp202.mailbox.org (Postfix) with ESMTP id F3A63269; Mon, 30 Aug 2021 17:59:39 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gorani.run; s=MBO0001; t=1630339180; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=0KOqLxkiU+/8SIHhRrGil0tG6FLiytivUw+Y1vwHD7E=; b=Gx0oCk8l4/W2f09nVNR9rXnw9orFN5ykWxLr4+r/VuC3gsYxFVW0dZMn0cTPWdlFm/ylZr smZzyl21ueq2poPRv+pSoEEgSNO3Fqyy3tR4Rzcxd9MJF06qVCLWM6c/6JcgawNKbG+WDw vQApaMaIw69dICXeU2lhXkWS4Ho6UlcXd0/oklcIULUWyHguvUWAOPIya/tjbN6o8phfG9 C2N+IpXA7Vkgp8ebXemZDSoJYVyIyim0INMu31C0xZKqcJMT/BSxbvrc0JQcVRuXlAHS03 MhnExy6izNbHxGCLW9Eq7dEQbNL/ZHAucb3Zpmr0kYxPMe070dGgyVqCsJgrFg== X-Virus-Scanned: amavisd-new at heinlein-support.de Received: from smtp202.mailbox.org ([80.241.60.245]) by spamfilter01.heinlein-hosting.de (spamfilter01.heinlein-hosting.de [80.241.56.115]) (amavisd-new, port 10030) with ESMTP id FmJvOHpQ8Wcw; Mon, 30 Aug 2021 17:59:39 +0200 (CEST) Received: from ms-v3.lan (unknown [211.58.59.88]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp202.mailbox.org (Postfix) with ESMTPSA id 794D926A; Mon, 30 Aug 2021 17:59:35 +0200 (CEST) From: Sungbo Eo To: linux-mediatek@lists.infradead.org Cc: Rob Herring , Matthias Brugger , Bin Liu , Greg Kroah-Hartman , Frank Wunderlich , devicetree@vger.kernel.org, linux-usb@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Sungbo Eo Subject: [PATCH v4 2/2] usb: musb: mediatek: Expose role-switch control to userspace Date: Tue, 31 Aug 2021 00:59:03 +0900 Message-Id: <20210830155903.13907-3-mans0n@gorani.run> In-Reply-To: <20210830155903.13907-1-mans0n@gorani.run> References: <20210822041333.5264-1-mans0n@gorani.run> <20210830155903.13907-1-mans0n@gorani.run> MIME-Version: 1.0 X-Rspamd-Queue-Id: F3A63269 X-Rspamd-UID: bb2745 Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org The allow_userspace_control flag enables manual role-switch from userspace. Turn this feature on like several other USB DRD controller drivers. Signed-off-by: Sungbo Eo Tested-by: Frank Wunderlich Acked-by: Chunfeng Yun --- drivers/usb/musb/mediatek.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/usb/musb/mediatek.c b/drivers/usb/musb/mediatek.c index 6b92d037d8fc..f5d97eb84cb5 100644 --- a/drivers/usb/musb/mediatek.c +++ b/drivers/usb/musb/mediatek.c @@ -185,6 +185,7 @@ static int mtk_otg_switch_init(struct mtk_glue *glue) role_sx_desc.set = musb_usb_role_sx_set; role_sx_desc.get = musb_usb_role_sx_get; + role_sx_desc.allow_userspace_control = true; role_sx_desc.fwnode = dev_fwnode(glue->dev); role_sx_desc.driver_data = glue; glue->role_sw = usb_role_switch_register(glue->dev, &role_sx_desc);