aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-pxa/magician.c
diff options
context:
space:
mode:
authorEric Miao <eric.miao@marvell.com>2008-09-27 15:49:57 +0800
committerRussell King <rmk+kernel@arm.linux.org.uk>2008-10-07 19:12:57 +0100
commit097b53348f34a461d2b07081eae12d823cf3d729 (patch)
tree62f59bdfc0252346666158b6c236fc250850cb36 /arch/arm/mach-pxa/magician.c
parent52358ba3a89012c54712c24074ceb4b1c669af52 (diff)
downloadkernel_samsung_smdk4412-097b53348f34a461d2b07081eae12d823cf3d729.zip
kernel_samsung_smdk4412-097b53348f34a461d2b07081eae12d823cf3d729.tar.gz
kernel_samsung_smdk4412-097b53348f34a461d2b07081eae12d823cf3d729.tar.bz2
[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.c14
1 files changed, 3 insertions, 11 deletions
diff --git a/arch/arm/mach-pxa/magician.c b/arch/arm/mach-pxa/magician.c
index 8ebdac7..519138b 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 = {
* USB OHCI
*/
-static int magician_ohci_init(struct device *dev)
-{
- UHCHR = (UHCHR | UHCHR_SSEP2 | UHCHR_PCPL | UHCHR_CGR) &
- ~(UHCHR_SSEP1 | UHCHR_SSEP3 | UHCHR_SSE);
-
- return 0;
-}
-
static struct pxaohci_platform_data magician_ohci_info = {
- .port_mode = PMM_PERPORT_MODE,
- .init = magician_ohci_init,
- .power_budget = 0,
+ .port_mode = PMM_PERPORT_MODE,
+ .flags = ENABLE_PORT1 | ENABLE_PORT3 | POWER_CONTROL_LOW,
+ .power_budget = 0,
};