All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/4] phy: rcar-gen3-usb2: add support for r8a77995
@ 2017-10-10  9:41 Yoshihiro Shimoda
  2017-10-10  9:41 ` [PATCH v5 1/4] phy: rcar-gen3-usb2: check dr_mode for otg mode Yoshihiro Shimoda
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Yoshihiro Shimoda @ 2017-10-10  9:41 UTC (permalink / raw)
  To: kishon, robh+dt, mark.rutland
  Cc: linux-kernel, devicetree, linux-renesas-soc, Yoshihiro Shimoda

This patch set is based on the latest phy.git / next branch
(the commit id = 415060b21f318e009d865b4bcbf8f220ebc36964)

After this patch set is applied, a usb 2.0 host node that is combined
with usb 2.0 peripheral needs 'dr_mode = "otg";' property.

Changes from v4:
 - Remove the role_show() modification in patch 2.
 - Remove a new function rcar_gen3_otg_change_role() in patch 2 because adding
   this will be complecated patch code and this is unnecessary for now.
 - Add a new function rcar_gen3_get_phy_mode() to get current phy mode
   for comparing the new mode into a line in patch 2.
 - Rebase patch 3.

Changes from v3:
 - Use enum phy_mode in patch 2.
 - Remove "can_role_swap" parameter and revise the commit log in patch 2
   because a case of "can_role_swap = true" and "has_otg = false" is
   not supported for role swap at the moment.
 - Changes the name of "has_otg" to "has_otg_pins" in patch 3.
 - Use of_device_get_match_data() instead of of_match_device()
 - Add "Reviewed-by:" into patch No.1, 2 and 4. (Simon-san, Thanks!)
  - Since patch No.3 is changed in big at v4, I dropped his "Reviewed-by".

Changes from v2:
 - Revise the commit log ("SoCs" is not third-person singular present).

Changes from v1:
 - Revise typo "wronly" to "wrongly".
 - Remove RCAR_GEN3_PHY_HAS_DEDICATED_PINS from generic gen3 entry in
   patch 3/4
 - Remove the driver change from patch 4/4.
 - Revise the commit log of patch 4/4.

Yoshihiro Shimoda (4):
  phy: rcar-gen3-usb2: check dr_mode for otg mode
  phy: rcar-gen3-usb2: use enum phy_mode in the role_store()
  phy: rcar-gen3-usb2: add SoC-specific parameter for dedicated pins
  phy: rcar-gen3-usb2: add binding for r8a77995

 .../devicetree/bindings/phy/rcar-gen3-phy-usb2.txt |  2 +
 drivers/phy/renesas/phy-rcar-gen3-usb2.c           | 70 ++++++++++++++--------
 2 files changed, 48 insertions(+), 24 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH v5 1/4] phy: rcar-gen3-usb2: check dr_mode for otg mode
  2017-10-10  9:41 [PATCH v5 0/4] phy: rcar-gen3-usb2: add support for r8a77995 Yoshihiro Shimoda
@ 2017-10-10  9:41 ` Yoshihiro Shimoda
  2017-10-10  9:41 ` [PATCH v5 2/4] phy: rcar-gen3-usb2: use enum phy_mode in the role_store() Yoshihiro Shimoda
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 10+ messages in thread
From: Yoshihiro Shimoda @ 2017-10-10  9:41 UTC (permalink / raw)
  To: kishon, robh+dt, mark.rutland
  Cc: linux-kernel, devicetree, linux-renesas-soc, Yoshihiro Shimoda

The previous code assumed a channel has otg capability if a channel
has interrupt property. But, it is not good because:
 - Battery charging feature also needs interrupt property.
 - Some R-Car Gen3 SoCs (e.g. R-Car D3) don't have OTG capability.

So, this patch checks whether usb 2.0 host node has dr_mode property or
not. If it has 'dr_mode = "otg";', this driver enables otg capability.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
---
 drivers/phy/renesas/phy-rcar-gen3-usb2.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/drivers/phy/renesas/phy-rcar-gen3-usb2.c b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
index 54c3429..e00e99a 100644
--- a/drivers/phy/renesas/phy-rcar-gen3-usb2.c
+++ b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
@@ -1,7 +1,7 @@
 /*
  * Renesas R-Car Gen3 for USB2.0 PHY driver
  *
- * Copyright (C) 2015 Renesas Electronics Corporation
+ * Copyright (C) 2015-2017 Renesas Electronics Corporation
  *
  * This is based on the phy-rcar-gen2 driver:
  * Copyright (C) 2014 Renesas Solutions Corp.
@@ -22,6 +22,7 @@
 #include <linux/platform_device.h>
 #include <linux/pm_runtime.h>
 #include <linux/regulator/consumer.h>
+#include <linux/usb/of.h>
 #include <linux/workqueue.h>
 
 /******* USB2.0 Host registers (original offset is +0x200) *******/
@@ -415,13 +416,16 @@ static int rcar_gen3_phy_usb2_probe(struct platform_device *pdev)
 	/* call request_irq for OTG */
 	irq = platform_get_irq(pdev, 0);
 	if (irq >= 0) {
-		int ret;
-
 		INIT_WORK(&channel->work, rcar_gen3_phy_usb2_work);
 		irq = devm_request_irq(dev, irq, rcar_gen3_phy_usb2_irq,
 				       IRQF_SHARED, dev_name(dev), channel);
 		if (irq < 0)
 			dev_err(dev, "No irq handler (%d)\n", irq);
+	}
+
+	if (of_usb_get_dr_mode_by_phy(dev->of_node, 0) == USB_DR_MODE_OTG) {
+		int ret;
+
 		channel->has_otg = true;
 		channel->extcon = devm_extcon_dev_allocate(dev,
 							rcar_gen3_phy_cable);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v5 2/4] phy: rcar-gen3-usb2: use enum phy_mode in the role_store()
  2017-10-10  9:41 [PATCH v5 0/4] phy: rcar-gen3-usb2: add support for r8a77995 Yoshihiro Shimoda
  2017-10-10  9:41 ` [PATCH v5 1/4] phy: rcar-gen3-usb2: check dr_mode for otg mode Yoshihiro Shimoda
