diff options
Diffstat (limited to 'arch/arm/mach-imx/mach-pcm037.c')
-rw-r--r-- | arch/arm/mach-imx/mach-pcm037.c | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/arch/arm/mach-imx/mach-pcm037.c b/arch/arm/mach-imx/mach-pcm037.c index 0a40004154f2..ded4ed9def9e 100644 --- a/arch/arm/mach-imx/mach-pcm037.c +++ b/arch/arm/mach-imx/mach-pcm037.c | |||
@@ -225,8 +225,7 @@ static struct resource smsc911x_resources[] = { | |||
225 | .end = MX31_CS1_BASE_ADDR + 0x300 + SZ_64K - 1, | 225 | .end = MX31_CS1_BASE_ADDR + 0x300 + SZ_64K - 1, |
226 | .flags = IORESOURCE_MEM, | 226 | .flags = IORESOURCE_MEM, |
227 | }, { | 227 | }, { |
228 | .start = IOMUX_TO_IRQ(MX31_PIN_GPIO3_1), | 228 | /* irq number is run-time assigned */ |
229 | .end = IOMUX_TO_IRQ(MX31_PIN_GPIO3_1), | ||
230 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL, | 229 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL, |
231 | }, | 230 | }, |
232 | }; | 231 | }; |
@@ -371,7 +370,7 @@ static int pcm970_sdhc1_init(struct device *dev, irq_handler_t detect_irq, | |||
371 | gpio_direction_input(SDHC1_GPIO_WP); | 370 | gpio_direction_input(SDHC1_GPIO_WP); |
372 | #endif | 371 | #endif |
373 | 372 | ||
374 | ret = request_irq(IOMUX_TO_IRQ(MX31_PIN_SCK6), detect_irq, | 373 | ret = request_irq(gpio_to_irq(IOMUX_TO_GPIO(MX31_PIN_SCK6)), detect_irq, |
375 | IRQF_DISABLED | IRQF_TRIGGER_FALLING, | 374 | IRQF_DISABLED | IRQF_TRIGGER_FALLING, |
376 | "sdhc-detect", data); | 375 | "sdhc-detect", data); |
377 | if (ret) | 376 | if (ret) |
@@ -391,7 +390,7 @@ err_gpio_free: | |||
391 | 390 | ||
392 | static void pcm970_sdhc1_exit(struct device *dev, void *data) | 391 | static void pcm970_sdhc1_exit(struct device *dev, void *data) |
393 | { | 392 | { |
394 | free_irq(IOMUX_TO_IRQ(MX31_PIN_SCK6), data); | 393 | free_irq(gpio_to_irq(IOMUX_TO_GPIO(MX31_PIN_SCK6)), data); |
395 | gpio_free(SDHC1_GPIO_DET); | 394 | gpio_free(SDHC1_GPIO_DET); |
396 | gpio_free(SDHC1_GPIO_WP); | 395 | gpio_free(SDHC1_GPIO_WP); |
397 | } | 396 | } |
@@ -442,10 +441,6 @@ static struct platform_device *devices[] __initdata = { | |||
442 | &pcm037_mt9v022, | 441 | &pcm037_mt9v022, |
443 | }; | 442 | }; |
444 | 443 | ||
445 | static const struct ipu_platform_data mx3_ipu_data __initconst = { | ||
446 | .irq_base = MXC_IPU_IRQ_START, | ||
447 | }; | ||
448 | |||
449 | static const struct fb_videomode fb_modedb[] = { | 444 | static const struct fb_videomode fb_modedb[] = { |
450 | { | 445 | { |
451 | /* 240x320 @ 60 Hz Sharp */ | 446 | /* 240x320 @ 60 Hz Sharp */ |
@@ -511,8 +506,7 @@ static struct resource pcm970_sja1000_resources[] = { | |||
511 | .end = MX31_CS5_BASE_ADDR + 0x100 - 1, | 506 | .end = MX31_CS5_BASE_ADDR + 0x100 - 1, |
512 | .flags = IORESOURCE_MEM, | 507 | .flags = IORESOURCE_MEM, |
513 | }, { | 508 | }, { |
514 | .start = IOMUX_TO_IRQ(IOMUX_PIN(48, 105)), | 509 | /* irq number is run-time assigned */ |
515 | .end = IOMUX_TO_IRQ(IOMUX_PIN(48, 105)), | ||
516 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWEDGE, | 510 | .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWEDGE, |
517 | }, | 511 | }, |
518 | }; | 512 | }; |
@@ -633,6 +627,10 @@ static void __init pcm037_init(void) | |||
633 | pr_warning("could not get LAN irq gpio\n"); | 627 | pr_warning("could not get LAN irq gpio\n"); |
634 | else { | 628 | else { |
635 | gpio_direction_input(IOMUX_TO_GPIO(MX31_PIN_GPIO3_1)); | 629 | gpio_direction_input(IOMUX_TO_GPIO(MX31_PIN_GPIO3_1)); |
630 | smsc911x_resources[1].start = | ||
631 | gpio_to_irq(IOMUX_TO_GPIO(MX31_PIN_GPIO3_1)); | ||
632 | smsc911x_resources[1].end = | ||
633 | gpio_to_irq(IOMUX_TO_GPIO(MX31_PIN_GPIO3_1)); | ||
636 | platform_device_register(&pcm037_eth); | 634 | platform_device_register(&pcm037_eth); |
637 | } | 635 | } |
638 | 636 | ||
@@ -646,7 +644,7 @@ static void __init pcm037_init(void) | |||
646 | 644 | ||
647 | imx31_add_mxc_nand(&pcm037_nand_board_info); | 645 | imx31_add_mxc_nand(&pcm037_nand_board_info); |
648 | imx31_add_mxc_mmc(0, &sdhc_pdata); | 646 | imx31_add_mxc_mmc(0, &sdhc_pdata); |
649 | imx31_add_ipu_core(&mx3_ipu_data); | 647 | imx31_add_ipu_core(); |
650 | imx31_add_mx3_sdc_fb(&mx3fb_pdata); | 648 | imx31_add_mx3_sdc_fb(&mx3fb_pdata); |
651 | 649 | ||
652 | /* CSI */ | 650 | /* CSI */ |
@@ -659,6 +657,10 @@ static void __init pcm037_init(void) | |||
659 | 657 | ||
660 | pcm037_init_camera(); | 658 | pcm037_init_camera(); |
661 | 659 | ||
660 | pcm970_sja1000_resources[1].start = | ||
661 | gpio_to_irq(IOMUX_TO_GPIO(IOMUX_PIN(48, 105))); | ||
662 | pcm970_sja1000_resources[1].end = | ||
663 | gpio_to_irq(IOMUX_TO_GPIO(IOMUX_PIN(48, 105))); | ||
662 | platform_device_register(&pcm970_sja1000); | 664 | platform_device_register(&pcm970_sja1000); |
663 | 665 | ||
664 | if (otg_mode_host) { | 666 | if (otg_mode_host) { |