summaryrefslogtreecommitdiff
path: root/arch/arm/plat-samsung/include/plat/usb-control.h
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2010-03-02 23:40:15 +0000
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-03-02 23:40:15 +0000
commit882d01f96bc1909455696aae6eb7ce4df3e908c8 (patch)
tree06e5789cb33d0547c2497fd4d0327dc9e8614d37 /arch/arm/plat-samsung/include/plat/usb-control.h
parent64ed28a87a0c075e91c1c5b0fe7d225a6cc6ae39 (diff)
parentd608c738bb8fb37e5fbfcdef9c566764f2fea086 (diff)
downloadlwn-882d01f96bc1909455696aae6eb7ce4df3e908c8.tar.gz
lwn-882d01f96bc1909455696aae6eb7ce4df3e908c8.zip
Merge branch 'for-rmk/samsung5' of git://git.fluff.org/bjdooks/linux into devel-stable
Conflicts: arch/arm/Kconfig arch/arm/Makefile
Diffstat (limited to 'arch/arm/plat-samsung/include/plat/usb-control.h')
-rw-r--r--arch/arm/plat-samsung/include/plat/usb-control.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/arch/arm/plat-samsung/include/plat/usb-control.h b/arch/arm/plat-samsung/include/plat/usb-control.h
new file mode 100644
index 000000000000..7fa1fbefc3f2
--- /dev/null
+++ b/arch/arm/plat-samsung/include/plat/usb-control.h
@@ -0,0 +1,43 @@
+/* arch/arm/plat-samsung/include/plat/usb-control.h
+ *
+ * Copyright (c) 2004 Simtec Electronics
+ * Ben Dooks <ben@simtec.co.uk>
+ *
+ * S3C - USB host port information
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+*/
+
+#ifndef __ASM_ARCH_USBCONTROL_H
+#define __ASM_ARCH_USBCONTROL_H
+
+#define S3C_HCDFLG_USED (1)
+
+struct s3c2410_hcd_port {
+ unsigned char flags;
+ unsigned char power;
+ unsigned char oc_status;
+ unsigned char oc_changed;
+};
+
+struct s3c2410_hcd_info {
+ struct usb_hcd *hcd;
+ struct s3c2410_hcd_port port[2];
+
+ void (*power_control)(int port, int to);
+ void (*enable_oc)(struct s3c2410_hcd_info *, int on);
+ void (*report_oc)(struct s3c2410_hcd_info *, int ports);
+};
+
+static void inline s3c2410_usb_report_oc(struct s3c2410_hcd_info *info, int ports)
+{
+ if (info->report_oc != NULL) {
+ (info->report_oc)(info, ports);
+ }
+}
+
+extern void s3c_ohci_set_platdata(struct s3c2410_hcd_info *info);
+
+#endif /*__ASM_ARCH_USBCONTROL_H */