summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorHu hui <b29976@freescale.com>2010-11-08 10:31:45 +0800
committerHu Hui <b29976@freescale.com>2010-11-08 15:14:50 +0800
commit5f0340c5984b7b2548db2bfd9abcc3189ec724a8 (patch)
tree9425ab885db9731f4cecc8eab8a67ed4e854d3c9 /include
parent59adb2eaaa68a5820cb2d12c2bbd0cbc054a9629 (diff)
ENGR00133478-2 IMX USB:move clk_enable from irq context to thread context
Driver Part move the usb clk_enable from irq context to a kernel thread context, so that the voltage can be changed in clk_enable function. Signed-off-by: Hu Hui <b29976@freescale.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/fsl_devices.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/include/linux/fsl_devices.h b/include/linux/fsl_devices.h
index d1455407d4e5..e683083ee9cb 100644
--- a/include/linux/fsl_devices.h
+++ b/include/linux/fsl_devices.h
@@ -73,7 +73,6 @@ struct fsl_usb2_platform_data {
enum fsl_usb2_operating_modes operating_mode;
enum fsl_usb2_phy_modes phy_mode;
unsigned int port_enables;
-
char *name; /* pretty print */
int (*platform_init) (struct platform_device *);
void (*platform_uninit) (struct fsl_usb2_platform_data *);
@@ -93,6 +92,7 @@ struct fsl_usb2_platform_data {
void (*wake_up_enable)(struct fsl_usb2_platform_data *pdata, bool on);
void (*phy_lowpower_suspend)(bool);
void (*platform_driver_vbus)(bool on); /* platform special function for vbus shutdown/open */
+ bool (*is_wakeup_event)(void);
unsigned big_endian_mmio:1;
unsigned big_endian_desc:1;
unsigned es:1; /* need USBMODE:ES */
@@ -102,6 +102,9 @@ struct fsl_usb2_platform_data {
unsigned ahb_burst_mode:3;
unsigned suspended:1;
unsigned already_suspended:1;
+ unsigned lowpower:1;
+ unsigned irq_delay:1;
+ unsigned wakeup_event:1;
u32 id_gpio;
/* register save area for suspend/resume */
@@ -120,6 +123,13 @@ struct fsl_usb2_platform_data {
#define FSL_USB2_PORT0_ENABLED 0x00000001
#define FSL_USB2_PORT1_ENABLED 0x00000002
+struct fsl_usb2_wakeup_platform_data {
+ char *name;
+ void (*usb_clock_for_pm) (bool);
+ struct fsl_usb2_platform_data *usb_pdata[3];
+};
+
+
struct spi_device;
struct fsl_spi_platform_data {