linux-renesas-soc.vger.kernel.org archive mirror
 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>,
	<linux-usb@vger.kernel.org>, <devicetree@vger.kernel.org>,
	<linux-renesas-soc@vger.kernel.org>,
	"Chris Brandt" <chris.brandt@renesas.com>
Subject: [PATCH v3 09/15] usb: renesas_usbhs: add support for CNEN bit
Date: Tue, 14 May 2019 09:55:59 -0500	[thread overview]
Message-ID: <20190514145605.19112-10-chris.brandt@renesas.com> (raw)
In-Reply-To: <20190514145605.19112-1-chris.brandt@renesas.com>

For some SoC, CNEN must be set for USB Device mode operation.

Signed-off-by: Chris Brandt <chris.brandt@renesas.com>
---
v2:
 * options are now held in param
---
 drivers/usb/renesas_usbhs/common.c | 6 ++++++
 drivers/usb/renesas_usbhs/common.h | 1 +
 include/linux/usb/renesas_usbhs.h  | 1 +
 3 files changed, 8 insertions(+)

diff --git a/drivers/usb/renesas_usbhs/common.c b/drivers/usb/renesas_usbhs/common.c
index 1de7a44f3415..734fb4e542c5 100644
--- a/drivers/usb/renesas_usbhs/common.c
+++ b/drivers/usb/renesas_usbhs/common.c
@@ -114,6 +114,12 @@ void usbhs_sys_function_ctrl(struct usbhs_priv *priv, int enable)
 	u16 mask = DCFM | DRPD | DPRPU | HSE | USBE;
 	u16 val  = HSE | USBE;
 
+	/* CNEN bit is required for function operation */
+	if (usbhs_get_dparam(priv, has_cnen)) {
+		mask |= CNEN;
+		val  |= CNEN;
+	}
+
 	/*
 	 * if enable
 	 *
diff --git a/drivers/usb/renesas_usbhs/common.h b/drivers/usb/renesas_usbhs/common.h
index 1fbffb7bbc8f..de74ebd1a347 100644
--- a/drivers/usb/renesas_usbhs/common.h
+++ b/drivers/usb/renesas_usbhs/common.h
@@ -104,6 +104,7 @@ struct usbhs_priv;
 
 /* SYSCFG */
 #define SCKE	(1 << 10)	/* USB Module Clock Enable */
+#define CNEN	(1 << 8)	/* Single-ended receiver operation Enable */
 #define HSE	(1 << 7)	/* High-Speed Operation Enable */
 #define DCFM	(1 << 6)	/* Controller Function Select */
 #define DRPD	(1 << 5)	/* D+ Line/D- Line Resistance Control */
diff --git a/include/linux/usb/renesas_usbhs.h b/include/linux/usb/renesas_usbhs.h
index 17fae6e504cc..9097a38fcda8 100644
--- a/include/linux/usb/renesas_usbhs.h
+++ b/include/linux/usb/renesas_usbhs.h
@@ -190,6 +190,7 @@ struct renesas_usbhs_driver_param {
 	u32 has_sudmac:1; /* for SUDMAC */
 	u32 has_usb_dmac:1; /* for USB-DMAC */
 	u32 runtime_pwctrl:1;
+	u32 has_cnen:1;
 #define USBHS_USB_DMAC_XFER_SIZE	32	/* hardcode the xfer size */
 };
 
