aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-pxa/cm-x270.c
diff options
context:
space:
mode:
authorEric Miao <eric.miao@marvell.com>2008-09-27 03:49:57 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2008-10-07 14:12:57 -0400
commit097b53348f34a461d2b07081eae12d823cf3d729 (patch)
tree62f59bdfc0252346666158b6c236fc250850cb36 /arch/arm/mach-pxa/cm-x270.c
parent52358ba3a89012c54712c24074ceb4b1c669af52 (diff)
[ARM] ohci-pxa27x: introduce flags to avoid direct access to OHCI registers
Direct access to USB host controller registers is considered to be not portable, and is usually a bad sign for poorly abstracted interface. Introduce .flags and .power_on_delay to "struct pxaohci_platform_data" so that most platforms don't bother to write their own .init/.exit() sequences. Signed-off-by: Eric Miao <eric.miao@marvell.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-pxa/cm-x270.c')
-rw-r--r--arch/arm/mach-pxa/cm-x270.c11
1 files changed, 1 insertions, 10 deletions
diff --git a/arch/arm/mach-pxa/cm-x270.c b/arch/arm/mach-pxa/cm-x270.c
index 102a43186618..a82dad1a8cc8 100644
--- a/arch/arm/mach-pxa/cm-x270.c
+++ b/arch/arm/mach-pxa/cm-x270.c
@@ -257,18 +257,9 @@ static inline void cmx270_init_2700G(void) {}
257 257
258/* PXA27x OHCI controller setup */ 258/* PXA27x OHCI controller setup */
259#if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE) 259#if defined(CONFIG_USB_OHCI_HCD) || defined(CONFIG_USB_OHCI_HCD_MODULE)
260static int cmx270_ohci_init(struct device *dev)
261{
262 /* Set the Power Control Polarity Low */
263 UHCHR = (UHCHR | UHCHR_PCPL) &
264 ~(UHCHR_SSEP1 | UHCHR_SSEP2 | UHCHR_SSE);
265
266 return 0;
267}
268
269static struct pxaohci_platform_data cmx270_ohci_platform_data = { 260static struct pxaohci_platform_data cmx270_ohci_platform_data = {
270 .port_mode = PMM_PERPORT_MODE, 261 .port_mode = PMM_PERPORT_MODE,
271 .init = cmx270_ohci_init, 262 .flags = ENABLE_PORT1 | ENABLE_PORT2 | POWER_CONTROL_LOW,
272}; 263};
273 264
274static void __init cmx270_init_ohci(void) 265static void __init cmx270_init_ohci(void)