@ 2017-10-10  9:41 ` Yoshihiro Shimoda
  2017-10-11  7:29   ` Simon Horman
  2017-10-11  8:27     ` Kishon Vijay Abraham I
  2017-10-10  9:41 ` [PATCH v5 3/4] phy: rcar-gen3-usb2: add SoC-specific parameter for dedicated pins Yoshihiro Shimoda
  2017-10-10  9:41 ` [PATCH v5 4/4] phy: rcar-gen3-usb2: add binding for r8a77995 Yoshihiro Shimoda
  3 siblings, 2 replies; 10+ messages in thread
From: Yoshihiro Shimoda @ 2017-10-10  9:41 UTC (permalink / raw)
  To: kishon, robh+dt, mark.rutland
  Cc: linux-kernel, devicetree, linux-renesas-soc, Yoshihiro Shimoda

This patch modifies the role_store() to use "enum phy_mode" instead
of the local "bool" for host/device mode selection.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
---
 drivers/phy/renesas/phy-rcar-gen3-usb2.c | 29 ++++++++++++++++++-----------
 1 file changed, 18 insertions(+), 11 deletions(-)

diff --git a/drivers/phy/renesas/phy-rcar-gen3-usb2.c b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
index e00e99a..7314b49 100644
--- a/drivers/phy/renesas/phy-rcar-gen3-usb2.c
+++ b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
@@ -219,33 +219,40 @@ static bool rcar_gen3_is_host(struct rcar_gen3_chan *ch)
 	return !(readl(ch->base + USB2_COMMCTRL) & USB2_COMMCTRL_OTG_PERI);
 }
 
+static enum phy_mode rcar_gen3_get_phy_mode(struct rcar_gen3_chan *ch)
+{
+	if (rcar_gen3_is_host(ch))
+		return PHY_MODE_USB_HOST;
+	else
+		return PHY_MODE_USB_DEVICE;
+}
+
 static ssize_t role_store(struct device *dev, struct device_attribute *attr,
 			  const char *buf, size_t count)
 {
 	struct rcar_gen3_chan *ch = dev_get_drvdata(dev);
-	bool is_b_device, is_host, new_mode_is_host;
+	bool is_b_device;
+	enum phy_mode cur_mode, new_mode;
 
 	if (!ch->has_otg || !ch->phy->init_count)
 		return -EIO;
 
-	/*
-	 * is_b_device: true is B-Device. false is A-Device.
-	 * If {new_mode_}is_host: true is Host mode. false is Peripheral mode.
-	 */
-	is_b_device = rcar_gen3_check_id(ch);
-	is_host = rcar_gen3_is_host(ch);
 	if (!strncmp(buf, "host", strlen("host")))
-		new_mode_is_host = true;
+		new_mode = PHY_MODE_USB_HOST;
 	else if (!strncmp(buf, "peripheral", strlen("peripheral")))
-		new_mode_is_host = false;
+		new_mode = PHY_MODE_USB_DEVICE;
 	else
 		return -EINVAL;
 
+	/* is_b_device: true is B-Device. false is A-Device. */
+	is_b_device = rcar_gen3_check_id(ch);
+	cur_mode = rcar_gen3_get_phy_mode(ch);
+
 	/* If current and new mode is the same, this returns the error */
-	if (is_host == new_mode_is_host)
+	if (cur_mode == new_mode)
 		return -EINVAL;
 
-	if (new_mode_is_host) {		/* And is_host must be false */
+	if (new_mode == PHY_MODE_USB_HOST) { /* And is_host must be false */
 		if (!is_b_device)	/* A-Peripheral */
 			rcar_gen3_init_from_a_peri_to_a_host(ch);
 		else			/* B-Peripheral */
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v5 3/4] phy: rcar-gen3-usb2: add SoC-specific parameter for dedicated pins
  2017-10-10  9:41 [PATCH v5 0/4] phy: rcar-gen3-usb2: add support for r8a77995 Yoshihiro Shimoda
  2017-10-10  9:41 ` [PATCH v5 1/4] phy: rcar-gen3-usb2: check dr_mode for otg mode Yoshihiro Shimoda
  2017-10-10  9:41 ` [PATCH v5 2/4] phy: rcar-gen3-usb2: use enum phy_mode in the role_store() Yoshihiro Shimoda
@ 2017-10-10  9:41 ` Yoshihiro Shimoda
  2017-10-10  9:41 ` [PATCH v5 4/4] phy: rcar-gen3-usb2: add binding for r8a77995 Yoshihiro Shimoda
  3 siblings, 0 replies; 10+ messages in thread
From: Yoshihiro Shimoda @ 2017-10-10  9:41 UTC (permalink / raw)
  To: kishon, robh+dt, mark.rutland
  Cc: linux-kernel, devicetree, linux-renesas-soc, Yoshihiro Shimoda

This patch adds SoC-specific parameter to avoid reading/writing
specific registers wrongly if this driver runs on a SoC which doesn't
have dedicated pins (e.g. R-Car D3). This patch also changes the
value "has_otg" to "has_otg_pins" for slightly easier reading of
the code.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
---
 drivers/phy/renesas/phy-rcar-gen3-usb2.c | 31 +++++++++++++++++++++----------
 1 file changed, 21 insertions(+), 10 deletions(-)

diff --git a/drivers/phy/renesas/phy-rcar-gen3-usb2.c b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
index 7314b49..eb9786e 100644
--- a/drivers/phy/renesas/phy-rcar-gen3-usb2.c
+++ b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
@@ -18,6 +18,7 @@
 #include <linux/module.h>
 #include <linux/of.h>
 #include <linux/of_address.h>
+#include <linux/of_device.h>
 #include <linux/phy/phy.h>
 #include <linux/platform_device.h>
 #include <linux/pm_runtime.h>
@@ -80,6 +81,8 @@
 #define USB2_ADPCTRL_IDPULLUP		BIT(5)	/* 1 = ID sampling is enabled */
 #define USB2_ADPCTRL_DRVVBUS		BIT(4)
 
+#define RCAR_GEN3_PHY_HAS_DEDICATED_PINS	1
+
 struct rcar_gen3_chan {
 	void __iomem *base;
 	struct extcon_dev *extcon;
@@ -87,7 +90,7 @@ struct rcar_gen3_chan {
 	struct regulator *vbus;
 	struct work_struct work;
 	bool extcon_host;
-	bool has_otg;
+	bool has_otg_pins;
 };
 
 static void rcar_gen3_phy_usb2_work(struct work_struct *work)
@@ -234,7 +237,7 @@ static ssize_t role_store(struct device *dev, struct device_attribute *attr,
 	bool is_b_device;
 	enum phy_mode cur_mode, new_mode;
 
-	if (!ch->has_otg || !ch->phy->init_count)
+	if (!ch->has_otg_pins || !ch->phy->init_count)
 		return -EIO;
 
 	if (!strncmp(buf, "host", strlen("host")))
@@ -272,7 +275,7 @@ static ssize_t role_show(struct device *dev, struct device_attribute *attr,
 {
 	struct rcar_gen3_chan *ch = dev_get_drvdata(dev);
 
-	if (!ch->has_otg || !ch->phy->init_count)
+	if (!ch->has_otg_pins || !ch->phy->init_count)
 		return -EIO;
 
 	return sprintf(buf, "%s\n", rcar_gen3_is_host(ch) ? "host" :
@@ -311,7 +314,7 @@ static int rcar_gen3_phy_usb2_init(struct phy *p)
 	writel(USB2_OC_TIMSET_INIT, usb2_base + USB2_OC_TIMSET);
 
 	/* Initialize otg part */
-	if (channel->has_otg)
+	if (channel->has_otg_pins)
 		rcar_gen3_init_otg(channel);
 
 	return 0;
@@ -385,9 +388,17 @@ static irqreturn_t rcar_gen3_phy_usb2_irq(int irq, void *_ch)
 }
 
 static const struct of_device_id rcar_gen3_phy_usb2_match_table[] = {
-	{ .compatible = "renesas,usb2-phy-r8a7795" },
-	{ .compatible = "renesas,usb2-phy-r8a7796" },
-	{ .compatible = "renesas,rcar-gen3-usb2-phy" },
+	{
+		.compatible = "renesas,usb2-phy-r8a7795",
+		.data = (void *)RCAR_GEN3_PHY_HAS_DEDICATED_PINS,
+	},
+	{
+		.compatible = "renesas,usb2-phy-r8a7796",
+		.data = (void *)RCAR_GEN3_PHY_HAS_DEDICATED_PINS,
+	},
+	{
+		.compatible = "renesas,rcar-gen3-usb2-phy",
+	},
 	{ }
 };
 MODULE_DEVICE_TABLE(of, rcar_gen3_phy_usb2_match_table);
@@ -433,7 +444,7 @@ static int rcar_gen3_phy_usb2_probe(struct platform_device *pdev)
 	if (of_usb_get_dr_mode_by_phy(dev->of_node, 0) == USB_DR_MODE_OTG) {
 		int ret;
 
-		channel->has_otg = true;
+		channel->has_otg_pins = (uintptr_t)of_device_get_match_data(dev);
 		channel->extcon = devm_extcon_dev_allocate(dev,
 							rcar_gen3_phy_cable);
 		if (IS_ERR(channel->extcon))
@@ -475,7 +486,7 @@ static int rcar_gen3_phy_usb2_probe(struct platform_device *pdev)
 		dev_err(dev, "Failed to register PHY provider\n");
 		ret = PTR_ERR(provider);
 		goto error;
-	} else if (channel->has_otg) {
+	} else if (channel->has_otg_pins) {
 		int ret;
 
 		ret = device_create_file(dev, &dev_attr_role);
@@ -495,7 +506,7 @@ static int rcar_gen3_phy_usb2_remove(struct platform_device *pdev)
 {
 	struct rcar_gen3_chan *channel = platform_get_drvdata(pdev);
 
-	if (channel->has_otg)
+	if (channel->has_otg_pins)
 		device_remove_file(&pdev->dev, &dev_attr_role);
 
 	pm_runtime_disable(&pdev->dev);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v5 4/4] phy: rcar-gen3-usb2: add binding for r8a77995
  2017-10-10  9:41 [PATCH v5 0/4] phy: rcar-gen3-usb2: add support for r8a77995 Yoshihiro Shimoda
                   ` (2 preceding siblings ...)
  2017-10-10  9:41 ` [PATCH v5 3/4] phy: rcar-gen3-usb2: add SoC-specific parameter for dedicated pins Yoshihiro Shimoda
@ 2017-10-10  9:41 ` Yoshihiro Shimoda
  3 siblings, 0 replies; 10+ messages in thread
