All of lore.kernel.org
 help / color / mirror / Atom feed
From: Minda Chen <minda.chen@starfivetech.com>
To: Marek Vasut <marex@denx.de>, Tom Rini <trini@konsulko.com>,
	Roger Quadros <rogerq@kernel.org>,
	Neil Armstrong <neil.armstrong@linaro.org>,
	Alexey Romanov <avromanov@salutedevices.com>,
	Sumit Garg <sumit.garg@linaro.org>,
	Mark Kettenis <kettenis@openbsd.org>, Nishanth Menon <nm@ti.com>,
	Rick Chen <rick@andestech.com>,
	Leo Yu-Chi Liang <ycliang@andestech.com>
Cc: u-boot@lists.denx.de, Heinrich Schuchardt <xypron.glpk@gmx.de>,
	Simon Glass <sjg@chromium.org>,
	Minda Chen <minda.chen@starfivetech.com>
Subject: [PATCH v1 1/7] usb: cdns3: Set USB PHY mode in cdns3_probe()
Date: Sat,  4 May 2024 23:03:52 +0800	[thread overview]
Message-ID: <20240504150358.19600-2-minda.chen@starfivetech.com> (raw)
In-Reply-To: <20240504150358.19600-1-minda.chen@starfivetech.com>

USB PHY maybe need to set PHY mode in different USB
dr mode. So translate to generic PHY mode and call
generic_phy_set_mode().

Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
---
 drivers/usb/cdns3/core.c | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/drivers/usb/cdns3/core.c b/drivers/usb/cdns3/core.c
index 12a741c6ea..c1a61471f9 100644
--- a/drivers/usb/cdns3/core.c
+++ b/drivers/usb/cdns3/core.c
@@ -321,6 +321,7 @@ static int cdns3_probe(struct cdns3 *cdns)
 {
 	struct udevice *dev = cdns->dev;
 	int ret;
+	int mode = PHY_MODE_INVALID;
 
 	cdns->xhci_regs = dev_remap_addr_name(dev, "xhci");
 	if (!cdns->xhci_regs)
@@ -372,6 +373,22 @@ static int cdns3_probe(struct cdns3 *cdns)
 	if (ret)
 		return ret;
 
+	if (cdns->dr_mode == USB_DR_MODE_HOST)
+		mode = PHY_MODE_USB_HOST;
+	else if (cdns->dr_mode == USB_DR_MODE_PERIPHERAL)
+		mode = PHY_MODE_USB_DEVICE;
+	else if (cdns->dr_mode == USB_DR_MODE_OTG)
+		mode = PHY_MODE_USB_OTG;
+
+	if (mode != PHY_MODE_INVALID) {
+		ret = generic_phy_set_mode(&cdns->usb2_phy, mode, 0);
+		if (ret)
+			return ret;
+		ret = generic_phy_set_mode(&cdns->usb3_phy, mode, 0);
+		if (ret)
+			return ret;
+	}
+
 	dev_dbg(dev, "Cadence USB3 core: probe succeed\n");
 
 	return 0;
-- 
2.17.1


  reply	other threads:[~2024-05-04 15:04 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-04 15:03 [PATCH v1 0/7] Add Starfive JH7110 Cadence USB driver Minda Chen
2024-05-04 15:03 ` Minda Chen [this message]
2024-05-08  1:27   ` [PATCH v1 1/7] usb: cdns3: Set USB PHY mode in cdns3_probe() Marek Vasut
2024-05-04 15:03 ` [PATCH v1 2/7] phy: starfive: Add Starfive JH7110 USB 2.0 PHY driver Minda Chen
2024-05-08  1:30   ` Marek Vasut
2024-05-04 15:03 ` [PATCH v1 3/7] phy: starfive: Add Starfive JH7110 PCIe " Minda Chen
2024-05-08  1:32   ` Marek Vasut
2024-05-04 15:03 ` [PATCH v1 4/7] usb: cdns: starfive: Add cdns USB driver Minda Chen
2024-05-08  1:35   ` Marek Vasut
2024-05-04 15:03 ` [PATCH v1 5/7] configs: starfive: Add visionfive2 cadence USB configuration Minda Chen
2024-05-04 15:03 ` [PATCH v1 6/7] dts: starfive: Add JH7110 Cadence USB dts node Minda Chen
2024-05-04 15:03 ` [PATCH v1 7/7] MAINTAINERS: Update Starfive visionfive2 maintain files Minda Chen
2024-05-08  1:36   ` Marek Vasut
2024-05-17  9:47     ` Minda Chen
2024-05-17 20:44       ` Marek Vasut
2024-05-20  5:06 ` [PATCH v1 0/7] Add Starfive JH7110 Cadence USB driver E Shattow
2024-05-20  6:20   ` Minda Chen
2024-06-20 11:08     ` E Shattow
2024-06-24  1:28       ` Minda Chen
2024-06-24  5:16         ` E Shattow
2024-06-24  5:38           ` Minda Chen

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=20240504150358.19600-2-minda.chen@starfivetech.com \
    --to=minda.chen@starfivetech.com \
    --cc=avromanov@salutedevices.com \
    --cc=kettenis@openbsd.org \
    --cc=marex@denx.de \
    --cc=neil.armstrong@linaro.org \
    --cc=nm@ti.com \
    --cc=rick@andestech.com \
    --cc=rogerq@kernel.org \
    --cc=sjg@chromium.org \
    --cc=sumit.garg@linaro.org \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    --cc=xypron.glpk@gmx.de \
    --cc=ycliang@andestech.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.