aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/usb/ehci_pdriver.h
diff options
context:
space:
mode:
authorSergei Shtylyov <sergei.shtylyov@cogentembedded.com>2013-06-02 01:33:56 +0400
committerSimon Horman <horms+renesas@verge.net.au>2013-06-11 16:10:45 +0900
commit743fcce0a89e04dc511b4ea40eba8e3f7cec92d4 (patch)
tree5063feeef309582fb3a0904834f732d25f39fcf6 /include/linux/usb/ehci_pdriver.h
parentARM: shmobile: Marzen: move USB EHCI, OHCI, and PHY devices to R8A7779 code (diff)
downloadlinux-dev-743fcce0a89e04dc511b4ea40eba8e3f7cec92d4.tar.xz
linux-dev-743fcce0a89e04dc511b4ea40eba8e3f7cec92d4.zip
ehci-platform: add pre_setup() method to platform data
Sometimes there is a need to initialize some non-standard registers mapped to the EHCI region before accessing the standard EHCI registers. Add pre_setup() method with 'struct usb_hcd *' parameter to be called just before ehci_setup() to the 'ehci-platform' driver's platform data for this purpose... While at it, add the missing incomplete declaration of 'struct platform_device' to <linux/usb/ehci_pdriver.h>... The patch has been tested on the Marzen and BOCK-W boards. Suggested-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'include/linux/usb/ehci_pdriver.h')
-rw-r--r--include/linux/usb/ehci_pdriver.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/usb/ehci_pdriver.h b/include/linux/usb/ehci_pdriver.h
index 99238b096f7e..7eb4dcd0d386 100644
--- a/include/linux/usb/ehci_pdriver.h
+++ b/include/linux/usb/ehci_pdriver.h
@@ -19,6 +19,9 @@
#ifndef __USB_CORE_EHCI_PDRIVER_H
#define __USB_CORE_EHCI_PDRIVER_H
+struct platform_device;
+struct usb_hcd;
+
/**
* struct usb_ehci_pdata - platform_data for generic ehci driver
*
@@ -50,6 +53,7 @@ struct usb_ehci_pdata {
/* Turn on only VBUS suspend power and hotplug detection,
* turn off everything else */
void (*power_suspend)(struct platform_device *pdev);
+ int (*pre_setup)(struct usb_hcd *hcd);
};
#endif /* __USB_CORE_EHCI_PDRIVER_H */