aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2008-04-18 00:46:25 +0200
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2008-04-18 00:46:25 +0200
commite6bfa38a4803646e212ef542b957344e790c3733 (patch)
tree677e9eccad910361e2b38eb2e24765894a89b8ee /drivers/ide
parentide: remove init_hwif_default() (diff)
downloadlinux-dev-e6bfa38a4803646e212ef542b957344e790c3733.tar.xz
linux-dev-e6bfa38a4803646e212ef542b957344e790c3733.zip
ide: remove ide_init_hwif_ports()
ide_init_hwif_ports() is only used by init_ide_data() now, inline it there. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide')
-rw-r--r--drivers/ide/ide.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/ide/ide.c b/drivers/ide/ide.c
index a60b956db519..9e4d503bc716 100644
--- a/drivers/ide/ide.c
+++ b/drivers/ide/ide.c
@@ -197,13 +197,20 @@ static void __init init_ide_data (void)
/* Initialise all interface structures */
for (index = 0; index < MAX_HWIFS; ++index) {
ide_hwif_t *hwif = &ide_hwifs[index];
+ unsigned long io_addr = ide_default_io_base(index);
+ unsigned long ctl_addr = ide_default_io_ctl(io_addr);
ide_init_port_data(hwif, index);
+#ifdef CONFIG_IDE_ARCH_OBSOLETE_INIT
memset(&hw, 0, sizeof(hw));
- ide_init_hwif_ports(&hw, ide_default_io_base(index), 0,
- &hwif->irq);
+ ide_std_init_ports(&hw, io_addr, ctl_addr);
+# ifdef CONFIG_PPC32
+ if (ppc_ide_md.ide_init_hwif)
+ ppc_ide_md.ide_init_hwif(&hw, io_addr, 0, &hwif->irq);
+# endif
memcpy(hwif->io_ports, hw.io_ports, sizeof(hw.io_ports));
+#endif
hwif->noprobe = !hwif->io_ports[IDE_DATA_OFFSET];
#if !defined(CONFIG_PPC32) || !defined(CONFIG_PCI)
hwif->irq =