All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Brandt <chris.brandt@renesas.com>
To: Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Simon Horman <horms@verge.net.au>,
	Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>,
	Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>,
	Chunfeng Yun <chunfeng.yun@mediatek.com>,
	Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>,
	linux-usb@vger.kernel.org, devicetree@vger.kernel.org,
	linux-renesas-soc@vger.kernel.org, Chris
Subject: [PATCH v4 03/13] phy: renesas: rcar-gen3-usb2: Check dr_mode when not using OTG
Date: Wed, 15 May 2019 10:20:38 -0500	[thread overview]
Message-ID: <20190515152048.42363-4-chris.brandt@renesas.com> (raw)
In-Reply-To: <20190515152048.42363-1-chris.brandt@renesas.com>

When not using OTG, the PHY will need to know if it should function as
host or peripheral by checking dr_mode in the PHY node (not the parent
controller node).

Signed-off-by: Chris Brandt <chris.brandt@renesas.com>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
---
v4:
 * added reviewed-by
v3:
 * changed 'if' to 'switch'
 * use rcar_gen3_set_host_mode() instead of writel()
v2:
 * added braces to else statement
 * check if dr_mode is "host"
---
 drivers/phy/renesas/phy-rcar-gen3-usb2.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/drivers/phy/renesas/phy-rcar-gen3-usb2.c b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
index 06e0fc804226..29da9c46ad9b 100644
--- a/drivers/phy/renesas/phy-rcar-gen3-usb2.c
+++ b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
@@ -412,6 +412,18 @@ static int rcar_gen3_phy_usb2_init(struct phy *p)
 		if (rcar_gen3_needs_init_otg(channel))
 			rcar_gen3_init_otg(channel);
 		rphy->otg_initialized = true;
+	} else {
+		/* Not OTG, so dr_mode should be set in PHY node */
+		switch (usb_get_dr_mode(channel->dev)) {
+		case USB_DR_MODE_HOST:
+			rcar_gen3_set_host_mode(channel, 1);
+			break;
+		case USB_DR_MODE_PERIPHERAL:
+			rcar_gen3_set_host_mode(channel, 0);
+			break;
+		default:
+			break;
+		}
 	}
 
 	rphy->initialized = true;
-- 
2.16.1

WARNING: multiple messages have this Message-ID (diff)
From: Chris Brandt <chris.brandt@renesas.com>
To: Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Simon Horman <horms@verge.net.au>,
	Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>,
	Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>,
	Chunfeng Yun <chunfeng.yun@mediatek.com>,
	Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>,
	<linux-usb@vger.kernel.org>, <devicetree@vger.kernel.org>,
	<linux-renesas-soc@vger.kernel.org>,
	"Chris Brandt" <chris.brandt@renesas.com>
Subject: [PATCH v4 03/13] phy: renesas: rcar-gen3-usb2: Check dr_mode when not using OTG
Date: Wed, 15 May 2019 10:20:38 -0500	[thread overview]
Message-ID: <20190515152048.42363-4-chris.brandt@renesas.com> (raw)
In-Reply-To: <20190515152048.42363-1-chris.brandt@renesas.com>

When not using OTG, the PHY will need to know if it should function as
host or peripheral by checking dr_mode in the PHY node (not the parent
controller node).

Signed-off-by: Chris Brandt <chris.brandt@renesas.com>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
---
v4:
 * added reviewed-by
v3:
 * changed 'if' to 'switch'
 * use rcar_gen3_set_host_mode() instead of writel()
v2:
 * added braces to else statement
 * check if dr_mode is "host"
---
 drivers/phy/renesas/phy-rcar-gen3-usb2.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/drivers/phy/renesas/phy-rcar-gen3-usb2.c b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
index 06e0fc804226..29da9c46ad9b 100644
--- a/drivers/phy/renesas/phy-rcar-gen3-usb2.c
+++ b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
@@ -412,6 +412,18 @@ static int rcar_gen3_phy_usb2_init(struct phy *p)
 		if (rcar_gen3_needs_init_otg(channel))
 			rcar_gen3_init_otg(channel);
 		rphy->otg_initialized = true;
+	} else {
+		/* Not OTG, so dr_mode should be set in PHY node */
+		switch (usb_get_dr_mode(channel->dev)) {
+		case USB_DR_MODE_HOST:
+			rcar_gen3_set_host_mode(channel, 1);
+			break;
+		case USB_DR_MODE_PERIPHERAL:
+			rcar_gen3_set_host_mode(channel, 0);
+			break;
+		default:
+			break;
+		}
 	}
 
 	rphy->initialized = true;
-- 
2.16.1


  parent reply	other threads:[~2019-05-15 15:20 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-15 15:20 [PATCH v4 00/13] usb: Add host and device support for RZ/A2 Chris Brandt
2019-05-15 15:20 ` Chris Brandt
2019-05-15 15:20 ` [PATCH v4 01/13] phy: renesas: rcar-gen3-usb2: detect usb_x1 clock Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-15 15:20 ` [PATCH v4 02/13] dt-bindings: rcar-gen3-phy-usb2: Document use of usb_x1 Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-15 15:20 ` Chris Brandt [this message]
2019-05-15 15:20   ` [PATCH v4 03/13] phy: renesas: rcar-gen3-usb2: Check dr_mode when not using OTG Chris Brandt
2019-05-15 15:20 ` [PATCH v4 04/13] dt-bindings: rcar-gen3-phy-usb2: Document dr_mode Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-15 15:20 ` [PATCH v4 05/13] dt-bindings: rcar-gen3-phy-usb2: Add r7s9210 support Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-15 15:20 ` [PATCH v4 06/13] usb: renesas_usbhs: move flags to param Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-15 15:20 ` [PATCH v4 07/13] usb: renesas_usbhs: add support for CNEN bit Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-15 15:20 ` [PATCH v4 08/13] usb: renesas_usbhs: support byte addressable CFIFO Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-15 15:20 ` [PATCH v4 09/13] usb: renesas_usbhs: Add support for RZ/A2 Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-15 15:20 ` [PATCH v4 10/13] dt-bindings: usb: renesas_usbhs: Add support for r7s9210 Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-15 15:20 ` [PATCH v4 11/13] ARM: dts: r7s9210: Add USB Host support Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-20 11:42   ` Simon Horman
2019-05-15 15:20 ` [PATCH v4 12/13] ARM: dts: r7s9210: Add USB Device support Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-20 11:43   ` Simon Horman
2019-05-15 15:20 ` [PATCH v4 13/13] ARM: dts: rza2mevb: Add USB Host support Chris Brandt
2019-05-15 15:20   ` Chris Brandt
2019-05-20 11:43   ` Simon Horman

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=20190515152048.42363-4-chris.brandt@renesas.com \
    --to=chris.brandt@renesas.com \
    --cc=chunfeng.yun@mediatek.com \
    --cc=devicetree@vger.kernel.org \
    --cc=geert@linux-m68k.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=horms@verge.net.au \
    --cc=kuninori.morimoto.gx@renesas.com \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=robh+dt@kernel.org \
    --cc=sergei.shtylyov@cogentembedded.com \
    --cc=yoshihiro.shimoda.uh@renesas.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.