From patchwork Fri Jul 21 09:59:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Minda Chen X-Patchwork-Id: 123771 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:9010:0:b0:3e4:2afc:c1 with SMTP id l16csp114145vqg; Fri, 21 Jul 2023 03:45:40 -0700 (PDT) X-Google-Smtp-Source: APBJJlHVrEtj1Yvhq57v2Ob+bl5RI7lE9eMWS2IEPZGnS/UxY8vE5gZqJe38IZW10a4iijO22Zxm X-Received: by 2002:a05:6358:89d:b0:134:c37f:4b5c with SMTP id m29-20020a056358089d00b00134c37f4b5cmr1875181rwj.22.1689936340283; Fri, 21 Jul 2023 03:45:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689936340; cv=none; d=google.com; s=arc-20160816; b=BcHVocycNjrvqulDDD6/8SQC1LN45sHZM2cIMnRAVXakaeJwZlfS5dW3kQGGr8h7UL hcIlWw1GznzHs+l0pZi7+mxtyPPpS9GpNO0VHlURtdjOdU2m341KHzvNQHcVUqLtMk6m hpC7gOkqWw0RB771i/z/yHh05woX9MH1Sd/4vsreAp5+TMn3f8TplyVR517HmlDH1MpY 8swBgGgHSKG1G+n7eKMGmWe3QhSje7v1lBFRP9jozS2Qf+r7sZiwsecCKSznwZz98NP5 D4YZncxsZaYBtLWG6h52rdI7c/MgiZdI2x6r/csgtJ1a8sVYqwLPucKEiV+JClbt8tIt gq5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:subject:cc:to:from; bh=Q1E+qG/I5LqG/QR10OhDt5LssPoETA+6yM89kE5HJ/c=; fh=NY3KO6EpQNeCr4ZUTXdyAgVNSryAu5SvNRLP+HbVado=; b=Gka/pMvh1cyuGsQGJzQ14JwE9WZmIvIqo4zTd4puooZ9TGS1JMmomvG4IqCZQsVK24 dy1e9gzkekb04uqJZzCZsxunvijtQpm2zOTXDUSg3bhN6N5iT/JjRkaWhfuFysOvt6HX 4Wpz50tp1IAjF0sLvD1swdovJxGYGsHReg7RtrxFbCQxXXOUgxhkxGMhYJHHMZKO6FQy bP+rUIJ9vX+2tV9Md64JRYLq55vqfzBHcwhpGPVwUgU2wrCvd6z//Og4XCz8QopmNIBw 37EhasLAg2+/9wtc/DxWwd4J5n7DCjXI3PTC/NKzSy+mCwYcGXGZEUVVO8ZJA5Gkp3Sa gJrw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j190-20020a638bc7000000b0055c86b98ea3si1518314pge.372.2023.07.21.03.45.26; Fri, 21 Jul 2023 03:45:40 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229820AbjGUJ7l (ORCPT + 99 others); Fri, 21 Jul 2023 05:59:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41808 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231158AbjGUJ7i (ORCPT ); Fri, 21 Jul 2023 05:59:38 -0400 Received: from ex01.ufhost.com (ex01.ufhost.com [61.152.239.75]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1133B30D4; Fri, 21 Jul 2023 02:59:28 -0700 (PDT) Received: from EXMBX165.cuchost.com (unknown [175.102.18.54]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "EXMBX165", Issuer "EXMBX165" (not verified)) by ex01.ufhost.com (Postfix) with ESMTP id 80D8924E28E; Fri, 21 Jul 2023 17:59:26 +0800 (CST) Received: from EXMBX171.cuchost.com (172.16.6.91) by EXMBX165.cuchost.com (172.16.6.75) with Microsoft SMTP Server (TLS) id 15.0.1497.42; Fri, 21 Jul 2023 17:59:26 +0800 Received: from ubuntu.localdomain (113.72.147.86) by EXMBX171.cuchost.com (172.16.6.91) with Microsoft SMTP Server (TLS) id 15.0.1497.42; Fri, 21 Jul 2023 17:59:25 +0800 From: Minda Chen To: Pawel Laszczak , Greg Kroah-Hartman , Peter Chen , "Roger Quadros" CC: , , Minda Chen Subject: [PATCH v1] usb: cdns3: Add PHY mode switch to usb2 PHY Date: Fri, 21 Jul 2023 17:59:23 +0800 Message-ID: <20230721095923.20445-1-minda.chen@starfivetech.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 X-Originating-IP: [113.72.147.86] X-ClientProxiedBy: EXCAS062.cuchost.com (172.16.6.22) To EXMBX171.cuchost.com (172.16.6.91) X-YovoleRuleAgent: yovoleflag X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1772026687850423974 X-GMAIL-MSGID: 1772026687850423974 cdns3 just set PHY mode switch for USB3.0 PHY. If USB 2.0 PHY contains PHY mode switch setting, USB 2.0 PHY mode function can't be called. So add PHY mode switch function for USB 2.0 PHY. Signed-off-by: Minda Chen Reviewed-by: Roger Quadros --- drivers/usb/cdns3/drd.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/usb/cdns3/drd.c b/drivers/usb/cdns3/drd.c index d00ff98dffab..04b6d12f2b9a 100644 --- a/drivers/usb/cdns3/drd.c +++ b/drivers/usb/cdns3/drd.c @@ -196,6 +196,7 @@ int cdns_drd_host_on(struct cdns *cdns) if (ret) dev_err(cdns->dev, "timeout waiting for xhci_ready\n"); + phy_set_mode(cdns->usb2_phy, PHY_MODE_USB_HOST); phy_set_mode(cdns->usb3_phy, PHY_MODE_USB_HOST); return ret; } @@ -216,6 +217,7 @@ void cdns_drd_host_off(struct cdns *cdns) readl_poll_timeout_atomic(&cdns->otg_regs->state, val, !(val & OTGSTATE_HOST_STATE_MASK), 1, 2000000); + phy_set_mode(cdns->usb2_phy, PHY_MODE_INVALID); phy_set_mode(cdns->usb3_phy, PHY_MODE_INVALID); } @@ -248,6 +250,7 @@ int cdns_drd_gadget_on(struct cdns *cdns) return ret; } + phy_set_mode(cdns->usb2_phy, PHY_MODE_USB_DEVICE); phy_set_mode(cdns->usb3_phy, PHY_MODE_USB_DEVICE); return 0; } @@ -273,6 +276,7 @@ void cdns_drd_gadget_off(struct cdns *cdns) readl_poll_timeout_atomic(&cdns->otg_regs->state, val, !(val & OTGSTATE_DEV_STATE_MASK), 1, 2000000); + phy_set_mode(cdns->usb2_phy, PHY_MODE_INVALID); phy_set_mode(cdns->usb3_phy, PHY_MODE_INVALID); } EXPORT_SYMBOL_GPL(cdns_drd_gadget_off);