diff options
author | Eric Miao <eric.miao@marvell.com> | 2008-09-27 03:49:57 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2008-10-07 14:12:57 -0400 |
commit | 097b53348f34a461d2b07081eae12d823cf3d729 (patch) | |
tree | 62f59bdfc0252346666158b6c236fc250850cb36 /arch/arm/mach-pxa/magician.c | |
parent | 52358ba3a89012c54712c24074ceb4b1c669af52 (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/magician.c')
-rw-r--r-- | arch/arm/mach-pxa/magician.c | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/arch/arm/mach-pxa/magician.c b/arch/arm/mach-pxa/magician.c index 8ebdac7e9a13..519138bc5f85 100644 --- a/arch/arm/mach-pxa/magician.c +++ b/arch/arm/mach-pxa/magician.c | |||
@@ -669,18 +669,10 @@ static struct pxamci_platform_data magician_mci_info = { | |||
669 | * USB OHCI | 669 | * USB OHCI |
670 | */ | 670 | */ |
671 | 671 | ||
672 | static int magician_ohci_init(struct device *dev) | ||
673 | { | ||
674 | UHCHR = (UHCHR | UHCHR_SSEP2 | UHCHR_PCPL | UHCHR_CGR) & | ||
675 | ~(UHCHR_SSEP1 | UHCHR_SSEP3 | UHCHR_SSE); | ||
676 | |||
677 | return 0; | ||
678 | } | ||
679 | |||
680 | static struct pxaohci_platform_data magician_ohci_info = { | 672 | static struct pxaohci_platform_data magician_ohci_info = { |
681 | .port_mode = PMM_PERPORT_MODE, | 673 | .port_mode = PMM_PERPORT_MODE, |
682 | .init = magician_ohci_init, | 674 | .flags = ENABLE_PORT1 | ENABLE_PORT3 | POWER_CONTROL_LOW, |
683 | .power_budget = 0, | 675 | .power_budget = 0, |
684 | }; | 676 | }; |
685 | 677 | ||
686 | 678 | ||