From: Yoshihiro Shimoda @ 2017-10-10  9:41 UTC (permalink / raw)
  To: kishon, robh+dt, mark.rutland
  Cc: linux-kernel, devicetree, linux-renesas-soc, Yoshihiro Shimoda

This patch adds binding for r8a77995 (R-Car D3). Since r8a77995 doesn't
have dedicated pins (ID, VBUS), this will match against the generic
fallback on R-Car D3.

For now, this driver doesn't support usb role swap for r8a77995.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
---
 Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb2.txt | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb2.txt b/Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb2.txt
index ace9cce..99b651b 100644
--- a/Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb2.txt
+++ b/Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb2.txt
@@ -8,6 +8,8 @@ Required properties:
 	      SoC.
 	      "renesas,usb2-phy-r8a7796" if the device is a part of an R8A7796
 	      SoC.
+	      "renesas,usb2-phy-r8a77995" if the device is a part of an
+	      R8A77995 SoC.
 	      "renesas,rcar-gen3-usb2-phy" for a generic R-Car Gen3 compatible device.
 
 	      When compatible with the generic version, nodes must list the
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH v5 2/4] phy: rcar-gen3-usb2: use enum phy_mode in the role_store()
  2017-10-10  9:41 ` [PATCH v5 2/4] phy: rcar-gen3-usb2: use enum phy_mode in the role_store() Yoshihiro Shimoda
@ 2017-10-11  7:29   ` Simon Horman
  2017-10-11  8:27     ` Kishon Vijay Abraham I
  1 sibling, 0 replies; 10+ messages in thread
From: Simon Horman @ 2017-10-11  7:29 UTC (permalink / raw)
  To: Yoshihiro Shimoda
  Cc: kishon, robh+dt, mark.rutland, linux-kernel, devicetree,
	linux-renesas-soc

On Tue, Oct 10, 2017 at 06:41:28PM +0900, Yoshihiro Shimoda wrote:
> This patch modifies the role_store() to use "enum phy_mode" instead
> of the local "bool" for host/device mode selection.
> 
> Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>

Thanks for the updates, this looks nice to me.

Reviewed-by: Simon Horman <horms+renesas@verge.net.au>

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v5 2/4] phy: rcar-gen3-usb2: use enum phy_mode in the role_store()
  2017-10-10  9:41 ` [PATCH v5 2/4] phy: rcar-gen3-usb2: use enum phy_mode in the role_store() Yoshihiro Shimoda