-- 
2.16.1


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

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-14 14:55 [PATCH v3 00/15] usb: Add host and device support for RZ/A2 Chris Brandt
2019-05-14 14:55 ` [PATCH v3 01/15] ARM: dts: r7s9210: Add USB clock Chris Brandt
2019-05-15  7:38   ` Geert Uytterhoeven
2019-05-15  7:52     ` Simon Horman
2019-05-14 14:55 ` [PATCH v3 02/15] ARM: dts: rza2mevb: Add 48MHz " Chris Brandt
2019-05-15  7:43   ` Geert Uytterhoeven
2019-05-15  7:53     ` Simon Horman
2019-05-14 14:55 ` [PATCH v3 03/15] phy: renesas: rcar-gen3-usb2: detect usb_x1 clock Chris Brandt
2019-05-15  7:32   ` Yoshihiro Shimoda
2019-05-15  8:02   ` Simon Horman
2019-05-15  8:30   ` Kuninori Morimoto
2019-05-14 14:55 ` [PATCH v3 04/15] dt-bindings: rcar-gen3-phy-usb2: Document use of usb_x1 Chris Brandt
2019-05-14 19:29   ` Rob Herring
2019-05-15  7:33   ` Yoshihiro Shimoda
2019-05-15  7:35   ` Geert Uytterhoeven
2019-05-15  8:39     ` Sergei Shtylyov
2019-05-15  9:03       ` Geert Uytterhoeven
2019-05-15  7:57   ` Simon Horman
2019-05-14 14:55 ` [PATCH v3 05/15] phy: renesas: rcar-gen3-usb2: Check dr_mode when not using OTG Chris Brandt
2019-05-15  7:34   ` Yoshihiro Shimoda
2019-05-15  8:01   ` Simon Horman
2019-05-14 14:55 ` [PATCH v3 06/15] dt-bindings: rcar-gen3-phy-usb2: Document dr_mode Chris Brandt
2019-05-14 19:29   ` Rob Herring
2019-05-15  7:36   ` Yoshihiro Shimoda
2019-05-15  7:56   ` Simon Horman
2019-05-14 14:55 ` [PATCH v3 07/15] dt-bindings: rcar-gen3-phy-usb2: Add r7s9210 support Chris Brandt
2019-05-14 19:30   ` Rob Herring
2019-05-15  7:37   ` Yoshihiro Shimoda
2019-05-15  7:56   ` Simon Horman
2019-05-14 14:55 ` [PATCH v3 08/15] usb: renesas_usbhs: move flags to param Chris Brandt
2019-05-15  7:45   ` Yoshihiro Shimoda
2019-05-15  7:55   ` Simon Horman
2019-05-14 14:55 ` Chris Brandt [this message]
2019-05-15  7:46   ` [PATCH v3 09/15] usb: renesas_usbhs: add support for CNEN bit Yoshihiro Shimoda
2019-05-15  7:55   ` Simon Horman
2019-05-14 14:56 ` [PATCH v3 10/15] usb: renesas_usbhs: support byte addressable CFIFO Chris Brandt
2019-05-15  7:48   ` Yoshihiro Shimoda
2019-05-15  7:57     ` Yoshihiro Shimoda
2019-05-15  8:05   ` Simon Horman
2019-05-14 14:56 ` [PATCH v3 11/15] usb: renesas_usbhs: Add support for RZ/A2 Chris Brandt
2019-05-15  7:52   ` Yoshihiro Shimoda
2019-05-15 13:09     ` Chris Brandt
2019-05-15  8:06   ` Simon Horman
2019-05-15  8:26   ` Kuninori Morimoto
2019-05-15 14:18     ` Chris Brandt
2019-05-14 14:56 ` [PATCH v3 12/15] dt-bindings: usb: renesas_usbhs: Add support for r7s9210 Chris Brandt
2019-05-14 19:30   ` Rob Herring
2019-05-15  7:53   ` Yoshihiro Shimoda
2019-05-15  8:00   ` Geert Uytterhoeven
2019-05-15 13:11     ` Chris Brandt
2019-05-15  8:07   ` Simon Horman
2019-05-14 14:56 ` [PATCH v3 13/15] ARM: dts: r7s9210: Add USB Host support Chris Brandt
2019-05-15  7:59   ` Geert Uytterhoeven
2019-05-15 13:38     ` Chris Brandt
2019-05-15  9:05   ` Geert Uytterhoeven
2019-05-14 14:56 ` [PATCH v3 14/15] ARM: dts: r7s9210: Add USB Device support Chris Brandt
2019-05-15  8:02   ` Geert Uytterhoeven
2019-05-14 14:56 ` [PATCH v3 15/15] ARM: dts: rza2mevb: Add USB host support Chris Brandt
2019-05-15  8:21   ` Geert Uytterhoeven
2019-05-15 14:03     ` Chris Brandt
2019-05-15 14:33       ` Geert Uytterhoeven
2019-05-15 14:54         ` Chris Brandt

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=20190514145605.19112-10-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=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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).