summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2009-04-17 16:52:25 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2009-06-23 13:16:19 +0200
commitf5f32aaa4379e81e7813745dc5589700b3581b92 (patch)
tree8d2301959ae5ff47127f383c8acd443aab2385a5
parentd2c7dc13305a12f49a8df192405f6e1b0055915f (diff)
downloadlinux-2.6-f5f32aaa4379e81e7813745dc5589700b3581b92.tar.gz
linux-2.6-f5f32aaa4379e81e7813745dc5589700b3581b92.tar.xz
mx3x: Fixup USB base addresses
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r--arch/arm/mach-mx3/devices.c20
-rw-r--r--arch/arm/mach-mx3/pcm037.c20
-rw-r--r--arch/arm/plat-mxc/include/mach/mx31.h2
-rw-r--r--arch/arm/plat-mxc/include/mach/mx35.h1
4 files changed, 26 insertions, 17 deletions
diff --git a/arch/arm/mach-mx3/devices.c b/arch/arm/mach-mx3/devices.c
index e32233b2c2b..0e6faffc912 100644
--- a/arch/arm/mach-mx3/devices.c
+++ b/arch/arm/mach-mx3/devices.c
@@ -373,8 +373,8 @@ struct platform_device mx3_camera = {
static struct resource otg_resources[] = {
{
- .start = OTG_BASE_ADDR,
- .end = OTG_BASE_ADDR + 0x1ff,
+ .start = MX31_OTG_BASE_ADDR,
+ .end = MX31_OTG_BASE_ADDR + 0x1ff,
.flags = IORESOURCE_MEM,
}, {
.start = MXC_INT_USB3,
@@ -412,8 +412,8 @@ static u64 usbh1_dmamask = DMA_BIT_MASK(32);
static struct resource mxc_usbh1_resources[] = {
{
- .start = OTG_BASE_ADDR + 0x200,
- .end = OTG_BASE_ADDR + 0x3ff,
+ .start = MX31_OTG_BASE_ADDR + 0x200,
+ .end = MX31_OTG_BASE_ADDR + 0x3ff,
.flags = IORESOURCE_MEM,
}, {
.start = MXC_INT_USB1,
@@ -437,8 +437,8 @@ static u64 usbh2_dmamask = DMA_BIT_MASK(32);
static struct resource mxc_usbh2_resources[] = {
{
- .start = OTG_BASE_ADDR + 0x400,
- .end = OTG_BASE_ADDR + 0x5ff,
+ .start = MX31_OTG_BASE_ADDR + 0x400,
+ .end = MX31_OTG_BASE_ADDR + 0x5ff,
.flags = IORESOURCE_MEM,
}, {
.start = MXC_INT_USB2,
@@ -550,6 +550,14 @@ static int mx3_devices_init(void)
if (cpu_is_mx35()) {
mxc_nand_resources[0].start = MX35_NFC_BASE_ADDR;
mxc_nand_resources[0].end = MX35_NFC_BASE_ADDR + 0xfff;
+ otg_resources[0].start = MX35_OTG_BASE_ADDR;
+ otg_resources[0].end = MX35_OTG_BASE_ADDR + 0x1ff;
+ otg_resources[1].start = MXC_INT_USBOTG;
+ otg_resources[1].end = MXC_INT_USBOTG;
+ mxc_usbh1_resources[0].start = MX35_OTG_BASE_ADDR + 0x400;
+ mxc_usbh1_resources[0].end = MX35_OTG_BASE_ADDR + 0x5ff;
+ mxc_usbh1_resources[1].start = MXC_INT_USBHS;
+ mxc_usbh1_resources[1].end = MXC_INT_USBHS;
}
return 0;
diff --git a/arch/arm/mach-mx3/pcm037.c b/arch/arm/mach-mx3/pcm037.c
index ab64c0a7daa..3dee3c45a84 100644
--- a/arch/arm/mach-mx3/pcm037.c
+++ b/arch/arm/mach-mx3/pcm037.c
@@ -466,15 +466,15 @@ static int pcm037_otg_init(struct platform_device *pdev)
int ret;
unsigned int tmp;
- tmp = readl(IO_ADDRESS(OTG_BASE_ADDR) + 0x600);
+ tmp = readl(IO_ADDRESS(MX31_OTG_BASE_ADDR) + 0x600);
tmp &= ~((3 << 21) | 1);
tmp |= (1 << 5) | (1 << 16) | (1 << 19) | (1 << 11) | (1 << 20);
- writel(tmp, IO_ADDRESS(OTG_BASE_ADDR) + 0x600);
+ writel(tmp, IO_ADDRESS(MX31_OTG_BASE_ADDR) + 0x600);
- tmp = readl(IO_ADDRESS(OTG_BASE_ADDR) + 0x184);
+ tmp = readl(IO_ADDRESS(MX31_OTG_BASE_ADDR) + 0x184);
tmp &= ~(3 << 30);
tmp |= 2 << 30;
- writel(tmp, IO_ADDRESS(OTG_BASE_ADDR) + 0x184);
+ writel(tmp, IO_ADDRESS(MX31_OTG_BASE_ADDR) + 0x184);
mxc_iomux_setup_multiple_pins(usb1_pins, ARRAY_SIZE(usb1_pins),
"pcm037");
@@ -483,7 +483,7 @@ static int pcm037_otg_init(struct platform_device *pdev)
mdelay(10);
- ret = isp1504_set_vbus_power(IO_ADDRESS(OTG_BASE_ADDR + 0x170), 1);
+ ret = isp1504_set_vbus_power(IO_ADDRESS(MX31_OTG_BASE_ADDR + 0x170), 1);
return 0;
}
@@ -533,19 +533,19 @@ static int pcm037_usbh2_init(struct platform_device *pdev)
mxc_iomux_set_pad(MX31_PIN_SRXD3, H2_PAD_CFG); /* USBH2_DATA6 */
mxc_iomux_set_pad(MX31_PIN_STXD3, H2_PAD_CFG); /* USBH2_DATA7 */
- tmp = readl(IO_ADDRESS(OTG_BASE_ADDR) + 0x600);
+ tmp = readl(IO_ADDRESS(MX31_OTG_BASE_ADDR) + 0x600);
tmp &= ~((3 << 21) | 1);
tmp |= (1 << 5) | (1 << 16) | (1 << 19) | (1 << 20);
- writel(tmp, IO_ADDRESS(OTG_BASE_ADDR) + 0x600);
+ writel(tmp, IO_ADDRESS(MX31_OTG_BASE_ADDR) + 0x600);
- tmp = readl(IO_ADDRESS(OTG_BASE_ADDR) + 0x584);
+ tmp = readl(IO_ADDRESS(MX31_OTG_BASE_ADDR) + 0x584);
tmp &= ~(3 << 30);
tmp |= 2 << 30;
- writel(tmp, IO_ADDRESS(OTG_BASE_ADDR) + 0x584);
+ writel(tmp, IO_ADDRESS(MX31_OTG_BASE_ADDR) + 0x584);
mdelay(10);
- ret = isp1504_set_vbus_power(IO_ADDRESS(OTG_BASE_ADDR + 0x570), 1);
+ ret = isp1504_set_vbus_power(IO_ADDRESS(MX31_OTG_BASE_ADDR + 0x570), 1);
return 0;
}
diff --git a/arch/arm/plat-mxc/include/mach/mx31.h b/arch/arm/plat-mxc/include/mach/mx31.h
index 0b06941b613..14ac0dcc82f 100644
--- a/arch/arm/plat-mxc/include/mach/mx31.h
+++ b/arch/arm/plat-mxc/include/mach/mx31.h
@@ -4,7 +4,7 @@
#define MX31_IRAM_BASE_ADDR 0x1FFC0000 /* internal ram */
#define MX31_IRAM_SIZE SZ_16K
-#define OTG_BASE_ADDR (AIPS1_BASE_ADDR + 0x00088000)
+#define MX31_OTG_BASE_ADDR (AIPS1_BASE_ADDR + 0x00088000)
#define ATA_BASE_ADDR (AIPS1_BASE_ADDR + 0x0008C000)
#define UART4_BASE_ADDR (AIPS1_BASE_ADDR + 0x000B0000)
#define UART5_BASE_ADDR (AIPS1_BASE_ADDR + 0x000B4000)
diff --git a/arch/arm/plat-mxc/include/mach/mx35.h b/arch/arm/plat-mxc/include/mach/mx35.h
index 6465fefb42e..ab4cfec6c8a 100644
--- a/arch/arm/plat-mxc/include/mach/mx35.h
+++ b/arch/arm/plat-mxc/include/mach/mx35.h
@@ -5,6 +5,7 @@
#define MX35_IRAM_SIZE SZ_128K
#define MXC_FEC_BASE_ADDR 0x50038000
+#define MX35_OTG_BASE_ADDR 0x53ff4000
#define MX35_NFC_BASE_ADDR 0xBB000000
/*