@ 2017-10-11  8:27     ` Kishon Vijay Abraham I
  2017-10-11  8:27     ` Kishon Vijay Abraham I
  1 sibling, 0 replies; 10+ messages in thread
From: Kishon Vijay Abraham I @ 2017-10-11  8:27 UTC (permalink / raw)
  To: Yoshihiro Shimoda, robh+dt, mark.rutland
  Cc: linux-kernel, devicetree, linux-renesas-soc

Hi,

On Tuesday 10 October 2017 03:11 PM, Yoshihiro Shimoda wrote:
> This patch modifies the role_store() to use "enum phy_mode" instead
> of the local "bool" for host/device mode selection.

looks good except for one minor comment..
> 
> Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> ---
>  drivers/phy/renesas/phy-rcar-gen3-usb2.c | 29 ++++++++++++++++++-----------
>  1 file changed, 18 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/phy/renesas/phy-rcar-gen3-usb2.c b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> index e00e99a..7314b49 100644
> --- a/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> +++ b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> @@ -219,33 +219,40 @@ static bool rcar_gen3_is_host(struct rcar_gen3_chan *ch)
>  	return !(readl(ch->base + USB2_COMMCTRL) & USB2_COMMCTRL_OTG_PERI);
>  }
>  
> +static enum phy_mode rcar_gen3_get_phy_mode(struct rcar_gen3_chan *ch)
> +{
> +	if (rcar_gen3_is_host(ch))
> +		return PHY_MODE_USB_HOST;
> +	else

the else here is not required.

Thanks
Kishon

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v5 2/4] phy: rcar-gen3-usb2: use enum phy_mode in the role_store()
@ 2017-10-11  8:27     ` Kishon Vijay Abraham I
  0 siblings, 0 replies; 10+ messages in thread
From: Kishon Vijay Abraham I @ 2017-10-11  8:27 UTC (permalink / raw)
  To: Yoshihiro Shimoda, robh+dt, mark.rutland
  Cc: linux-kernel, devicetree, linux-renesas-soc

Hi,

On Tuesday 10 October 2017 03:11 PM, Yoshihiro Shimoda wrote:
> This patch modifies the role_store() to use "enum phy_mode" instead
> of the local "bool" for host/device mode selection.

looks good except for one minor comment..
> 
> Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> ---
>  drivers/phy/renesas/phy-rcar-gen3-usb2.c | 29 ++++++++++++++++++-----------
>  1 file changed, 18 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/phy/renesas/phy-rcar-gen3-usb2.c b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> index e00e99a..7314b49 100644
> --- a/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> +++ b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> @@ -219,33 +219,40 @@ static bool rcar_gen3_is_host(struct rcar_gen3_chan *ch)
>  	return !(readl(ch->base + USB2_COMMCTRL) & USB2_COMMCTRL_OTG_PERI);
>  }
>  
> +static enum phy_mode rcar_gen3_get_phy_mode(struct rcar_gen3_chan *ch)
> +{
> +	if (rcar_gen3_is_host(ch))
> +		return PHY_MODE_USB_HOST;
> +	else

the else here is not required.

Thanks
Kishon

^ permalink raw reply	[flat|nested] 10+ messages in thread

* RE: [PATCH v5 2/4] phy: rcar-gen3-usb2: use enum phy_mode in the role_store()
  2017-10-11  8:27     ` Kishon Vijay Abraham I
