diff options
Diffstat (limited to 'arch/ppc/platforms/lopec.c')
| -rw-r--r-- | arch/ppc/platforms/lopec.c | 85 |
1 files changed, 0 insertions, 85 deletions
diff --git a/arch/ppc/platforms/lopec.c b/arch/ppc/platforms/lopec.c index b947c774f524..1e3aa6e9b6c7 100644 --- a/arch/ppc/platforms/lopec.c +++ b/arch/ppc/platforms/lopec.c | |||
| @@ -15,7 +15,6 @@ | |||
| 15 | #include <linux/pci_ids.h> | 15 | #include <linux/pci_ids.h> |
| 16 | #include <linux/ioport.h> | 16 | #include <linux/ioport.h> |
| 17 | #include <linux/init.h> | 17 | #include <linux/init.h> |
| 18 | #include <linux/ide.h> | ||
| 19 | #include <linux/seq_file.h> | 18 | #include <linux/seq_file.h> |
| 20 | #include <linux/initrd.h> | 19 | #include <linux/initrd.h> |
| 21 | #include <linux/console.h> | 20 | #include <linux/console.h> |
| @@ -168,85 +167,6 @@ lopec_power_off(void) | |||
| 168 | lopec_halt(); | 167 | lopec_halt(); |
| 169 | } | 168 | } |
| 170 | 169 | ||
| 171 | #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) | ||
| 172 | int lopec_ide_ports_known = 0; | ||
| 173 | static unsigned long lopec_ide_regbase[MAX_HWIFS]; | ||
| 174 | static unsigned long lopec_ide_ctl_regbase[MAX_HWIFS]; | ||
| 175 | static unsigned long lopec_idedma_regbase; | ||
| 176 | |||
| 177 | static void | ||
| 178 | lopec_ide_probe(void) | ||
| 179 | { | ||
| 180 | struct pci_dev *dev = pci_get_device(PCI_VENDOR_ID_WINBOND, | ||
| 181 | PCI_DEVICE_ID_WINBOND_82C105, | ||
| 182 | NULL); | ||
| 183 | lopec_ide_ports_known = 1; | ||
| 184 | |||
| 185 | if (dev) { | ||
| 186 | lopec_ide_regbase[0] = dev->resource[0].start; | ||
| 187 | lopec_ide_regbase[1] = dev->resource[2].start; | ||
| 188 | lopec_ide_ctl_regbase[0] = dev->resource[1].start; | ||
| 189 | lopec_ide_ctl_regbase[1] = dev->resource[3].start; | ||
| 190 | lopec_idedma_regbase = dev->resource[4].start; | ||
| 191 | pci_dev_put(dev); | ||
| 192 | } | ||
| 193 | } | ||
| 194 | |||
| 195 | static int | ||
| 196 | lopec_ide_default_irq(unsigned long base) | ||
| 197 | { | ||
| 198 | if (lopec_ide_ports_known == 0) | ||
| 199 | lopec_ide_probe(); | ||
| 200 | |||
| 201 | if (base == lopec_ide_regbase[0]) | ||
| 202 | return 14; | ||
| 203 | else if (base == lopec_ide_regbase[1]) | ||
| 204 | return 15; | ||
| 205 | else | ||
| 206 | return 0; | ||
| 207 | } | ||
| 208 | |||
| 209 | static unsigned long | ||
| 210 | lopec_ide_default_io_base(int index) | ||
| 211 | { | ||
| 212 | if (lopec_ide_ports_known == 0) | ||
| 213 | lopec_ide_probe(); | ||
| 214 | return lopec_ide_regbase[index]; | ||
| 215 | } | ||
| 216 | |||
| 217 | static void __init | ||
| 218 | lopec_ide_init_hwif_ports(hw_regs_t *hw, unsigned long data, | ||
| 219 | unsigned long ctl, int *irq) | ||
| 220 | { | ||
| 221 | unsigned long reg = data; | ||
| 222 | uint alt_status_base; | ||
| 223 | int i; | ||
| 224 | |||
| 225 | for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; i++) | ||
| 226 | hw->io_ports[i] = reg++; | ||
| 227 | |||
| 228 | if (data == lopec_ide_regbase[0]) { | ||
| 229 | alt_status_base = lopec_ide_ctl_regbase[0] + 2; | ||
| 230 | hw->irq = 14; | ||
| 231 | } else if (data == lopec_ide_regbase[1]) { | ||
| 232 | alt_status_base = lopec_ide_ctl_regbase[1] + 2; | ||
| 233 | hw->irq = 15; | ||
| 234 | } else { | ||
| 235 | alt_status_base = 0; | ||
| 236 | hw->irq = 0; | ||
| 237 | } | ||
| 238 | |||
| 239 | if (ctl) | ||
| 240 | hw->io_ports[IDE_CONTROL_OFFSET] = ctl; | ||
| 241 | else | ||
| 242 | hw->io_ports[IDE_CONTROL_OFFSET] = alt_status_base; | ||
| 243 | |||
| 244 | if (irq != NULL) | ||
| 245 | *irq = hw->irq; | ||
| 246 | |||
| 247 | } | ||
| 248 | #endif /* BLK_DEV_IDE */ | ||
| 249 | |||
| 250 | static void __init | 170 | static void __init |
| 251 | lopec_init_IRQ(void) | 171 | lopec_init_IRQ(void) |
| 252 | { | 172 | { |
| @@ -384,11 +304,6 @@ platform_init(unsigned long r3, unsigned long r4, unsigned long r5, | |||
| 384 | ppc_md.nvram_read_val = todc_direct_read_val; | 304 | ppc_md.nvram_read_val = todc_direct_read_val; |
| 385 | ppc_md.nvram_write_val = todc_direct_write_val; | 305 | ppc_md.nvram_write_val = todc_direct_write_val; |
| 386 | 306 | ||
| 387 | #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) | ||
| 388 | ppc_ide_md.default_irq = lopec_ide_default_irq; | ||
| 389 | ppc_ide_md.default_io_base = lopec_ide_default_io_base; | ||
| 390 | ppc_ide_md.ide_init_hwif = lopec_ide_init_hwif_ports; | ||
| 391 | #endif | ||
| 392 | #ifdef CONFIG_SERIAL_TEXT_DEBUG | 307 | #ifdef CONFIG_SERIAL_TEXT_DEBUG |
| 393 | ppc_md.progress = gen550_progress; | 308 | ppc_md.progress = gen550_progress; |
| 394 | #endif | 309 | #endif |
