diff options
author | Pete Popov <ppopov@embeddedalley.com> | 2005-09-15 04:03:12 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2005-10-29 14:32:20 -0400 |
commit | 26a940e21752e0de8f068f77dad606a7d1986937 (patch) | |
tree | 88e46225e19c4c72fa6914a21afb28c6ea52bfc6 /arch/mips/au1000/common/platform.c | |
parent | 64abf64d10b3a547becefeb26394dfbefac273fb (diff) |
Cleaned up AMD Au1200 IDE driver:
- converted to platform bus
- removed pci dependencies
- removed virt_to_phys/phys_to_virt calls
System now can root off of a disk.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
diff --git a/Documentation/mips/AU1xxx_IDE.README b/Documentation/mips/AU1xxx_IDE.README
new file mode 100644
Diffstat (limited to 'arch/mips/au1000/common/platform.c')
-rw-r--r-- | arch/mips/au1000/common/platform.c | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/arch/mips/au1000/common/platform.c b/arch/mips/au1000/common/platform.c index 0c3fd726c3d6..4aca18f0e290 100644 --- a/arch/mips/au1000/common/platform.c +++ b/arch/mips/au1000/common/platform.c | |||
@@ -12,7 +12,7 @@ | |||
12 | #include <linux/init.h> | 12 | #include <linux/init.h> |
13 | #include <linux/resource.h> | 13 | #include <linux/resource.h> |
14 | 14 | ||
15 | #include <asm/mach-au1x00/au1000.h> | 15 | #include <asm/mach-au1x00/au1xxx.h> |
16 | 16 | ||
17 | /* OHCI (USB full speed host controller) */ | 17 | /* OHCI (USB full speed host controller) */ |
18 | static struct resource au1xxx_usb_ohci_resources[] = { | 18 | static struct resource au1xxx_usb_ohci_resources[] = { |
@@ -154,7 +154,6 @@ static struct platform_device au1xxx_usb_otg_device = { | |||
154 | .resource = au1xxx_usb_otg_resources, | 154 | .resource = au1xxx_usb_otg_resources, |
155 | }; | 155 | }; |
156 | 156 | ||
157 | /*** AU1200 LCD controller ***/ | ||
158 | static struct resource au1200_lcd_resources[] = { | 157 | static struct resource au1200_lcd_resources[] = { |
159 | [0] = { | 158 | [0] = { |
160 | .start = LCD_PHYS_ADDR, | 159 | .start = LCD_PHYS_ADDR, |
@@ -168,6 +167,19 @@ static struct resource au1200_lcd_resources[] = { | |||
168 | } | 167 | } |
169 | }; | 168 | }; |
170 | 169 | ||
170 | static struct resource au1200_ide0_resources[] = { | ||
171 | [0] = { | ||
172 | .start = AU1XXX_ATA_PHYS_ADDR, | ||
173 | .end = AU1XXX_ATA_PHYS_ADDR + AU1XXX_ATA_PHYS_LEN, | ||
174 | .flags = IORESOURCE_MEM, | ||
175 | }, | ||
176 | [1] = { | ||
177 | .start = AU1XXX_ATA_INT, | ||
178 | .end = AU1XXX_ATA_INT, | ||
179 | .flags = IORESOURCE_IRQ, | ||
180 | } | ||
181 | }; | ||
182 | |||
171 | static u64 au1200_lcd_dmamask = ~(u32)0; | 183 | static u64 au1200_lcd_dmamask = ~(u32)0; |
172 | 184 | ||
173 | static struct platform_device au1200_lcd_device = { | 185 | static struct platform_device au1200_lcd_device = { |
@@ -180,6 +192,21 @@ static struct platform_device au1200_lcd_device = { | |||
180 | .num_resources = ARRAY_SIZE(au1200_lcd_resources), | 192 | .num_resources = ARRAY_SIZE(au1200_lcd_resources), |
181 | .resource = au1200_lcd_resources, | 193 | .resource = au1200_lcd_resources, |
182 | }; | 194 | }; |
195 | |||
196 | |||
197 | static u64 ide0_dmamask = ~(u32)0; | ||
198 | |||
199 | static struct platform_device au1200_ide0_device = { | ||
200 | .name = "au1200-ide", | ||
201 | .id = 0, | ||
202 | .dev = { | ||
203 | .dma_mask = &ide0_dmamask, | ||
204 | .coherent_dma_mask = 0xffffffff, | ||
205 | }, | ||
206 | .num_resources = ARRAY_SIZE(au1200_ide0_resources), | ||
207 | .resource = au1200_ide0_resources, | ||
208 | }; | ||
209 | |||
183 | #endif | 210 | #endif |
184 | 211 | ||
185 | static struct platform_device *au1xxx_platform_devices[] __initdata = { | 212 | static struct platform_device *au1xxx_platform_devices[] __initdata = { |
@@ -194,6 +221,7 @@ static struct platform_device *au1xxx_platform_devices[] __initdata = { | |||
194 | &au1xxx_usb_gdt_device, | 221 | &au1xxx_usb_gdt_device, |
195 | &au1xxx_usb_otg_device, | 222 | &au1xxx_usb_otg_device, |
196 | &au1200_lcd_device, | 223 | &au1200_lcd_device, |
224 | &au1200_ide0_device, | ||
197 | #endif | 225 | #endif |
198 | }; | 226 | }; |
199 | 227 | ||