@ 2017-10-12 10:47       ` Yoshihiro Shimoda
  -1 siblings, 0 replies; 10+ messages in thread
From: Yoshihiro Shimoda @ 2017-10-12 10:47 UTC (permalink / raw)
  To: Kishon Vijay Abraham I, robh+dt, mark.rutland
  Cc: linux-kernel, devicetree, linux-renesas-soc

Hi,

> From: Kishon Vijay Abraham I [mailto:kishon@ti.com], Sent: Wednesday, October 11, 2017 5:28 PM
> 
> Hi,
> 
> On Tuesday 10 October 2017 03:11 PM, Yoshihiro Shimoda wrote:
> > This patch modifies the role_store() to use "enum phy_mode" instead
> > of the local "bool" for host/device mode selection.
> 
> looks good except for one minor comment..

Thank you for your review!

> > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> > ---
> >  drivers/phy/renesas/phy-rcar-gen3-usb2.c | 29 ++++++++++++++++++-----------
> >  1 file changed, 18 insertions(+), 11 deletions(-)
> >
> > diff --git a/drivers/phy/renesas/phy-rcar-gen3-usb2.c b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> > index e00e99a..7314b49 100644
> > --- a/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> > +++ b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> > @@ -219,33 +219,40 @@ static bool rcar_gen3_is_host(struct rcar_gen3_chan *ch)
> >  	return !(readl(ch->base + USB2_COMMCTRL) & USB2_COMMCTRL_OTG_PERI);
> >  }
> >
> > +static enum phy_mode rcar_gen3_get_phy_mode(struct rcar_gen3_chan *ch)
> > +{
> > +	if (rcar_gen3_is_host(ch))
> > +		return PHY_MODE_USB_HOST;
> > +	else
> 
> the else here is not required.

I got it. I sent v6 patch set a few hour ago.

Best regards,
Yoshihiro Shimoda

> Thanks
> Kishon

^ permalink raw reply	[flat|nested] 10+ messages in thread

* RE: [PATCH v5 2/4] phy: rcar-gen3-usb2: use enum phy_mode in the role_store()
@ 2017-10-12 10:47       ` Yoshihiro Shimoda
  0 siblings, 0 replies; 10+ messages in thread
