diff options
author | Alexander Shishkin <alexander.shishkin@linux.intel.com> | 2012-05-11 10:25:54 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-05-11 19:56:15 -0400 |
commit | eb70e5ab8f95a81283623c03d2c99dfc59fcb319 (patch) | |
tree | fc20c9d10484171490cf6b69f7f5b6f934803366 /drivers/usb/chipidea/host.h | |
parent | 758fc9860c19eceb56e5886a5225db623c521971 (diff) |
usb: chipidea: add host role
This adds EHCI host support to the chipidea driver. We want it to be
part of the hdrc driver and not a standalone (sub-)driver module, as
the structure of ehci-hcd.c suggests, so for chipidea controller we
hack it to not provide platform-related code, but only the ehci hcd.
The ehci-platform driver won't work for us here too, because the
controller uses the same registers for both device and host mode and
also otg-related bits, so it's not really possible to put ehci registers
into a separate resource.
This is not a pretty solution, but the alternative is exporting symbols
from the chipidea driver to a ehci-chipidea driver and doing all the
module refcounting.
Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/chipidea/host.h')
-rw-r--r-- | drivers/usb/chipidea/host.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/usb/chipidea/host.h b/drivers/usb/chipidea/host.h new file mode 100644 index 000000000000..761fb1fd6d99 --- /dev/null +++ b/drivers/usb/chipidea/host.h | |||
@@ -0,0 +1,17 @@ | |||
1 | #ifndef __DRIVERS_USB_CHIPIDEA_HOST_H | ||
2 | #define __DRIVERS_USB_CHIPIDEA_HOST_H | ||
3 | |||
4 | #ifdef CONFIG_USB_CHIPIDEA_HOST | ||
5 | |||
6 | int ci_hdrc_host_init(struct ci13xxx *ci); | ||
7 | |||
8 | #else | ||
9 | |||
10 | static inline int ci_hdrc_host_init(struct ci13xxx *ci) | ||
11 | { | ||
12 | return -ENXIO; | ||
13 | } | ||
14 | |||
15 | #endif | ||
16 | |||
17 | #endif /* __DRIVERS_USB_CHIPIDEA_HOST_H */ | ||