summaryrefslogtreecommitdiffstats
path: root/drivers/usb/renesas_usbhs
diff options
context:
space:
mode:
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>2011-10-11 07:06:35 +0200
committerFelipe Balbi <balbi@ti.com>2011-10-13 19:41:48 +0200
commita9be4a45627c0eaa5f3f16987243530f4df6b514 (patch)
tree024bece3289100284db928cc4f53cbaefa511685 /drivers/usb/renesas_usbhs
parentusb: gadget: renesas_usbhs: support otg pin control (diff)
downloadlinux-a9be4a45627c0eaa5f3f16987243530f4df6b514.tar.xz
linux-a9be4a45627c0eaa5f3f16987243530f4df6b514.zip
usb: gadget: renesas_usbhs: make sure SOF packet sending-out control
It is enabled to set SOF packet output bit when USBRST bit was set. And USBRST bit should be set 0 when SOF packet was output. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/renesas_usbhs')
-rw-r--r--drivers/usb/renesas_usbhs/common.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/usb/renesas_usbhs/common.c b/drivers/usb/renesas_usbhs/common.c
index 1161d78e1665..895eb44a1a51 100644
--- a/drivers/usb/renesas_usbhs/common.c
+++ b/drivers/usb/renesas_usbhs/common.c
@@ -181,6 +181,13 @@ void usbhs_usbreq_set_val(struct usbhs_priv *priv, struct usb_ctrlrequest *req)
*/
void usbhs_bus_send_sof_enable(struct usbhs_priv *priv)
{
+ u16 status = usbhs_read(priv, DVSTCTR) & (USBRST | UACT);
+
+ if (status != USBRST) {
+ struct device *dev = usbhs_priv_to_dev(priv);
+ dev_err(dev, "usbhs should be reset\n");
+ }
+
usbhs_bset(priv, DVSTCTR, (USBRST | UACT), UACT);
}