MIPS: Add core files for MIPS SEAD-3 development platform.
[linux-drm-fsl-dcu.git] / arch / mips / mti-sead3 / sead3-ehci.c
1 /*
2  * This file is subject to the terms and conditions of the GNU General Public
3  * License.  See the file "COPYING" in the main directory of this archive
4  * for more details.
5  *
6  * Copyright (C) 2012 MIPS Technologies, Inc.  All rights reserved.
7  */
8 #include <linux/module.h>
9 #include <linux/irq.h>
10 #include <linux/dma-mapping.h>
11 #include <linux/platform_device.h>
12
13 struct resource ehci_resources[] = {
14         {
15                 .start                  = 0x1b200000,
16                 .end                    = 0x1b200fff,
17                 .flags                  = IORESOURCE_MEM
18         },
19         {
20                 .start                  = MIPS_CPU_IRQ_BASE + 2,
21                 .flags                  = IORESOURCE_IRQ
22         }
23 };
24
25 u64 sead3_usbdev_dma_mask = DMA_BIT_MASK(32);
26
27 static struct platform_device ehci_device = {
28         .name           = "sead3-ehci",
29         .id             = 0,
30         .dev            = {
31                 .dma_mask               = &sead3_usbdev_dma_mask,
32                 .coherent_dma_mask      = DMA_BIT_MASK(32)
33         },
34         .num_resources  = ARRAY_SIZE(ehci_resources),
35         .resource       = ehci_resources
36 };
37
38 static int __init ehci_init(void)
39 {
40         return platform_device_register(&ehci_device);
41 }
42
43 module_init(ehci_init);
44
45 MODULE_AUTHOR("Chris Dearman <chris@mips.com>");
46 MODULE_LICENSE("GPL");
47 MODULE_DESCRIPTION("EHCI probe driver for SEAD3");