layerscape: add patches-5.4
[openwrt/staging/wigyori.git] / target / linux / layerscape / patches-5.4 / 820-usb-0001-MLK-11340-26-usb-phy-add-notify-suspend-and-resume-c.patch
diff --git a/target/linux/layerscape/patches-5.4/820-usb-0001-MLK-11340-26-usb-phy-add-notify-suspend-and-resume-c.patch b/target/linux/layerscape/patches-5.4/820-usb-0001-MLK-11340-26-usb-phy-add-notify-suspend-and-resume-c.patch
new file mode 100644 (file)
index 0000000..5057a2a
--- /dev/null
@@ -0,0 +1,53 @@
+From 7306c576fd8463f915192e68b7d0b93a24d43c9e Mon Sep 17 00:00:00 2001
+From: Peter Chen <peter.chen@freescale.com>
+Date: Mon, 16 Sep 2013 16:31:24 +0800
+Subject: [PATCH] MLK-11340-26 usb: phy: add notify suspend and resume callback
+
+They are used to notify PHY that the controller enters suspend
+or finishes resume.
+
+Signed-off-by: Peter Chen <peter.chen@freescale.com>
+---
+ include/linux/usb/phy.h | 24 ++++++++++++++++++++++++
+ 1 file changed, 24 insertions(+)
+
+--- a/include/linux/usb/phy.h
++++ b/include/linux/usb/phy.h
+@@ -155,6 +155,12 @@ struct usb_phy {
+        * manually detect the charger type.
+        */
+       enum usb_charger_type (*charger_detect)(struct usb_phy *x);
++
++      int     (*notify_suspend)(struct usb_phy *x,
++                      enum usb_device_speed speed);
++      int     (*notify_resume)(struct usb_phy *x,
++                      enum usb_device_speed speed);
++
+ };
+ /* for board-specific init logic */
+@@ -333,6 +339,24 @@ usb_phy_notify_disconnect(struct usb_phy
+       else
+               return 0;
+ }
++
++static inline int usb_phy_notify_suspend
++      (struct usb_phy *x, enum usb_device_speed speed)
++{
++      if (x && x->notify_suspend)
++              return x->notify_suspend(x, speed);
++      else
++              return 0;
++}
++
++static inline int usb_phy_notify_resume
++      (struct usb_phy *x, enum usb_device_speed speed)
++{
++      if (x && x->notify_resume)
++              return x->notify_resume(x, speed);
++      else
++              return 0;
++}
+ /* notifiers */
+ static inline int