aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-rpc/riscpc.c35
-rw-r--r--drivers/ata/Kconfig2
2 files changed, 36 insertions, 1 deletions
diff --git a/arch/arm/mach-rpc/riscpc.c b/arch/arm/mach-rpc/riscpc.c
index 208a2b5dba1b..570cf937e73b 100644
--- a/arch/arm/mach-rpc/riscpc.c
+++ b/arch/arm/mach-rpc/riscpc.c
@@ -17,6 +17,7 @@
17#include <linux/sched.h> 17#include <linux/sched.h>
18#include <linux/device.h> 18#include <linux/device.h>
19#include <linux/serial_8250.h> 19#include <linux/serial_8250.h>
20#include <linux/pata_platform.h>
20 21
21#include <asm/elf.h> 22#include <asm/elf.h>
22#include <asm/io.h> 23#include <asm/io.h>
@@ -159,11 +160,45 @@ static struct platform_device serial_device = {
159 }, 160 },
160}; 161};
161 162
163static struct pata_platform_info pata_platform_data = {
164 .ioport_shift = 2,
165};
166
167static struct resource pata_resources[] = {
168 [0] = {
169 .start = 0x030107c0,
170 .end = 0x030107df,
171 .flags = IORESOURCE_MEM,
172 },
173 [1] = {
174 .start = 0x03010fd8,
175 .end = 0x03010fdb,
176 .flags = IORESOURCE_MEM,
177 },
178 [2] = {
179 .start = IRQ_HARDDISK,
180 .end = IRQ_HARDDISK,
181 .flags = IORESOURCE_IRQ,
182 },
183};
184
185static struct platform_device pata_device = {
186 .name = "pata_platform",
187 .id = -1,
188 .num_resources = ARRAY_SIZE(pata_resources),
189 .resource = pata_resources,
190 .dev = {
191 .platform_data = &pata_platform_data,
192 .coherent_dma_mask = ~0, /* grumble */
193 },
194};
195
162static struct platform_device *devs[] __initdata = { 196static struct platform_device *devs[] __initdata = {
163 &iomd_device, 197 &iomd_device,
164 &kbd_device, 198 &kbd_device,
165 &serial_device, 199 &serial_device,
166 &acornfb_device, 200 &acornfb_device,
201 &pata_device,
167}; 202};
168 203
169static int __init rpc_init(void) 204static int __init rpc_init(void)
diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index 7bdbe5a914d0..e0820e8dd1c7 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -545,7 +545,7 @@ config PATA_WINBOND_VLB
545 545
546config PATA_PLATFORM 546config PATA_PLATFORM
547 tristate "Generic platform device PATA support" 547 tristate "Generic platform device PATA support"
548 depends on EMBEDDED 548 depends on EMBEDDED || ARCH_RPC
549 help 549 help
550 This option enables support for generic directly connected ATA 550 This option enables support for generic directly connected ATA
551 devices commonly found on embedded systems. 551 devices commonly found on embedded systems.