From: Yoshihiro Shimoda @ 2017-10-12 10:47 UTC (permalink / raw)
  To: Kishon Vijay Abraham I, robh+dt, mark.rutland
  Cc: linux-kernel, devicetree, linux-renesas-soc

Hi,

> From: Kishon Vijay Abraham I [mailto:kishon@ti.com], Sent: Wednesday, October 11, 2017 5:28 PM
> 
> Hi,
> 
> On Tuesday 10 October 2017 03:11 PM, Yoshihiro Shimoda wrote:
> > This patch modifies the role_store() to use "enum phy_mode" instead
> > of the local "bool" for host/device mode selection.
> 
> looks good except for one minor comment..

Thank you for your review!

> > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> > ---
> >  drivers/phy/renesas/phy-rcar-gen3-usb2.c | 29 ++++++++++++++++++-----------
> >  1 file changed, 18 insertions(+), 11 deletions(-)
> >
> > diff --git a/drivers/phy/renesas/phy-rcar-gen3-usb2.c b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> > index e00e99a..7314b49 100644
> > --- a/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> > +++ b/drivers/phy/renesas/phy-rcar-gen3-usb2.c
> > @@ -219,33 +219,40 @@ static bool rcar_gen3_is_host(struct rcar_gen3_chan *ch)
> >  	return !(readl(ch->base + USB2_COMMCTRL) & USB2_COMMCTRL_OTG_PERI);
> >  }
> >
> > +static enum phy_mode rcar_gen3_get_phy_mode(struct rcar_gen3_chan *ch)
> > +{
> > +	if (rcar_gen3_is_host(ch))
> > +		return PHY_MODE_USB_HOST;
> > +	else
> 
> the else here is not required.

I got it. I sent v6 patch set a few hour ago.

Best regards,
Yoshihiro Shimoda

> Thanks
> Kishon

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2017-10-12 10:47 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-10  9:41 [PATCH v5 0/4] phy: rcar-gen3-usb2: add support for r8a77995 Yoshihiro Shimoda
2017-10-10  9:41 ` [PATCH v5 1/4] phy: rcar-gen3-usb2: check dr_mode for otg mode Yoshihiro Shimoda
2017-10-10  9:41 ` [PATCH v5 2/4] phy: rcar-gen3-usb2: use enum phy_mode in the role_store() Yoshihiro Shimoda
2017-10-11  7:29   ` Simon Horman
2017-10-11  8:27   ` Kishon Vijay Abraham I
2017-10-11  8:27     ` Kishon Vijay Abraham I
2017-10-12 10:47     ` Yoshihiro Shimoda
2017-10-12 10:47       ` Yoshihiro Shimoda
2017-10-10  9:41 ` [PATCH v5 3/4] phy: rcar-gen3-usb2: add SoC-specific parameter for dedicated pins Yoshihiro Shimoda
2017-10-10  9:41 ` [PATCH v5 4/4] phy: rcar-gen3-usb2: add binding for r8a77995 Yoshihiro Shimoda

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.