diff options
-rw-r--r-- | arch/arm/mach-versatile/core.c | 16 | ||||
-rw-r--r-- | arch/arm/mach-versatile/versatile_pb.c | 21 |
2 files changed, 16 insertions, 21 deletions
diff --git a/arch/arm/mach-versatile/core.c b/arch/arm/mach-versatile/core.c index 3b0572f30d56..a335126ae18f 100644 --- a/arch/arm/mach-versatile/core.c +++ b/arch/arm/mach-versatile/core.c | |||
@@ -570,6 +570,16 @@ static struct pl061_platform_data gpio1_plat_data = { | |||
570 | .irq_base = IRQ_GPIO1_START, | 570 | .irq_base = IRQ_GPIO1_START, |
571 | }; | 571 | }; |
572 | 572 | ||
573 | static struct pl061_platform_data gpio2_plat_data = { | ||
574 | .gpio_base = 16, | ||
575 | .irq_base = IRQ_GPIO2_START, | ||
576 | }; | ||
577 | |||
578 | static struct pl061_platform_data gpio3_plat_data = { | ||
579 | .gpio_base = 24, | ||
580 | .irq_base = IRQ_GPIO3_START, | ||
581 | }; | ||
582 | |||
573 | static struct pl022_ssp_controller ssp0_plat_data = { | 583 | static struct pl022_ssp_controller ssp0_plat_data = { |
574 | .bus_id = 0, | 584 | .bus_id = 0, |
575 | .enable_dma = 0, | 585 | .enable_dma = 0, |
@@ -596,6 +606,8 @@ static struct pl022_ssp_controller ssp0_plat_data = { | |||
596 | #define WATCHDOG_IRQ { IRQ_WDOGINT } | 606 | #define WATCHDOG_IRQ { IRQ_WDOGINT } |
597 | #define GPIO0_IRQ { IRQ_GPIOINT0 } | 607 | #define GPIO0_IRQ { IRQ_GPIOINT0 } |
598 | #define GPIO1_IRQ { IRQ_GPIOINT1 } | 608 | #define GPIO1_IRQ { IRQ_GPIOINT1 } |
609 | #define GPIO2_IRQ { IRQ_GPIOINT2 } | ||
610 | #define GPIO3_IRQ { IRQ_GPIOINT3 } | ||
599 | #define RTC_IRQ { IRQ_RTCINT } | 611 | #define RTC_IRQ { IRQ_RTCINT } |
600 | 612 | ||
601 | /* | 613 | /* |
@@ -622,6 +634,8 @@ APB_DEVICE(sctl, "dev:e0", SCTL, NULL); | |||
622 | APB_DEVICE(wdog, "dev:e1", WATCHDOG, NULL); | 634 | APB_DEVICE(wdog, "dev:e1", WATCHDOG, NULL); |
623 | APB_DEVICE(gpio0, "dev:e4", GPIO0, &gpio0_plat_data); | 635 | APB_DEVICE(gpio0, "dev:e4", GPIO0, &gpio0_plat_data); |
624 | APB_DEVICE(gpio1, "dev:e5", GPIO1, &gpio1_plat_data); | 636 | APB_DEVICE(gpio1, "dev:e5", GPIO1, &gpio1_plat_data); |
637 | APB_DEVICE(gpio2, "dev:e6", GPIO2, &gpio2_plat_data); | ||
638 | APB_DEVICE(gpio3, "dev:e7", GPIO3, &gpio3_plat_data); | ||
625 | APB_DEVICE(rtc, "dev:e8", RTC, NULL); | 639 | APB_DEVICE(rtc, "dev:e8", RTC, NULL); |
626 | APB_DEVICE(sci0, "dev:f0", SCI, NULL); | 640 | APB_DEVICE(sci0, "dev:f0", SCI, NULL); |
627 | APB_DEVICE(uart0, "dev:f1", UART0, NULL); | 641 | APB_DEVICE(uart0, "dev:f1", UART0, NULL); |
@@ -641,6 +655,8 @@ static struct amba_device *amba_devs[] __initdata = { | |||
641 | &wdog_device, | 655 | &wdog_device, |
642 | &gpio0_device, | 656 | &gpio0_device, |
643 | &gpio1_device, | 657 | &gpio1_device, |
658 | &gpio2_device, | ||
659 | &gpio3_device, | ||
644 | &rtc_device, | 660 | &rtc_device, |
645 | &sci0_device, | 661 | &sci0_device, |
646 | &ssp0_device, | 662 | &ssp0_device, |
diff --git a/arch/arm/mach-versatile/versatile_pb.c b/arch/arm/mach-versatile/versatile_pb.c index 611d140c8695..9a53d0bd9144 100644 --- a/arch/arm/mach-versatile/versatile_pb.c +++ b/arch/arm/mach-versatile/versatile_pb.c | |||
@@ -47,27 +47,11 @@ static struct mmci_platform_data mmc1_plat_data = { | |||
47 | .gpio_cd = -1, | 47 | .gpio_cd = -1, |
48 | }; | 48 | }; |
49 | 49 | ||
50 | static struct pl061_platform_data gpio2_plat_data = { | ||
51 | .gpio_base = 16, | ||
52 | .irq_base = IRQ_GPIO2_START, | ||
53 | }; | ||
54 | |||
55 | static struct pl061_platform_data gpio3_plat_data = { | ||
56 | .gpio_base = 24, | ||
57 | .irq_base = IRQ_GPIO3_START, | ||
58 | }; | ||
59 | |||
60 | #define UART3_IRQ { IRQ_SIC_UART3 } | 50 | #define UART3_IRQ { IRQ_SIC_UART3 } |
61 | #define SCI1_IRQ { IRQ_SIC_SCI3 } | 51 | #define SCI1_IRQ { IRQ_SIC_SCI3 } |
62 | #define MMCI1_IRQ { IRQ_MMCI1A, IRQ_SIC_MMCI1B } | 52 | #define MMCI1_IRQ { IRQ_MMCI1A, IRQ_SIC_MMCI1B } |
63 | 53 | ||
64 | /* | 54 | /* |
65 | * These devices are connected via the core APB bridge | ||
66 | */ | ||
67 | #define GPIO2_IRQ { IRQ_GPIOINT2 } | ||
68 | #define GPIO3_IRQ { IRQ_GPIOINT3 } | ||
69 | |||
70 | /* | ||
71 | * These devices are connected via the DMA APB bridge | 55 | * These devices are connected via the DMA APB bridge |
72 | */ | 56 | */ |
73 | 57 | ||
@@ -76,14 +60,9 @@ APB_DEVICE(uart3, "fpga:09", UART3, NULL); | |||
76 | APB_DEVICE(sci1, "fpga:0a", SCI1, NULL); | 60 | APB_DEVICE(sci1, "fpga:0a", SCI1, NULL); |
77 | APB_DEVICE(mmc1, "fpga:0b", MMCI1, &mmc1_plat_data); | 61 | APB_DEVICE(mmc1, "fpga:0b", MMCI1, &mmc1_plat_data); |
78 | 62 | ||
79 | /* DevChip Primecells */ | ||
80 | APB_DEVICE(gpio2, "dev:e6", GPIO2, &gpio2_plat_data); | ||
81 | APB_DEVICE(gpio3, "dev:e7", GPIO3, &gpio3_plat_data); | ||
82 | 63 | ||
83 | static struct amba_device *amba_devs[] __initdata = { | 64 | static struct amba_device *amba_devs[] __initdata = { |
84 | &uart3_device, | 65 | &uart3_device, |
85 | &gpio2_device, | ||
86 | &gpio3_device, | ||
87 | &sci1_device, | 66 | &sci1_device, |
88 | &mmc1_device, | 67 | &mmc1_device, |
89 | }; | 68 | }; |